aboutsummaryrefslogtreecommitdiffstats
path: root/patches/fuel-agent/multiarch-efi/0001-Add-esp-partition-flag.patch
blob: 1b067b103fdca948608a60c447bd8e38933cd9b8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
From: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Date: Tue, 8 Mar 2016 16:29:39 +0100
Subject: [PATCH] Add <esp> partition flag.

Parted flag <esp> (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'):