blob: 75ac5b21192db24cf3df5e5de8cd3a00fd7fc5a4 (
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
builders:
- type: amazon-ebssurrogate
### Builder Instance Details
region: '{{user `build_region`}}'
subnet_id: '{{user `build_subnet`}}'
security_group_id: '{{user `build_security_group`}}'
instance_type: '{{user `build_instance_type`}}'
associate_public_ip_address: '{{user `build_public_ip`}}'
source_ami_filter:
# use the latest Amazon Linux AMI
owners:
- '{{user `build_ami_owner`}}'
most_recent: '{{user `build_ami_latest`}}'
filters:
virtualization-type: hvm
root-device-type: ebs
architecture: '{{user `build_arch`}}'
name: '{{user `build_ami_name`}}'
launch_block_device_mappings:
- volume_type: gp2
device_name: /dev/xvdf
delete_on_termination: 'true'
volume_size: '{{user `ami_volume_size`}}'
ssh_username: '{{user `build_user`}}'
### AMI Build Details
ami_name: '{{user `ami_name_prefix`}}{{user `release`}}-{{user `revision`}}-{{user `arch`}}{{user `ami_name_suffix`}}'
ami_description: '{{user `ami_desc_prefix`}}{{user `release`}}-{{user `revision`}} {{user `arch`}}{{user `ami_desc_suffix`}}'
ami_virtualization_type: hvm
ami_root_device:
volume_type: gp2
source_device_name: /dev/xvdf
device_name: /dev/xvda
delete_on_termination: 'true'
volume_size: '{{user `ami_volume_size`}}'
encrypt_boot: '{{user `ami_encrypt`}}'
ena_support: 'true'
sriov_support: 'true'
ami_groups: '{{user `ami_access`}}'
ami_regions: '{{user `ami_regions`}}'
provisioners:
- type: file
source: nvme/
destination: /tmp
- type: shell
script: setup-ami.sh
environment_vars:
- "VERSION='{{user `version`}}'"
- "RELEASE='{{user `release`}}'"
- "REVISION='{{user `revision`}}'"
- "ARCH='{{user `arch`}}'"
- "REPOS='{{user `repos`}}'"
- "PKGS='{{user `pkgs`}}'"
- "SVCS='{{user `svcs`}}'"
execute_command: 'sudo sh -c "{{ .Vars }} {{ .Path }}"'
post-processors:
- type: manifest
output: 'profile/{{user `profile_build`}}/manifest.json'
custom_data:
profile: '{{user `profile`}}'
build: '{{user `profile_build`}}'
arch: '{{user `arch`}}'
version: '{{user `version`}}'
release: '{{user `release`}}'
revision: '{{user `revision`}}'
end_of_life: '{{user `end_of_life`}}'
|