Merge ~mwhudson/ubuntu-cdimage:run-linters-in-ci into ubuntu-cdimage:main

Proposed by Michael Hudson-Doyle
Status: Merged
Merged at revision: 8511a8da0b2136aef3c22933e30670f02b9417db
Proposed branch: ~mwhudson/ubuntu-cdimage:run-linters-in-ci
Merge into: ubuntu-cdimage:main
Diff against target: 281 lines (+38/-39)
12 files modified
.launchpad.yaml (+2/-2)
bin/regenerate-streams (+0/-1)
lib/cdimage/build.py (+1/-2)
lib/cdimage/livefs.py (+2/-1)
lib/cdimage/simplestreams.py (+0/-1)
lib/cdimage/tests/test_build.py (+0/-1)
lib/cdimage/tests/test_config.py (+0/-5)
lib/cdimage/tests/test_germinate.py (+2/-2)
lib/cdimage/tests/test_mirror.py (+16/-8)
lib/cdimage/tests/test_simplestreams.py (+3/-3)
lib/cdimage/tests/test_static.py (+11/-10)
lib/cdimage/tree.py (+1/-3)
Reviewer Review Type Date Requested Status
Steve Langasek Approve
Review via email: mp+455490@code.launchpad.net

Commit message

run linting tests in CI and fix failures

