Merge lp:~pieq/checkbox/fix-1567819 into lp:checkbox

Proposed by Pierre Equoy
Status: Merged
Approved by: Sylvain Pineau
Approved revision: 4301
Merged at revision: 4301
Proposed branch: lp:~pieq/checkbox/fix-1567819
Merge into: lp:checkbox
Diff against target: 317 lines (+0/-54)
10 files modified
providers/plainbox-provider-checkbox/jobs/benchmarks.txt.in (+0/-2)
providers/plainbox-provider-checkbox/jobs/disk.txt.in (+0/-27)
providers/plainbox-provider-checkbox/jobs/ethernet.txt.in (+0/-5)
providers/plainbox-provider-checkbox/jobs/floppy.txt.in (+0/-1)
providers/plainbox-provider-checkbox/jobs/info.txt.in (+0/-1)
providers/plainbox-provider-checkbox/jobs/mobilebroadband.txt.in (+0/-2)
providers/plainbox-provider-checkbox/jobs/networking.txt.in (+0/-1)
providers/plainbox-provider-checkbox/jobs/optical.txt.in (+0/-8)
providers/plainbox-provider-checkbox/jobs/suspend.txt.in (+0/-4)
providers/plainbox-provider-checkbox/jobs/wireless.txt.in (+0/-3)
To merge this branch: bzr merge lp:~pieq/checkbox/fix-1567819
Reviewer Review Type Date Requested Status
Sylvain Pineau (community) Approve
Review via email: mp+291593@code.launchpad.net
To post a comment you must log in.
lp:~pieq/checkbox/fix-1567819 updated
4300. By Pierre Equoy

"automatic merge of lp:~pierre-equoy/checkbox/fix-1569191-stress-test-log-time-check/ by tarmac [r=sylvain-pineau][bug=1569191][author=pierre-equoy]"

Revision history for this message
Sylvain Pineau (sylvain-pineau) wrote :

See inline comments, this MR does not only contain the {path} cleanup. It's ok to remove the staging job but other changes are not documented and might be better placed/proposed in a separate MR.

review: Needs Fixing
lp:~pieq/checkbox/fix-1567819 updated
4301. By Pierre Equoy

providers:checkbox: Remove {path} requirements to avoid erroneous job duplicates

With the introduction of template units, some requirements needed by the local
jobs became obsolete and actually could create problems with the new way of
generating jobs from templates.

Such a problem quickly happened (see lp:1561821), and similar issues followed,
like in lp:1569191. The root cause is that the value of {path} may change from
one run to the other, leading plainbox to think there are new jobs to create,
which in turn generates "job ID duplicate" exceptions.

Revision history for this message
Pierre Equoy (pieq) wrote :

@Sylvain: My bad, I modified files that had been modified recently by Rod without merging his changes.

Please check this new MP.

Revision history for this message
Sylvain Pineau (sylvain-pineau) wrote :

