Refactor: Update for pre-commit
[ci-management.git] / packer / templates / memcached.json
1 {
2   "variables": {
3     "ansible_roles_path": ".galaxy",
4     "arch": "x86_64",
5     "base_image": null,
6     "distro": null,
7     "cloud_auth_url": null,
8     "cloud_user": null,
9     "cloud_pass": null,
10     "cloud_network": null,
11     "cloud_tenant": null,
12     "cloud_user_data": null,
13     "flavor": "v3-standard-2",
14     "ssh_user": null,
15     "ssh_proxy_host": ""
16   },
17   "builders": [
18     {
19       "name": "openstack",
20       "image_name": "{{user `distro`}} - memcached - {{user `arch`}} - {{isotime \"20180101-1003\"}}",
21       "source_image_name": "{{user `base_image`}}",
22       "type": "openstack",
23       "identity_endpoint": "{{user `cloud_auth_url`}}",
24       "username": "{{user `cloud_user`}}",
25       "password": "{{user `cloud_pass`}}",
26       "tenant_name": "{{user `cloud_tenant`}}",
27       "domain_name": "Default",
28       "region": "ca-ymq-1",
29       "networks": ["{{user `cloud_network`}}"],
30       "user_data_file": "{{user `cloud_user_data`}}",
31       "ssh_username": "{{user `ssh_user`}}",
32       "ssh_proxy_host": "{{user `ssh_proxy_host`}}",
33       "flavor": "{{user `flavor`}}",
34       "metadata": {
35         "ci_managed": "yes"
36       }
37     }
38   ],
39   "provisioners": [
40     {
41       "type": "shell",
42       "scripts": ["common-packer/provision/install-python.sh"],
43       "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
44     },
45     {
46       "type": "shell-local",
47       "command": "./common-packer/ansible-galaxy.sh {{user `ansible_roles_path`}}"
48     },
49     {
50       "type": "ansible",
51       "command": "./common-packer/ansible-playbook.sh",
52       "skip_version_check": true,
53       "playbook_file": "provision/memcached.yaml",
54       "ansible_env_vars": [
55         "ANSIBLE_NOCOWS=1",
56         "ANSIBLE_PIPELINING=True",
57         "ANSIBLE_ROLES_PATH={{user `ansible_roles_path`}}",
58         "ANSIBLE_CALLBACK_WHITELIST=profile_tasks",
59         "ANSIBLE_STDOUT_CALLBACK=debug"
60       ]
61     }
62   ]
63 }