diff options
author | Scott Moser <smoser@brickies.net> | 2016-09-23 16:51:03 -0400 |
---|---|---|
committer | Scott Moser <smoser@brickies.net> | 2016-09-23 16:51:03 -0400 |
commit | f13a89a1592d0445d93ea42809eba2363454488b (patch) | |
tree | a254dd95a9f45ab55af92402e8c7789e28e2ae80 /cloudinit/config/cc_disk_setup.py | |
parent | 0e4eaef9640b6aaf09063124959717e05ed52b06 (diff) | |
parent | 0439d8a17d181a2546f2f7cb2d71a04bbb13b186 (diff) | |
download | vyos-cloud-init-f13a89a1592d0445d93ea42809eba2363454488b.tar.gz vyos-cloud-init-f13a89a1592d0445d93ea42809eba2363454488b.zip |
merge from master at 0.7.8-8-g0439d8a
Diffstat (limited to 'cloudinit/config/cc_disk_setup.py')
-rw-r--r-- | cloudinit/config/cc_disk_setup.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/cloudinit/config/cc_disk_setup.py b/cloudinit/config/cc_disk_setup.py index b642f1f8..39a23688 100644 --- a/cloudinit/config/cc_disk_setup.py +++ b/cloudinit/config/cc_disk_setup.py @@ -33,6 +33,8 @@ BLKID_CMD = util.which("blkid") BLKDEV_CMD = util.which("blockdev") WIPEFS_CMD = util.which("wipefs") +LANG_C_ENV = {'LANG': 'C'} + LOG = logging.getLogger(__name__) @@ -355,8 +357,11 @@ def get_mbr_hdd_size(device): def get_gpt_hdd_size(device): - out, _ = util.subp([SGDISK_CMD, '-p', device]) - return out.splitlines()[0].split()[2] + out, _ = util.subp([SGDISK_CMD, '-p', device], update_env=LANG_C_ENV) + for line in out.splitlines(): + if line.startswith("Disk"): + return line.split()[2] + raise Exception("Failed to get %s size from sgdisk" % (device)) def get_hdd_size(table_type, device): @@ -408,7 +413,7 @@ def check_partition_mbr_layout(device, layout): def check_partition_gpt_layout(device, layout): prt_cmd = [SGDISK_CMD, '-p', device] try: - out, _err = util.subp(prt_cmd) + out, _err = util.subp(prt_cmd, update_env=LANG_C_ENV) except Exception as e: raise Exception("Error running partition command on %s\n%s" % ( device, e)) |