thanks for the fix, +1

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'providers/plainbox-provider-checkbox/jobs/benchmarks.txt.in'
2--- providers/plainbox-provider-checkbox/jobs/benchmarks.txt.in 2016-03-21 16:13:00 +0000
3+++ providers/plainbox-provider-checkbox/jobs/benchmarks.txt.in 2016-04-13 02:47:49 +0000
4@@ -5,7 +5,6 @@
5 category_id: 2013.com.canonical.plainbox::benchmarks
6 id: benchmarks/disk/hdparm-read_{name}
7 estimated_duration: 15.0
8-requires: device.path == '{path}'
9 user: root
10 command: hdparm -t /dev/{name}
11 _summary: Raw read timing benchmark of {name} using hdparm
12@@ -18,7 +17,6 @@
13 category_id: 2013.com.canonical.plainbox::benchmarks
14 id: benchmarks/disk/hdparm-cache-read_{name}
15 estimated_duration: 10.0
16-requires: device.path == '{path}'
17 user: root
18 command: hdparm -T /dev/{name}
19 _summary: Cached read timing benchmark of {name} using hdparm
20
21=== modified file 'providers/plainbox-provider-checkbox/jobs/disk.txt.in'
22--- providers/plainbox-provider-checkbox/jobs/disk.txt.in 2016-03-21 19:05:56 +0000
23+++ providers/plainbox-provider-checkbox/jobs/disk.txt.in 2016-04-13 02:47:49 +0000
24@@ -10,29 +10,6 @@
25 Displays information about each disk detected on the system under test.
26
27 unit: template
28-template-imports: from 2013.com.canonical.certification import device
29-template-resource: device
30-template-filter: device.category == 'DISK' and device.name != ''
31-plugin: shell
32-category_id: 2013.com.canonical.plainbox::disk
33-id: staging/disk/stats_{name}
34-requires:
35- block_device.{name}_state != 'removable'
36-user: root
37-command: disk_stats_test {name}
38-_summary: Disk statistics for /dev/{name}
39-_description:
40- This test checks disk stats, generates some activity and rechecks stats to
41- verify they've changed. It also verifies that disks appear in the various
42- files they're supposed to.
43- .
44- This test will inspect the following disk:
45- .
46- product name: {product}
47- sysfs path: {path}
48- device node path: /dev/{name}
49-
50-unit: template
51 template-resource: device
52 template-filter: device.category == 'DISK'
53 plugin: shell
54@@ -40,7 +17,6 @@
55 id: disk/stats_{name}
56 flags: deprecated
57 requires:
58- device.path == "{path}"
59 block_device.{name}_state != 'removable'
60 user: root
61 command: disk_stats_test {name}
62@@ -55,7 +31,6 @@
63 estimated_duration: 180.0
64 requires:
65 package.name == 'smartmontools'
66- device.path == "{path}"
67 block_device.{name}_smart == 'True'
68 _summary:
69 Test SMART capabilities for {product}
70@@ -72,7 +47,6 @@
71 id: disk/read_performance_{name}
72 estimated_duration: 65.0
73 requires:
74- device.path == "{path}"
75 block_device.{name}_state != 'removable'
76 _summary: Disk performance test for {product}
77 _description: Disk performance test for {product}
78@@ -88,7 +62,6 @@
79 estimated_duration: 375.0
80 user: root
81 requires:
82- device.path == "{path}"
83 block_device.{name}_state != 'removable'
84 _summary: Disk I/O stress test for {product}
85 _description: Disk I/O stress test for {product}
86
87=== modified file 'providers/plainbox-provider-checkbox/jobs/ethernet.txt.in'
88--- providers/plainbox-provider-checkbox/jobs/ethernet.txt.in 2016-03-24 09:03:35 +0000
89+++ providers/plainbox-provider-checkbox/jobs/ethernet.txt.in 2016-04-13 02:47:49 +0000
90@@ -55,7 +55,6 @@
91 _summary: Multi-NIC Iperf stress testing for NIC {interface}
92 estimated_duration: 7400.0
93 requires:
94- device.path == '{path}'
95 package.name == 'iperf'
96 package.name == 'ethtool'
97 package.name == 'nmap'
98@@ -75,7 +74,6 @@
99 _summary: Multi-NIC Iperf3 stress testing for NIC {interface}
100 estimated_duration: 7400.0
101 requires:
102- device.path == '{path}'
103 package.name == 'iperf3'
104 package.name == 'ethtool'
105 package.name == 'nmap'
106@@ -95,7 +93,6 @@
107 _summary: ethtool check for NIC {interface}
108 estimated_duration: 330.0
109 requires:
110- device.path == '{path}'
111 package.name == 'ethtool'
112 command: ethtool {interface}
113 _description:
114@@ -110,7 +107,6 @@
115 _summary: Maximum bandwidth test of device {__index__} ({interface})
116 estimated_duration: 330.0
117 requires:
118- device.path == '{path}'
119 package.name == 'zenity'
120 package.name == 'iperf'
121 user: root
122@@ -135,7 +131,6 @@
123 _summary: Stress and performance test of ethernet device {__index__} ({interface})
124 estimated_duration: 330.0
125 requires:
126- device.path == '{path}'
127 package.name == 'ethtool'
128 command: network test -i {interface} -t stress
129 _description:
130
131=== modified file 'providers/plainbox-provider-checkbox/jobs/floppy.txt.in'
132--- providers/plainbox-provider-checkbox/jobs/floppy.txt.in 2016-01-15 04:31:50 +0000
133+++ providers/plainbox-provider-checkbox/jobs/floppy.txt.in 2016-04-13 02:47:49 +0000
134@@ -4,7 +4,6 @@
135 plugin: shell
136 category_id: 2013.com.canonical.plainbox::floppy
137 id: floppy/check_{name}
138-requires: device.path == '{path}'
139 _description: Floppy test for {product}
140 user: root
141 command: floppy_test /dev/{name}
142
143=== modified file 'providers/plainbox-provider-checkbox/jobs/info.txt.in'
144--- providers/plainbox-provider-checkbox/jobs/info.txt.in 2016-03-24 09:03:35 +0000
145+++ providers/plainbox-provider-checkbox/jobs/info.txt.in 2016-04-13 02:47:49 +0000
146@@ -239,7 +239,6 @@
147 estimated_duration: 1.0
148 requires:
149 package.name == 'hdparm'
150- device.path == '{path}'
151 block_device.{name}_state != 'removable'
152 user: root
153 command: hdparm -I /dev/{name}
154
155=== modified file 'providers/plainbox-provider-checkbox/jobs/mobilebroadband.txt.in'
156--- providers/plainbox-provider-checkbox/jobs/mobilebroadband.txt.in 2016-04-11 03:45:22 +0000
157+++ providers/plainbox-provider-checkbox/jobs/mobilebroadband.txt.in 2016-04-13 02:47:49 +0000
158@@ -66,7 +66,6 @@
159 depends: mobilebroadband/gsm_connection
160 estimated_duration: 330.0
161 requires:
162- device.path == '{path}'
163 package.name == 'zenity'
164 package.name == 'iperf'
165 environ: TEST_TARGET_FTP TEST_TARGET_IPERF TEST_USER TEST_PASS
166@@ -91,7 +90,6 @@
167 depends: mobilebroadband/cdma_connection
168 estimated_duration: 330.0
169 requires:
170- device.path == '{path}'
171 package.name == 'zenity'
172 package.name == 'iperf'
173 environ: TEST_TARGET_FTP TEST_TARGET_IPERF TEST_USER TEST_PASS
174
175=== modified file 'providers/plainbox-provider-checkbox/jobs/networking.txt.in'
176--- providers/plainbox-provider-checkbox/jobs/networking.txt.in 2016-01-15 04:31:50 +0000
177+++ providers/plainbox-provider-checkbox/jobs/networking.txt.in 2016-04-13 02:47:49 +0000
178@@ -14,7 +14,6 @@
179 id: networking/info_device{__index__}_{interface}
180 _summary: Network Information of device {__index__} ({interface})
181 estimated_duration: 1.0
182-requires: device.path == '{path}'
183 command: network_info {interface} | zenity --text-info --title="{interface}"
184 _description:
185 PURPOSE:
186
187=== modified file 'providers/plainbox-provider-checkbox/jobs/optical.txt.in'
188--- providers/plainbox-provider-checkbox/jobs/optical.txt.in 2016-03-21 16:13:00 +0000
189+++ providers/plainbox-provider-checkbox/jobs/optical.txt.in 2016-04-13 02:47:49 +0000
190@@ -16,7 +16,6 @@
191 plugin: user-interact-verify
192 category_id: 2013.com.canonical.plainbox::optical
193 id: optical/read_{name}
194-requires: device.path == "{path}"
195 estimated_duration: 120.0
196 user: root
197 command: optical_read_test /dev/{name}
198@@ -37,7 +36,6 @@
199 category_id: 2013.com.canonical.plainbox::optical
200 id: optical/read-automated_{name}
201 estimated_duration: 120.0
202-requires: device.path == "{path}"
203 user: root
204 command: optical_read_test /dev/{name}
205 _summary:
206@@ -53,7 +51,6 @@
207 id: optical/cdrom-write_{name}
208 estimated_duration: 120.0
209 requires:
210- device.path == "{path}"
211 optical_drive_{name}.cd_write == 'supported'
212 user: root
213 command: set -o pipefail; optical_write_test /dev/{name} cd | ansi_parser
214@@ -76,7 +73,6 @@
215 id: optical/cdrom-write-automated_{name}
216 estimated_duration: 120.0
217 requires:
218- device.path == "{path}"
219 optical_drive_{name}.cd_write == 'supported'
220 user: root
221 command: set -o pipefail; optical_write_test /dev/{name} cd | ansi_parser
222@@ -114,7 +110,6 @@
223 category_id: 2013.com.canonical.plainbox::optical
224 id: optical/dvd-write_{name}
225 requires:
226- device.path == "{path}"
227 optical_drive_{name}.dvd_write == 'supported'
228 estimated_duration: 120.0
229 user: root
230@@ -138,7 +133,6 @@
231 id: optical/dvd-write-automated_{name}
232 estimated_duration: 120.0
233 requires:
234- device.path == "{path}"
235 optical_drive_{name}.dvd_write == 'supported'
236 user: root
237 command: set -o pipefail; optical_write_test /dev/{name} dvd | ansi_parser
238@@ -170,7 +164,6 @@
239 id: optical/bluray-read_{name}
240 estimated_duration: 120.0
241 requires:
242- device.path == "{path}"
243 optical_drive_{name}.bd_read == "supported"
244 user: root
245 command: optical_read_test /dev/{name}
246@@ -191,7 +184,6 @@
247 category_id: 2013.com.canonical.plainbox::optical
248 id: optical/bluray-write_{name}
249 requires:
250- device.path == "{path}"
251 optical_drive_{name}.bd_write == "supported"
252 package.name == "growisofs"
253 user: root
254
255=== modified file 'providers/plainbox-provider-checkbox/jobs/suspend.txt.in'
256--- providers/plainbox-provider-checkbox/jobs/suspend.txt.in 2016-04-11 04:36:04 +0000
257+++ providers/plainbox-provider-checkbox/jobs/suspend.txt.in 2016-04-13 02:47:49 +0000
258@@ -68,7 +68,6 @@
259 depends: ethernet/detect
260 estimated_duration: 20.0
261 requires:
262- device.path == '{path}'
263 package.name == 'iperf'
264 user: root
265 environ: TEST_TARGET_FTP TEST_TARGET_IPERF TEST_USER TEST_PASS
266@@ -85,7 +84,6 @@
267 depends: wireless/wireless_connection
268 estimated_duration: 20.0
269 requires:
270- device.path == '{path}'
271 package.name == 'iperf'
272 user: root
273 environ: TEST_TARGET_FTP TEST_TARGET_IPERF TEST_USER TEST_PASS
274@@ -1009,7 +1007,6 @@
275 depends: suspend/suspend_advanced
276 estimated_duration: 30.0
277 requires:
278- device.path == '{path}'
279 package.name == 'iperf'
280 user: root
281 environ: TEST_TARGET_FTP TEST_TARGET_IPERF TEST_USER TEST_PASS
282@@ -1026,7 +1023,6 @@
283 depends: suspend/suspend_advanced
284 estimated_duration: 30.0
285 requires:
286- device.path == '{path}'
287 package.name == 'iperf'
288 user: root
289 environ: TEST_TARGET_FTP TEST_TARGET_IPERF TEST_USER TEST_PASS
290
291=== modified file 'providers/plainbox-provider-checkbox/jobs/wireless.txt.in'
292--- providers/plainbox-provider-checkbox/jobs/wireless.txt.in 2016-01-15 04:31:50 +0000
293+++ providers/plainbox-provider-checkbox/jobs/wireless.txt.in 2016-04-13 02:47:49 +0000
294@@ -596,7 +596,6 @@
295 id: wireless/stress_performance_device{__index__}_{interface}
296 estimated_duration: 330.0
297 requires:
298- device.path == '{path}'
299 package.name == 'iperf'
300 environ: TEST_TARGET_IPERF
301 user: root
302@@ -650,7 +649,6 @@
303 category_id: 2013.com.canonical.plainbox::wireless
304 id: wireless/iwconfig_check_device{__index__}_{interface}
305 estimated_duration: 1.2
306-requires: device.path == '{path}'
307 command: iwconfig {interface}
308 _description:
309 This test executes iwconfig requests against wireless device {__index__} ({interface}).
310@@ -679,7 +677,6 @@
311 id: wireless/maximum_bandwidth_device{__index__}_{interface}
312 estimated_duration: 120.0
313 requires:
314- device.path == '{path}'
315 package.name == 'zenity'
316 package.name == 'iperf'
317 environ: TEST_TARGET_IPERF

Subscribers

People subscribed via source and target branches