diff options
author | Mike Crute <mike@crute.us> | 2020-05-28 15:11:30 -0700 |
---|---|---|
committer | Mike Crute <mike@crute.us> | 2020-05-30 13:17:56 -0700 |
commit | 83d07e4b9a9cb9b2a79889fc81f1e66486f744ee (patch) | |
tree | b93e05728cf0c4cc2200c84561d010d52702c936 | |
parent | b1da6a47d63b70b7100644faaa68b3ee0bedb66e (diff) | |
download | alpine-ec2-ami-83d07e4b9a9cb9b2a79889fc81f1e66486f744ee.tar.bz2 alpine-ec2-ami-83d07e4b9a9cb9b2a79889fc81f1e66486f744ee.tar.xz alpine-ec2-ami-83d07e4b9a9cb9b2a79889fc81f1e66486f744ee.zip |
Initfs features are in profiles
-rw-r--r-- | packer.conf | 1 | ||||
-rw-r--r-- | profiles/base/1 | 6 | ||||
-rwxr-xr-x | scripts/builder.py | 15 | ||||
-rwxr-xr-x | scripts/setup-ami | 5 |
4 files changed, 16 insertions, 11 deletions
diff --git a/packer.conf b/packer.conf index dafb071..e741255 100644 --- a/packer.conf +++ b/packer.conf | |||
@@ -87,6 +87,7 @@ provisioners = [ | |||
87 | "SVCS={{user `svcs`}}" | 87 | "SVCS={{user `svcs`}}" |
88 | "KERNEL_MODS={{user `kernel_modules`}}" | 88 | "KERNEL_MODS={{user `kernel_modules`}}" |
89 | "KERNEL_OPTS={{user `kernel_options`}}" | 89 | "KERNEL_OPTS={{user `kernel_options`}}" |
90 | "INITFS_FEATURES={{user `initfs_features`}}" | ||
90 | ] | 91 | ] |
91 | use_env_var_file = "true" | 92 | use_env_var_file = "true" |
92 | execute_command = "sudo sh -c '. {{.EnvVarFile}} && {{.Path}}'" | 93 | execute_command = "sudo sh -c '. {{.EnvVarFile}} && {{.Path}}'" |
diff --git a/profiles/base/1 b/profiles/base/1 index 666e5d4..936018f 100644 --- a/profiles/base/1 +++ b/profiles/base/1 | |||
@@ -91,3 +91,9 @@ kernel_options { | |||
91 | "console=ttyS0" = true | 91 | "console=ttyS0" = true |
92 | "console=tty0" = true | 92 | "console=tty0" = true |
93 | } | 93 | } |
94 | # NOTE: nvme and ena are critical for i3, a1, m6g, and anything in the 5 series | ||
95 | # forward. Without them these instances will not boot. | ||
96 | initfs_features { | ||
97 | nvme = true | ||
98 | ena = true | ||
99 | } | ||
diff --git a/scripts/builder.py b/scripts/builder.py index 08c0fa7..bfbd5d4 100755 --- a/scripts/builder.py +++ b/scripts/builder.py | |||
@@ -487,13 +487,14 @@ class ConfigBuilder: | |||
487 | self.out_dir = out_dir | 487 | self.out_dir = out_dir |
488 | 488 | ||
489 | self._keys_to_transform = { | 489 | self._keys_to_transform = { |
490 | "kernel_modules" : self.fold_comma, | 490 | "kernel_modules" : self.fold_comma, |
491 | "kernel_options" : self.fold_space, | 491 | "kernel_options" : self.fold_space, |
492 | "repos" : self.fold_repos, | 492 | "initfs_features" : self.fold_space, |
493 | "pkgs" : self.fold_packages, | 493 | "repos" : self.fold_repos, |
494 | "svcs" : self.fold_services, | 494 | "pkgs" : self.fold_packages, |
495 | "revision" : self.resolve_now, | 495 | "svcs" : self.fold_services, |
496 | "end_of_life" : lambda x: \ | 496 | "revision" : self.resolve_now, |
497 | "end_of_life" : lambda x: \ | ||
497 | self.force_iso_date(self.resolve_tomorrow(x)), | 498 | self.force_iso_date(self.resolve_tomorrow(x)), |
498 | } | 499 | } |
499 | 500 | ||
diff --git a/scripts/setup-ami b/scripts/setup-ami index 1b43495..023c208 100755 --- a/scripts/setup-ami +++ b/scripts/setup-ami | |||
@@ -158,10 +158,7 @@ setup_mdev() { | |||
158 | } | 158 | } |
159 | 159 | ||
160 | create_initfs() { | 160 | create_initfs() { |
161 | # Enable ENA and NVME features these don't hurt for any instance and are | 161 | sed -Ei "s/^features=\"([^\"]+)\"/features=\"\1 $INITFS_FEATURES\"/" \ |
162 | # hard requirements of the 5 series and i3 series of instances | ||
163 | # TODO: profile-ize? | ||
164 | sed -Ei 's/^features="([^"]+)"/features="\1 nvme ena"/' \ | ||
165 | "$TARGET/etc/mkinitfs/mkinitfs.conf" | 162 | "$TARGET/etc/mkinitfs/mkinitfs.conf" |
166 | 163 | ||
167 | chroot "$TARGET" /sbin/mkinitfs $(basename $(find "$TARGET/lib/modules/"* -maxdepth 0)) | 164 | chroot "$TARGET" /sbin/mkinitfs $(basename $(find "$TARGET/lib/modules/"* -maxdepth 0)) |