18325: add support for Nvidia GPUs as an optional feature to our compute
[arvados.git] / tools / compute-images / arvados-images-aws.json
1 {
2   "variables": {
3     "arvados_cluster": "",
4     "associate_public_ip_address": "true",
5     "aws_access_key": "",
6     "aws_profile": "",
7     "aws_secret_key": "",
8     "aws_source_ami": "ami-031283ff8a43b021c",
9     "build_environment": "aws",
10     "public_key_file": "",
11     "mksquashfs_mem": "",
12     "nvidia_gpu_support": "",
13     "reposuffix": "",
14     "resolver": "",
15     "ssh_user": "admin",
16     "subnet_id": "",
17     "vpc_id": ""
18   },
19   "builders": [{
20     "type": "amazon-ebs",
21     "profile": "{{ user `aws_profile`}}",
22     "access_key": "{{user `aws_access_key`}}",
23     "secret_key": "{{user `aws_secret_key`}}",
24     "region": "{{user `aws_default_region`}}",
25     "ena_support": "true",
26     "source_ami": "{{user `aws_source_ami`}}",
27     "instance_type": "m4.large",
28     "vpc_id": "{{user `vpc_id`}}",
29     "subnet_id": "{{user `subnet_id`}}",
30     "associate_public_ip_address": "{{user `associate_public_ip_address`}}",
31     "ssh_username": "{{user `ssh_user`}}",
32     "ami_name": "arvados-{{user `arvados_cluster`}}-compute-{{isotime \"20060102150405\"}}",
33     "ami_block_device_mappings": [
34       {
35         "device_name": "/dev/xvdb",
36         "encrypted": true,
37         "virtual_name": "ephemeral0"
38       },
39       {
40         "device_name": "/dev/xvdc",
41         "encrypted": true,
42         "virtual_name": "ephemeral1"
43       }
44     ],
45     "tags": {
46       "Name": "arvados-{{user `arvados_cluster`}}-compute",
47       "creation_date": "{{isotime \"20060102150405\"}}",
48       "packer": "true"
49     },
50     "run_tags": {
51       "Name": "packer-arvados-{{user `arvados_cluster`}}-compute-builder",
52       "creation_date": "{{isotime \"20060102150405\"}}",
53       "environment": "development"
54     },
55     "run_volume_tags": {
56       "Name": "packer-arvados-{{user `arvados_cluster`}}-compute-builder",
57       "creation_date": "{{isotime \"20060102150405\"}}",
58       "environment": "development"
59     }
60   }],
61   "provisioners": [{
62     "type": "file",
63     "source": "1078ECD7.asc",
64     "destination": "/tmp/1078ECD7.asc"
65   },{
66     "type": "file",
67     "source": "scripts/etc-cloud-cloud.cfg.d-07_compute_arvados_dispatch_cloud.cfg",
68     "destination": "/tmp/etc-cloud-cloud.cfg.d-07_compute_arvados_dispatch_cloud.cfg"
69   },{
70     "type": "file",
71     "source": "scripts/usr-local-bin-ensure-encrypted-partitions.sh",
72     "destination": "/tmp/usr-local-bin-ensure-encrypted-partitions.sh"
73   },{
74     "type": "file",
75     "source": "{{user `public_key_file`}}",
76     "destination": "/tmp/crunch-authorized_keys"
77   },{
78     "type": "shell",
79     "execute_command": "sudo -S env {{ .Vars }} /bin/bash '{{ .Path }}'",
80     "script": "scripts/base.sh",
81     "environment_vars": ["RESOLVER={{user `resolver`}}","REPOSUFFIX={{user `reposuffix`}}","MKSQUASHFS_MEM={{user `mksquashfs_mem`}}","NVIDIA_GPU_SUPPORT={{user `nvidia_gpu_support`}}"]
82   }]
83 }