aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Update release & fix a couple bugsfeature/build_profilesJake Buchholz2019-05-10
| | | | | | | | | * 3.9.4 is released, update core profiles * fix consecutive make with different profiles + 'make PROFILE=a; make PROFILE=b' would make 'a' builds twice + build/profile --> build/profile/$PROFILE * 'make PACKER=path-to-packer-bin ...' allows use of alternate packer, defaults to what's in $PATH + needed this to test out pre-1.4.1 packer binaries
* update READMEJake Buchholz2019-05-09
|
* * test profile cleanupJake Buchholz2019-05-09
| | | | * prep for new 'ami_architecture' directive coming with packer 1.4.1
* ...Jake Buchholz2019-05-02
|
* some fixes, etcJake Buchholz2019-05-02
| | | | | | | | * base/1 - fix revision quotes * packer.conf - fix ami_description (when suffix is empty), add Name/Created tags to AMI & Snapshot, shutdown_behavior = terminate * scripts/setup-ami.sh - stop warnings when untarring alpine-keys.apk * remove security_group stuff (packer creates temporary one) * .gitignore - mask all profile build configs, except the ones we vend
* build profiles - feature completeJake Buchholz2019-04-30
| | | | | | | | | | | | | * setup-ami.sh + fix partitioning + proper path to grub-install + don't forget to umount /boot/efi during cleanup * version/edge - newer kernel trusts CPU for entropy, don't need haveged anmore * test.conf + reduce ami_regions to just us-west-2 + entropy stuff moved to version/edge + adds edge-aarch64 build (though AMI's arch isn't set properly - https://github.com/hashicorp/packer/issues/7358 * alpine-amis.conf - prepend 'r' to revision number
* sort out bootloader stuffJake Buchholz2019-04-29
| | | | | | | | | | | | | | | | | | | | | | * packer.conf + don't need to pass bootloader + pass kernel_mods/kernel_opts + use_env_var_file to get around problems with ENV var contents (new execute_command, too) * profiles/base/1 + add kernel_modules/options * scripts/resolve-profile.py.in + fold() - strips quotes from complex keys - include separator char at beginning of fmt - different dicts use different separators + svcs dict -> scalar - make vars clearer - ' ' separator between levels * setup-ami.sh + no longer need to 'tr' REPOS, PKGS, SVCS + detect bootloader to use - when 'grub-efi' is bootloader, partition target device w/small EFI partition, format vfat, install_grub_efi() untested yet + merge setup_extlinux into install_extlinux
* * apk-tools and alpine-keys moved out of setup-ami.sh and into profiles ↵Jake Buchholz2019-04-24
| | | | | | | | | (arch level) * ami_access and ami_regions are now hashes (easier profile overrides) * packer config now in HOCON * revision is a profile/build var, moved it after arch in ami's name/description * test profile now builds AMIs that use rngd instead of haveged
* switch profile configs to HOCONJake Buchholz2019-04-22
|
* Introducing Build ProfilesJake Buchholz2019-04-17
| | | | | | | | | | | This is a big update, directly related to issue #37 (build profiles), reorganizes 'variables.yaml' into base, version, and arch core profiles, which are merged (and optionally tweaked) in build profiles. Foundations are also laid to progress issues #28 (aarch64 AMIs), #22 (Setup CI), #20 (update generate/cleanup scripts), and #23 (retention policy). Although there are still a couple of improvements I'm working on with regards to setup-ami.sh improvements, building AMIs from profiles is working... make PROFILE=test -- all builds of the test profile make PROFILE=test BUILD=test-edge-x86_64 -- just the edge build of the test profile ...and I'm hoping to get some feedback with what's been done so far.
* * Alpine release 3.9.3 (#47)tomalok2019-04-09
| | | * take care of YAML.load(input) deprecation, per https://github.com/yaml/pyyaml/wiki/PyYAML-yaml.load(input)-Deprecation
* Alpine release 3.9.2 (#46)tomalok2019-03-04
|
* Fix nvme-ebs-links (issue #44) (#45)tomalok2019-03-03
| | | | | * EBS may prepend '/dev/' in front of the EBS alias, adjust the sanity sed to account for this. * Attempt to get a sane EBS alias up to 50x, sleep 1/10s in between (max duration ~5 secs). * Log when we add/fail-to-add/remove EBS alias symlinks.
* Alpine 3.9.1 (#43)tomalok2019-03-02
|
* release 3.9.0-1 (#42)tomalok2019-02-25
| | | | | | Release a revised set of Alpine Linux AMIs, including... * improved nvme-ebs-links mdev script (issue #40) * start haveged at boot runlevel (issue #39)
* fix nvme-ebs-linksJake Buchholz2019-02-23
| | | | | Ensure that the EBS volume alias matches what we expect it to be. Should fix issue #40.
* Release Alpine Linux 3.9.0 AMIs (#38)tomalok2019-02-07
| | | | | | | | * Release Alpine Linux 3.9.0 AMIs * Update README.md and release.yaml with a fresh batch of 3.9.0 AMIs * Append GitHub project link to AMI description * really minor caveat fix
* * Re-baseline to the newly-released Alpine 3.9Jake Buchholz2019-02-04
| | | | | | | | | | | | * Match meanings of 'version' and 'release' to how Alpine uses them * Use optional 'revision' to denote any same-release AMI rebuild * Include CPU 'arch' in naming/description (may also offer 'aarch64' AMIs someday) * Upgrade build instance to use Amazon Linux 2 AMIs * Use env vars to pass details to 'make_ami.sh' instead of via CLI parameters * make_ami.sh + minimum version/release shouldn't be overrideable + update APK tools & Alpine keys + check build's release vs. installed /etc/alpine-release
* Add add_svcs, fix nvme, add eu-north-1 (#34)tomalok2019-01-26
| | | | | | | | | | | | | | * Allow additional services on the AMI's runlevels I'm using this with my AMIs to add haveged to the boot runlevel to boost the amount of initial entropy on smaller instance types, so sshd can start in under 6s instead of over 2m. add_svcs: boot: - haveged * fix race condition with nvme-ebs /dev linking * copy nvme stuff to build target in one operation * add eu-north-1 region
* fix 3.8 ena drivers (#33)tomalok2019-01-19
| | | | | | * go back to using linux-virt@edge-main, which has ena drivers * other misc fixes * update README * use --no-cache when installing alpine-base
* add mdev conf, links NVMEe devs to EBS xvd/sd devsJake Buchholz2019-01-11
|
* * no longer need aws-ena-driver, it's in linux-virtJake Buchholz2019-01-11
| | | | * no longer need to install edge linux-virt package
* packer region tweak, alpine 3.8.2 was releasedJake Buchholz2019-01-11
|
* fix issue #24Jake Buchholz2018-12-02
| | | | | * Latest Amazon Linux enables 64bid when creating ext4 partitions, which is incompatible with syslinux/extlinux bootloader. Explicitly disable 64bit support, as it's highly unlikely we'll need a boot volume >16 TiB. * update-extlinux.conf - switch kernel default to 'virt', as 'hardened' no longer exists.
* * aws-ena-driver moved from testing to communityJake Buchholz2018-12-02
| | | | | | | * improve minimum release version test * clarify public_ip variable; uses subnet's default when unset * add 'distclean' Makefile target * add 'variables.yaml_*' to .gitignore to exclude custom build profiles
* make edgeJake Buchholz2018-09-11
| | | | | * Add the ability to 'make edge' to create an AMI based on the latest Alpine edge repository * Force 'ami_revision' to be 'rYYYYMMDDHHSS'
* Incorporate recent Alpine edge changesJake Buchholz2018-09-05
| | | | | | | | | | | | | * standardize on 'linux-virt' kernel + no longer need 'kernel_flavor' variable + always install 'aws-ena-driver' package + always enable ena_support * switch to 'variables.yaml' for config + update build/convert script to stringify certain keys that may contain arrays + copy from 'variables.yaml-default' if it doesn't exist * drop 'vpc' variable, using 'subnet' derives the proper VPC to use * fix chrony.conf (all pool.ntp.org references are changed to 169.254.169.123) * update README.md caveats
* PR updatesJake Buchholz2018-08-28
| | | | | | | | | | | | | | | | | | | | | | | | | | * README.md + update list of modern instance types + add caveat regarding linux-vanilla vs. linux-virt * alpine-ami.yaml + build instance type is always t3.nano + block device where we build is always /dev/xvdf + add optional AMI encryption + always enable AMI SR-IOV flag (vanilla & virt both have the necessary driver) + no need to pass volume_name to make_ami.sh * make_ami.sh + replace hard tabs with 4 spaces + always set up edge repositories + no need to add mkinitfs package, it's a dependency of linux-* + fix update of /etc/inittab + fix configuration of NTP + declare local vars in main() + device is always /dev/xvdf * variables.json-default/example + improve comment for kernel_flavor + default add_repos is now empty + remove acct & e2fsprogs-extra from add_pkgs + add optional AMI encryption + remove sriov_enable, build_instance_type, and volume_name vars
* incorporate additional fixesJake Buchholz2018-08-28
| | | | | | https://github.com/mcrute/alpine-ec2-ami/pull/8 - temporary fix until ec2-tiny-bootstrap deps are updated https://github.com/mcrute/alpine-ec2-ami/pull/9 https://github.com/mcrute/alpine-ec2-ami/pull/10
* Improve ConfigurabilityJake Buchholz2018-08-28
| | | | | | | | | * move config variables from alpine-ami.yaml to variables.json-* + variables.json-default - ready-for-action original default config + variables.json-example - original defaults with comments * clean up tabs vs. spaces in make_ami.sh * make_ami.sh handles custom kernel flavor, extra repos, and extra packages * tweak README with regards to aws-ena-driver caveat
* * switch to alpine v3.8Jake Buchholz2018-07-30
| | | | | | | | | | | * add public_ip variable, setting to 'true' allows packer to build from outside AWS * use smallest instance_type (t2.nano) and volume_size (1 GiB) * eu-west-3 region is live; ap-northeast-3 requires subscription * no longer need setup_staging_repos function... + tiny-ec2-bootstrap is available in main since v3.8 + aws-ena-driver-vanilla is only available in edge/testing * switched to linux-vanilla since linux-hardened is no longer available and linux-virt does not have NVME available + TODO? make kernel choice selectable (significant memory/disk savings linux-virt can be used)
* Release 3.7-r2Mike Crute2017-12-26
|
* Make prompt more obviousMike Crute2017-12-26
|
* Disable getty allocationsMike Crute2017-12-26
|
* Start acpid to handle power eventsMike Crute2017-12-26
|
* Log boot output to consoleMike Crute2017-12-26
|
* Also delete snapshotsMike Crute2017-12-25
|
* Add all regions except eu-west-3Mike Crute2017-12-25
|
* Add gen-readme scriptMike Crute2017-12-25
|
* Add AMI scrub toolMike Crute2017-12-25
|
* Initial importMike Crute2017-12-25