Merge lp:~blake-rouse/maas/fix-1584211 into lp:~maas-committers/maas/trunk

Proposed by Blake Rouse
Status: Merged
Approved by: Blake Rouse
Approved revision: no longer in the source branch.
Merged at revision: 5041
Proposed branch: lp:~blake-rouse/maas/fix-1584211
Merge into: lp:~maas-committers/maas/trunk
Diff against target: 57 lines (+14/-7)
2 files modified
src/provisioningserver/refresh/node_info_scripts.py (+5/-3)
src/provisioningserver/refresh/tests/test_node_info_scripts.py (+9/-4)
To merge this branch: bzr merge lp:~blake-rouse/maas/fix-1584211
Reviewer Review Type Date Requested Status
Gavin Panella (community) Approve
Review via email: mp+295484@code.launchpad.net

Commit message

Exclude RAM, floppy, and loopback devices from lsblk during commissioning.

To post a comment you must log in.
Revision history for this message
Gavin Panella (allenap) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/provisioningserver/refresh/node_info_scripts.py'
2--- src/provisioningserver/refresh/node_info_scripts.py 2016-05-12 19:07:37 +0000
3+++ src/provisioningserver/refresh/node_info_scripts.py 2016-05-23 14:16:04 +0000
4@@ -228,10 +228,12 @@
5 return os.path.join(dev_disk_byid, link)
6 return None
7
8- # Grab the block devices from lsblk.
9+ # Grab the block devices from lsblk. Excludes RAM devices
10+ # (default for lsblk), floppy disks, and loopback devices.
11 blockdevs = []
12- block_list = check_output(
13- ("lsblk", "-d", "-P", "-o", "NAME,RO,RM,MODEL,ROTA"))
14+ block_list = check_output((
15+ "lsblk", "--exclude", "1,2,7", "-d", "-P",
16+ "-o", "NAME,RO,RM,MODEL,ROTA"))
17 block_list = block_list.decode("utf-8")
18 for blockdev in block_list.splitlines():
19 tokens = shlex.split(blockdev)
20
21=== modified file 'src/provisioningserver/refresh/tests/test_node_info_scripts.py'
22--- src/provisioningserver/refresh/tests/test_node_info_scripts.py 2016-05-12 19:07:37 +0000
23+++ src/provisioningserver/refresh/tests/test_node_info_scripts.py 2016-05-23 14:16:04 +0000
24@@ -287,8 +287,9 @@
25 check_output = self.patch(subprocess, "check_output")
26 check_output.return_value = b""
27 self.call_gather_physical_block_devices()
28- self.assertThat(check_output, MockCalledOnceWith(
29- ("lsblk", "-d", "-P", "-o", "NAME,RO,RM,MODEL,ROTA")))
30+ self.assertThat(check_output, MockCalledOnceWith((
31+ "lsblk", "--exclude", "1,2,7", "-d", "-P",
32+ "-o", "NAME,RO,RM,MODEL,ROTA")))
33
34 def test__returns_empty_list_when_no_disks(self):
35 check_output = self.patch(subprocess, "check_output")
36@@ -306,7 +307,9 @@
37 ]
38 self.call_gather_physical_block_devices()
39 self.assertThat(check_output, MockCallsMatch(
40- call(("lsblk", "-d", "-P", "-o", "NAME,RO,RM,MODEL,ROTA")),
41+ call((
42+ "lsblk", "--exclude", "1,2,7", "-d", "-P",
43+ "-o", "NAME,RO,RM,MODEL,ROTA")),
44 call(("udevadm", "info", "-q", "all", "-n", name))))
45
46 def test__returns_empty_list_when_cdrom_only(self):
47@@ -336,7 +339,9 @@
48 ]
49 self.call_gather_physical_block_devices()
50 self.assertThat(check_output, MockCallsMatch(
51- call(("lsblk", "-d", "-P", "-o", "NAME,RO,RM,MODEL,ROTA")),
52+ call((
53+ "lsblk", "--exclude", "1,2,7", "-d", "-P",
54+ "-o", "NAME,RO,RM,MODEL,ROTA")),
55 call(("udevadm", "info", "-q", "all", "-n", name)),
56 call(("sudo", "blockdev", "--getsize64", "/dev/%s" % name)),
57 call(("sudo", "blockdev", "--getbsz", "/dev/%s" % name))))