:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: : Copyright (c) 2017 Enea AB and others. : : All rights reserved. This program and the accompanying materials : are made available under the terms of the Apache License, Version 2.0 : which accompanies this distribution, and is available at : http://www.apache.org/licenses/LICENSE-2.0 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: From: Alexandru Avadanii Date: Tue, 8 Mar 2016 16:29:39 +0100 Subject: [PATCH] Add partition flag. Parted flag (see [1]) will mark EFI system partition, allowing us to properly format and mount it during do_partitioning deployment phase. [1] https://www.gnu.org/software/parted/manual/html_node/set.html --- fuel_agent/drivers/nailgun.py | 2 +- fuel_agent/utils/partition.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/fuel_agent/drivers/nailgun.py b/fuel_agent/drivers/nailgun.py index ef0e79a..94280e8 100644 --- a/fuel_agent/drivers/nailgun.py +++ b/fuel_agent/drivers/nailgun.py @@ -354,7 +354,7 @@ class Nailgun(BaseDataDriver): # uefi partition (for future use) LOG.debug('Adding UEFI partition on disk %s: size=200' % disk['name']) - parted.add_partition(size=200) + parted.add_partition(size=200, flags=['esp']) LOG.debug('Looping over all volumes on disk %s' % disk['name']) for volume in disk['volumes']: diff --git a/fuel_agent/utils/partition.py b/fuel_agent/utils/partition.py index f7126b1..b811511 100644 --- a/fuel_agent/utils/partition.py +++ b/fuel_agent/utils/partition.py @@ -94,7 +94,7 @@ def set_partition_flag(dev, num, flag, state='on'): :param dev: A device file, e.g. /dev/sda. :param num: Partition number :param flag: Flag name. Must be one of 'bios_grub', 'legacy_boot', - 'boot', 'raid', 'lvm' + 'boot', 'raid', 'lvm', 'esp' :param state: Desiable flag state. 'on' or 'off'. Default is 'on'. :returns: None @@ -104,7 +104,7 @@ def set_partition_flag(dev, num, flag, state='on'): # parted supports more flags but we are interested in # setting only this subset of them. # not all of these flags are compatible with one another. - if flag not in ('bios_grub', 'legacy_boot', 'boot', 'raid', 'lvm'): + if flag not in ('bios_grub', 'legacy_boot', 'boot', 'raid', 'lvm', 'esp'): raise errors.WrongPartitionSchemeError( 'Unsupported partition flag: %s' % flag) if state not in ('on', 'off'):