To post a comment you must log in.
Revision history for this message
Steve Langasek (vorlon) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/.launchpad.yaml b/.launchpad.yaml
2index f01d515..e023b8a 100644
3--- a/.launchpad.yaml
4+++ b/.launchpad.yaml
5@@ -3,9 +3,9 @@ pipeline:
6
7 jobs:
8 run-tests:
9- series: focal
10+ series: jammy
11 architectures: amd64
12- packages: [dctrl-tools, python3, python3, python3-mock, python3-simplestreams, procmail, squashfs-tools, file]
13+ packages: [dctrl-tools, python3, python3, python3-mock, python3-simplestreams, procmail, squashfs-tools, file, pep8, pyflakes3]
14 run: ./run-tests >output
15 output:
16 paths: [output]
17diff --git a/bin/regenerate-streams b/bin/regenerate-streams
18index 2a27878..34d2fad 100755
19--- a/bin/regenerate-streams
20+++ b/bin/regenerate-streams
21@@ -26,7 +26,6 @@ sys.path.insert(0, os.path.join(sys.path[0], os.pardir, "lib"))
22
23 def main():
24 from cdimage.config import Config
25- from cdimage.tree import Publisher, Tree
26 from cdimage.simplestreams import SimpleStreams
27
28 parser = OptionParser(
29diff --git a/lib/cdimage/build.py b/lib/cdimage/build.py
30index ea9c507..fd3c79d 100644
31--- a/lib/cdimage/build.py
32+++ b/lib/cdimage/build.py
33@@ -18,7 +18,6 @@
34 from __future__ import print_function
35
36 import contextlib
37-import gzip
38 import os
39 import shutil
40 import signal
41@@ -41,7 +40,7 @@ from cdimage.livefs import (
42 )
43 from cdimage.log import logger, reset_logging
44 from cdimage.mail import get_notify_addresses, send_mail
45-from cdimage.mirror import find_mirror, trigger_mirrors
46+from cdimage.mirror import trigger_mirrors
47 from cdimage.tracker import tracker_set_rebuild_status
48 from cdimage.tree import Publisher, Tree
49 from cdimage.config import Touch
50diff --git a/lib/cdimage/livefs.py b/lib/cdimage/livefs.py
51index 355d8ed..c912dc0 100644
52--- a/lib/cdimage/livefs.py
53+++ b/lib/cdimage/livefs.py
54@@ -368,7 +368,8 @@ def run_live_builds(config):
55 cpuarch, subarch = split_arch(config, arch)
56 for build in lp_livefs.builds:
57 try:
58- metadata_subarch = build.metadata_override.get("subarch", "")
59+ metadata_subarch = build.metadata_override.get(
60+ "subarch", "")
61 except AttributeError:
62 metadata_subarch = ""
63 if (build.distro_arch_series.architecture_tag == cpuarch
64diff --git a/lib/cdimage/simplestreams.py b/lib/cdimage/simplestreams.py
65index 92eea0b..9487a8b 100644
66--- a/lib/cdimage/simplestreams.py
67+++ b/lib/cdimage/simplestreams.py
68@@ -19,7 +19,6 @@
69
70 import os
71 import re
72-import json
73 import time
74 import hashlib
75 import simplestreams.generate_simplestreams as generate_simplestreams
76diff --git a/lib/cdimage/tests/test_build.py b/lib/cdimage/tests/test_build.py
77index 8d4d164..18409d8 100644
78--- a/lib/cdimage/tests/test_build.py
79+++ b/lib/cdimage/tests/test_build.py
80@@ -20,7 +20,6 @@
81 from __future__ import print_function
82
83 from functools import partial
84-import gzip
85 import optparse
86 import os
87 import signal
88diff --git a/lib/cdimage/tests/test_config.py b/lib/cdimage/tests/test_config.py
89index 020f920..a45bfca 100644
90--- a/lib/cdimage/tests/test_config.py
91+++ b/lib/cdimage/tests/test_config.py
92@@ -66,11 +66,6 @@ class TestSeries(TestCase):
93 _core_series="22")
94 mantic = Series("mantic", "23.10", "Mantic Minotaur")
95 mantic._override_is_latest = True
96- all_series = [
97- impish,
98- jammy,
99- mantic
100- ]
101 self.assertEqual("22", jammy.core_series)
102 self.assertEqual("24", mantic.core_series)
103 self.assertEqual(None, impish.core_series)
104diff --git a/lib/cdimage/tests/test_germinate.py b/lib/cdimage/tests/test_germinate.py
105index 5c68812..4f1255d 100644
106--- a/lib/cdimage/tests/test_germinate.py
107+++ b/lib/cdimage/tests/test_germinate.py
108@@ -20,7 +20,6 @@
109 from __future__ import print_function
110
111 from functools import partial
112-import gzip
113 import os
114 import subprocess
115 from textwrap import dedent
116@@ -104,7 +103,8 @@ class TestGermination(TestCase):
117 ("ubuntu-mate", "xenial", ["ubuntu-mate-dev", "ubuntu-core-dev"]),
118 ("ubuntukylin", "xenial",
119 ["ubuntukylin-members", "ubuntu-core-dev"]),
120- ("ubuntu-budgie", "bionic", ["ubuntubudgie-dev", "ubuntu-core-dev"]),
121+ ("ubuntu-budgie", "bionic",
122+ ["ubuntubudgie-dev", "ubuntu-core-dev"]),
123 ("ubuntustudio", "trusty",
124 ["ubuntustudio-dev", "ubuntu-core-dev"]),
125 ):
126diff --git a/lib/cdimage/tests/test_mirror.py b/lib/cdimage/tests/test_mirror.py
127index 6dc437a..d1c584c 100644
128--- a/lib/cdimage/tests/test_mirror.py
129+++ b/lib/cdimage/tests/test_mirror.py
130@@ -52,35 +52,43 @@ class TestChecksumFile(TestCase):
131
132 def test_amd64(self):
133 for series in all_series:
134- self.assertMirrorEqual("http://ftpmaster.internal/ubuntu/", "amd64", series)
135+ self.assertMirrorEqual(
136+ "http://ftpmaster.internal/ubuntu/", "amd64", series)
137
138 def test_armel(self):
139 for series in all_series:
140- self.assertMirrorEqual("http://ftpmaster.internal/ubuntu/", "armel", series)
141+ self.assertMirrorEqual(
142+ "http://ftpmaster.internal/ubuntu/", "armel", series)
143
144 def test_hppa(self):
145 for series in all_series:
146- self.assertMirrorEqual("http://ftpmaster.internal/ubuntu/", "hppa", series)
147+ self.assertMirrorEqual(
148+ "http://ftpmaster.internal/ubuntu/", "hppa", series)
149
150 def test_i386(self):
151 for series in all_series:
152- self.assertMirrorEqual("http://ftpmaster.internal/ubuntu/", "i386", series)
153+ self.assertMirrorEqual(
154+ "http://ftpmaster.internal/ubuntu/", "i386", series)
155
156 def test_powerpc(self):
157 for series in all_series:
158- self.assertMirrorEqual("http://ftpmaster.internal/ubuntu/", "powerpc", series)
159+ self.assertMirrorEqual(
160+ "http://ftpmaster.internal/ubuntu/", "powerpc", series)
161
162 def test_ppc64el(self):
163 for series in all_series:
164- self.assertMirrorEqual("http://ftpmaster.internal/ubuntu/", "ppc64el", series)
165+ self.assertMirrorEqual(
166+ "http://ftpmaster.internal/ubuntu/", "ppc64el", series)
167
168 def test_s390x(self):
169 for series in all_series:
170- self.assertMirrorEqual("http://ftpmaster.internal/ubuntu/", "s390x", series)
171+ self.assertMirrorEqual(
172+ "http://ftpmaster.internal/ubuntu/", "s390x", series)
173
174 def test_sparc(self):
175 for series in all_series:
176- self.assertMirrorEqual("http://ftpmaster.internal/ubuntu/", "sparc", series)
177+ self.assertMirrorEqual(
178+ "http://ftpmaster.internal/ubuntu/", "sparc", series)
179
180
181 class TestTriggerMirrors(TestCase):
182diff --git a/lib/cdimage/tests/test_simplestreams.py b/lib/cdimage/tests/test_simplestreams.py
183index a54734f..1825480 100644
184--- a/lib/cdimage/tests/test_simplestreams.py
185+++ b/lib/cdimage/tests/test_simplestreams.py
186@@ -32,7 +32,7 @@ from cdimage.simplestreams import (
187 SimpleReleaseSimpleStreams)
188 from cdimage.config import Config, Series
189 from cdimage.tree import (
190- Tree, Publisher, DailyTreePublisher, FullReleasePublisher,
191+ Tree, DailyTreePublisher, FullReleasePublisher,
192 FullReleaseTree, SimpleReleasePublisher, SimpleReleaseTree)
193 from cdimage.tests.helpers import TestCase
194
195@@ -235,7 +235,7 @@ class TestSimpleStreams(TestCase):
196 self.config, publisher)
197 self.assertIsInstance(streams, cls_streams)
198 else:
199- with self.assertRaises(Exception) as e:
200+ with self.assertRaises(Exception):
201 SimpleStreams.get_simplestreams(
202 self.config, publisher)
203
204@@ -255,7 +255,7 @@ class TestSimpleStreams(TestCase):
205 self.config, name)
206 self.assertIsInstance(streams, cls_streams)
207 else:
208- with self.assertRaises(Exception) as e:
209+ with self.assertRaises(Exception):
210 SimpleStreams.get_simplestreams_by_name(
211 self.config, name)
212
213diff --git a/lib/cdimage/tests/test_static.py b/lib/cdimage/tests/test_static.py
214index c6a909d..cc3ad1a 100644
215--- a/lib/cdimage/tests/test_static.py
216+++ b/lib/cdimage/tests/test_static.py
217@@ -63,11 +63,11 @@ class TestStatic(TestCase):
218 return
219 subp = subprocess.Popen(
220 ["pep8"] + self.all_paths(),
221- stdout=subprocess.PIPE, universal_newlines=True)
222- output = subp.communicate()[0].splitlines()
223- for line in output:
224- print(line)
225- self.assertEqual(0, len(output))
226+ stdout=subprocess.PIPE, stderr=subprocess.STDOUT,
227+ universal_newlines=True)
228+ output = subp.communicate()[0]
229+ if output:
230+ self.fail("pep8 produced output:\n\n" + output)
231
232 def test_pyflakes_clean(self):
233 if sys.version < "3":
234@@ -90,19 +90,20 @@ class TestStatic(TestCase):
235 if not line.startswith("#"):
236 exclusions.add(line.rstrip())
237
238- error = False
239 subp = subprocess.Popen(
240 [pyflakes] + self.all_paths(),
241 stdout=subprocess.PIPE, universal_newlines=True)
242 output = subp.communicate()[0].splitlines()
243+ not_excluded = []
244 for line in output:
245 if line.startswith("#"):
246 continue
247 line = line.rstrip()
248- canon_line = re.sub(r":[0-9]+:(?:[0-9]+)?", ":*:", line, 1)
249+ canon_line = re.sub(r":[0-9]+:(?:[0-9]+)?:?", ":*:", line, 1)
250 canon_line = re.sub(r"line [0-9]+", "line *", canon_line)
251 if canon_line not in exclusions:
252- print(line)
253- error = True
254+ not_excluded.append(line)
255
256- self.assertFalse(error)
257+ if not_excluded:
258+ self.fail(
259+ "pyflakes produced output:\n\n" + "\n".join(not_excluded))
260diff --git a/lib/cdimage/tree.py b/lib/cdimage/tree.py
261index d4a4d20..038d0fe 100644
262--- a/lib/cdimage/tree.py
263+++ b/lib/cdimage/tree.py
264@@ -646,7 +646,7 @@ class Publisher:
265 "The netboot tarball contains files needed to boot the %s "
266 "installer over the network." % (capproject,))
267 elif publish_type == "mini-iso":
268- sentances.append(
269+ sentences.append(
270 "The mini ISO image is a small ISO image that can be used "
271 "to choose which other Ubuntu image to download and install.")
272 elif publish_type == "alternate":
273@@ -1212,8 +1212,6 @@ class Publisher:
274 if entry.endswith(".%s" % extension)])
275
276 def make_web_indices(self, directory, base_prefix, status="release"):
277- series = self.config["DIST"]
278-
279 prefixes = [base_prefix]
280 if base_prefix.count(".") >= 2:
281 # point release - need the base version too

Subscribers

People subscribed via source and target branches