summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vmdebootstrap/filesystem.py1
-rw-r--r--yarns/300-slow-build-tests.yarn12
-rw-r--r--yarns/900-implements.yarn2
3 files changed, 14 insertions, 1 deletions
diff --git a/vmdebootstrap/filesystem.py b/vmdebootstrap/filesystem.py
index 0898de9..77f02df 100644
--- a/vmdebootstrap/filesystem.py
+++ b/vmdebootstrap/filesystem.py
@@ -53,6 +53,7 @@ class Filesystem(Base):
def define_settings(self, settings):
self.settings = settings
self.devices['roottype'] = self.settings['roottype']
+ self.devices['boottype'] = self.settings['boottype']
def chown(self):
if not self.settings['owner']:
diff --git a/yarns/300-slow-build-tests.yarn b/yarns/300-slow-build-tests.yarn
index a76a27c..1934217 100644
--- a/yarns/300-slow-build-tests.yarn
+++ b/yarns/300-slow-build-tests.yarn
@@ -48,3 +48,15 @@ These tests are slow, since building images is slow.
AND partition 1 has the boot flag set
AND partition 1 has an btrfs filesystem
AND partition 1 has file /etc/fstab matching ^\S+\s+\/\s+btrfs\s+defaults\s+\d\s+\d$
+
+ SCENARIO build a Debian 8 image with separate boot partition
+ ASSUMING build tests are requested
+ GIVEN user wants to build an image FOO.img that is 2GiB in size
+ WHEN the user runs vmdebootstrap --bootsize=128M --boottype=ext3 --grub
+ THEN the image has the correct size
+ AND the partition count of the image is 2
+ AND partition 1 has the boot flag set
+ AND partition 1 has an ext3 filesystem
+ AND partition 2 has an ext4 filesystem
+ AND partition 2 has file /etc/fstab matching ^\S+\s+\/\s+ext4\s+errors=remount-ro\s+\d\s+\d$
+ AND partition 2 has file /etc/fstab matching ^\S+\s+\/boot\s+ext3\s+errors=remount-ro\s+\d\s+\d$
diff --git a/yarns/900-implements.yarn b/yarns/900-implements.yarn
index 657101e..57889ab 100644
--- a/yarns/900-implements.yarn
+++ b/yarns/900-implements.yarn
@@ -109,7 +109,7 @@ Check partition boot flag.
IMPLEMENTS THEN partition (\d+) has the boot flag set
parted --script "$IMAGE" print |
- awk -v "PART=$MATCH_1" '/^ [0-9]+ / && $1 == PART && $7 == "boot"' |
+ awk -v "PART=$MATCH_1" '/^ [0-9]+ / && $1 == PART && $7 ~ "^boot,?$"' |
grep .
Check filesystem on a partition. This checks the actual filesystem,