| { |
| "variables": { |
| "ansible_roles_path": ".galaxy", |
| "base_image": null, |
| "distro": null, |
| "cloud_auth_url": null, |
| "cloud_user": null, |
| "cloud_pass": null, |
| "cloud_network": null, |
| "cloud_tenant": null, |
| "cloud_user_data": null, |
| "ssh_user": null, |
| "ssh_proxy_host": "" |
| }, |
| "builders": [ |
| { |
| "name": "vexxhost", |
| "image_name": "{{user `distro`}} - redis - {{user `arch`}} - {{isotime \"20060102-150405.000\"}}", |
| "source_image_name": "{{user `base_image`}}", |
| "type": "openstack", |
| "identity_endpoint": "{{user `cloud_auth_url`}}", |
| "username": "{{user `cloud_user`}}", |
| "password": "{{user `cloud_pass`}}", |
| "tenant_name": "{{user `cloud_tenant`}}", |
| "domain_name": "Default", |
| "region": "ca-ymq-1", |
| "availability_zone": "ca-ymq-2", |
| "networks": [ |
| "{{user `cloud_network`}}" |
| ], |
| "user_data_file": "{{user `cloud_user_data`}}", |
| "ssh_username": "{{user `ssh_user`}}", |
| "ssh_proxy_host": "{{user `ssh_proxy_host`}}", |
| "flavor": "v1-standard-1", |
| "metadata": { |
| "ci_managed": "yes" |
| } |
| } |
| ], |
| "provisioners": [ |
| { |
| "type": "shell", |
| "scripts": [ |
| "common-packer/provision/install-python.sh" |
| ], |
| "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi" |
| }, |
| { |
| "type": "shell-local", |
| "command": "./common-packer/ansible-galaxy.sh {{user `ansible_roles_path`}}" |
| }, |
| { |
| "type": "ansible", |
| "playbook_file": "provision/redis.yaml", |
| "ansible_env_vars": [ |
| "ANSIBLE_NOCOWS=1", |
| "ANSIBLE_PIPELINING=True", |
| "ANSIBLE_ROLES_PATH={{user `ansible_roles_path`}}", |
| "ANSIBLE_CALLBACK_WHITELIST=profile_tasks", |
| "ANSIBLE_STDOUT_CALLBACK=debug" |
| ] |
| } |
| ] |
| } |