group.of.nepali.translators team mailing list archive
-
group.of.nepali.translators team
-
Mailing list archive
-
Message #08085
[Bug 1524031] Re: attempting to preserve disk curtin expects PTTYPE in blkid output
Hello Ryan, or anyone else affected,
Accepted curtin into xenial-proposed. The package will build now and be
available at
https://launchpad.net/ubuntu/+source/curtin/0.1.0~bzr425-0ubuntu1~16.04.1
in a few hours, and then in the -proposed repository.
Please help us by testing this new package. See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to
enable and use -proposed. Your feedback will aid us getting this update
out to other Ubuntu users.
If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested, and change the tag
from verification-needed to verification-done. If it does not fix the
bug for you, please add a comment stating that, and change the tag to
verification-failed. In either case, details of your testing will help
us make a better decision.
Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in
advance!
** Tags added: verification-needed
** Also affects: curtin (Ubuntu)
Importance: Undecided
Status: New
** Also affects: curtin (Ubuntu Xenial)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1524031
Title:
attempting to preserve disk curtin expects PTTYPE in blkid output
Status in curtin:
Fix Committed
Status in curtin package in Ubuntu:
Fix Released
Status in curtin source package in Xenial:
Fix Committed
Bug description:
[Impact]
* On a Trusty host, if users enable storage disk preserve feature,
the use of blkid expects PTTYPE value in the output, however, this is
not present in Trusty blkid output. This prevents Trusty hosts from
preserving existing partitions.
Curtin has been updated to fallback to using parted to determine how to
preserve existing partitions on disks when directed.
[Test Case]
* Install proposed curtin package and deploy in a Trusty ephemeral
environment with the following storage configuration:
storage:
version: 1
config:
- id: vdg
model: Unknown Model
preserve: true
ptable: gpt
serial: 64bddb21-61f3-4869-8
type: disk
wipe: superblock
PASS: Successfully deploy image while preserving the original partition
table.
FAIL: Deployment fails with the following error:
line 530, in disk_handler
out.splitlines()))[0].split("=")[-1]
IndexError: list index out of range
list index out of range
[Regression Potential]
* No known other failures when using parted as replacement for blkid
partition data.
[Original Description]
On a trusty host, this storage configuration breaks:
storage:
version: 1
config:
- id: vdg
model: Unknown Model
preserve: true
ptable: gpt
serial: 64bddb21-61f3-4869-8
type: disk
wipe: superblock
like this:
Running command ['partprobe', '/dev/vdg'] with allowed return codes [0, 1] (shell=False, capture=False)
Running command ['udevadm', 'settle'] with allowed return codes [0] (shell=False, capture=False)
Running command ['blkid', '-o', 'export', '/dev/vdg'] with allowed return codes [0] (shell=False, capture=True)
An error occured handling 'vdg': IndexError - list index out of range
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/curtin/commands/main.py", line 208, in main
ret = args.func(args)
File "/usr/lib/python3/dist-packages/curtin/commands/block_meta.py", line 63, in block_meta
meta_custom(args)
File "/usr/lib/python3/dist-packages/curtin/commands/block_meta.py", line 1208, in meta_custom
handler(command, storage_config_dict)
File "/usr/lib/python3/dist-packages/curtin/commands/block_meta.py", line 530, in disk_handler
out.splitlines()))[0].split("=")[-1]
IndexError: list index out of range
list index out of range
From this code here:
# Check state of current ptable
try:
(out, _err) = util.subp(["blkid", "-o", "export", disk],
capture=True)
except util.ProcessExecutionError:
raise ValueError("disk '%s' has no readable partition table or \
cannot be accessed, but preserve is set to true, so cannot \
continue")
current_ptable = list(filter(lambda x: "PTTYPE" in x,
out.splitlines()))[0].split("=")[-1]
And the output of blkid -o export /dev/vdg on trusty instance is:
# blkid -o export /dev/vdg
UUID=ef30955b-8aa0-453f-a37d-d631a09a6f7c
UUID_SUB=9a21ae23-6f14-405d-9e9a-8955855132d5
TYPE=btrfs
To manage notifications about this bug go to:
https://bugs.launchpad.net/curtin/+bug/1524031/+subscriptions