alpine-zdt-images/alpine-ami.yaml
Jake Buchholz 4065c4ebb3 Incorporate recent Alpine edge changes
* 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
2018-09-05 07:39:39 -07:00

59 lines
1.8 KiB
YAML

variables:
# NOTE: Configuration is done with a `variables.yaml` file. If it doesn't
# exist, default configuration is copied from `variables.yaml-default`.
# NOTE: Changing alpine_release requires modifying `make_ami.sh` -- don't
# override this in `variables.json`!
alpine_release: "3.8"
builders:
- type: "amazon-ebssurrogate"
### Builder Instance Details
subnet_id: "{{user `subnet`}}"
security_group_id: "{{user `security_group`}}"
instance_type: "t3.nano"
associate_public_ip_address: "{{user `public_ip`}}"
launch_block_device_mappings:
- volume_type: "gp2"
device_name: "/dev/xvdf"
delete_on_termination: "true"
volume_size: "{{user `volume_size`}}"
ssh_username: "ec2-user"
source_ami_filter:
# use the latest Amazon Linux AMI
filters:
virtualization-type: "hvm"
root-device-type: "ebs"
architecture: "x86_64"
name: "amzn-ami-hvm-*-x86_64-gp2"
owners:
- "137112412989"
most_recent: "true"
### AMI Build Details
ami_name: "{{user `ami_name_prefix`}}{{user `alpine_release`}}-r{{user `ami_release`}}{{user `ami_name_suffix`}}"
ami_description: "{{user `ami_desc_prefix`}}{{user `alpine_release`}}-r{{user `ami_release`}}{{user `ami_desc_suffix`}}"
ami_virtualization_type: "hvm"
ami_root_device:
source_device_name: "/dev/xvdf"
device_name: "/dev/xvda"
delete_on_termination: "true"
volume_size: "{{user `volume_size`}}"
volume_type: "gp2"
encrypt_boot: "{{user `encrypt_ami`}}"
ena_support: "true"
sriov_support: "true"
ami_groups: "{{user `ami_access`}}"
ami_regions: "{{user `deploy_regions`}}"
provisioners:
- type: "shell"
script: "make_ami.sh"
execute_command: 'sudo sh -c "{{ .Vars }} {{ .Path }} ''{{user `add_repos`}}'' ''{{user `add_pkgs`}}''"'