Merge branch 'main' from workbench2.git
[arvados.git] / tools / compute-images / arvados-images-aws.json
1 {
2   "variables": {
3     "arvados_cluster": "",
4     "aws_access_key": "",
5     "aws_profile": "",
6     "aws_secret_key": "",
7     "aws_source_ami": "ami-0a9d5908c7201e91d",
8     "aws_ebs_autoscale": "",
9     "aws_associate_public_ip_address": "",
10     "aws_ena_support": "",
11     "build_environment": "aws",
12     "public_key_file": "",
13     "mksquashfs_mem": "",
14     "nvidia_gpu_support": "",
15     "goversion": "",
16     "reposuffix": "",
17     "resolver": "",
18     "ssh_user": "admin",
19     "subnet_id": "",
20     "vpc_id": ""
21   },
22   "builders": [{
23     "type": "amazon-ebs",
24     "profile": "{{ user `aws_profile`}}",
25     "access_key": "{{user `aws_access_key`}}",
26     "secret_key": "{{user `aws_secret_key`}}",
27     "region": "{{user `aws_default_region`}}",
28     "ena_support": "{{user `aws_ena_support`}}",
29     "source_ami": "{{user `aws_source_ami`}}",
30     "instance_type": "m5.large",
31     "vpc_id": "{{user `vpc_id`}}",
32     "subnet_id": "{{user `subnet_id`}}",
33     "associate_public_ip_address": "{{user `aws_associate_public_ip_address`}}",
34     "ssh_username": "{{user `ssh_user`}}",
35     "ami_name": "arvados-{{user `arvados_cluster`}}-compute-{{isotime \"20060102150405\"}}",
36     "launch_block_device_mappings": [{
37       "device_name": "/dev/xvda",
38       "volume_size": 20,
39       "volume_type": "gp3",
40       "delete_on_termination": true
41     }],
42     "ami_block_device_mappings": [
43       {
44         "device_name": "/dev/xvdb",
45         "encrypted": true,
46         "virtual_name": "ephemeral0"
47       },
48       {
49         "device_name": "/dev/xvdc",
50         "encrypted": true,
51         "virtual_name": "ephemeral1"
52       }
53     ],
54     "tags": {
55       "Name": "arvados-{{user `arvados_cluster`}}-compute",
56       "creation_date": "{{isotime \"20060102150405\"}}",
57       "packer": "true"
58     },
59     "run_tags": {
60       "Name": "packer-arvados-{{user `arvados_cluster`}}-compute-builder",
61       "creation_date": "{{isotime \"20060102150405\"}}",
62       "environment": "development"
63     },
64     "run_volume_tags": {
65       "Name": "packer-arvados-{{user `arvados_cluster`}}-compute-builder",
66       "creation_date": "{{isotime \"20060102150405\"}}",
67       "environment": "development"
68     }
69   }],
70   "provisioners": [{
71     "type": "file",
72     "source": "1078ECD7.asc",
73     "destination": "/tmp/1078ECD7.asc"
74   },{
75     "type": "file",
76     "source": "scripts/etc-cloud-cloud.cfg.d-07_compute_arvados_dispatch_cloud.cfg",
77     "destination": "/tmp/etc-cloud-cloud.cfg.d-07_compute_arvados_dispatch_cloud.cfg"
78   },{
79     "type": "file",
80     "source": "scripts/usr-local-bin-ensure-encrypted-partitions.sh",
81     "destination": "/tmp/usr-local-bin-ensure-encrypted-partitions.sh"
82   },{
83     "type": "file",
84     "source": "scripts/usr-local-bin-ensure-encrypted-partitions-aws-ebs-autoscale.sh",
85     "destination": "/tmp/usr-local-bin-ensure-encrypted-partitions-aws-ebs-autoscale.sh"
86   },{
87     "type": "file",
88     "source": "{{user `public_key_file`}}",
89     "destination": "/tmp/crunch-authorized_keys"
90   },{
91     "type": "shell",
92     "execute_command": "sudo -S env {{ .Vars }} /bin/bash '{{ .Path }}'",
93     "script": "scripts/base.sh",
94     "environment_vars": ["RESOLVER={{user `resolver`}}","REPOSUFFIX={{user `reposuffix`}}","MKSQUASHFS_MEM={{user `mksquashfs_mem`}}","NVIDIA_GPU_SUPPORT={{user `nvidia_gpu_support`}}","CLOUD=aws","AWS_EBS_AUTOSCALE={{user `aws_ebs_autoscale`}}","GOVERSION={{user `goversion`}}"]
95   }]
96 }