Packer Roles

ensure-packer

Install packer

Role Variables

packer_install_dir
Default: {{ ansible_user_dir }}/.local/bin/

Directory to install packer in.

packer_version
Default: 1.5.5

Version of packer to install. Zuul will skip the installation if this matches an already installed version of packer.

packer_os
Default: {{ ansible_system | lower }}

OS target of package to install.

packer_arch
Default: amd64 / 386

Architecture target of package to install.

ensure-terraform

Install terraform

Role Variables

terraform_install_dir
Default: {{ ansible_user_dir }}/.local/bin/

Directory to install terraform in.

terraform_version
Default: 0.12.26

Version of terraform to install. Zuul will skip the installation if this matches an already installed version of terraform.

terraform_os
Default: {{ ansible_system | lower }}

OS target of package to install.

terraform_arch
Default: amd64 / 386

Architecture target of package to install.

packer

Run packer command. Assumes the appropriate version of packer has been installed.

Role Variables

packer_executable
Default: {{ ansible_user_dir }}/.local/bin/packer

Path to packer executable to use.

packer_command
Default: build

Packer command to run. Examples are “build”, “validate”

packer_template
Default: packer.json

Packer template file to use when executing packer.

packer_extra_args

String of extra command line options to pass to packer.

packer_environemnt

Environment variables to set in packer command.

packer_workdir
Default: {{ zuul.project.src_dir }}

Directory to run packer in.

terraform

Run terraform command. Assumes the appropriate version of terraform has been installed.

Role Variables

terraform_executable
Default: {{ ansible_user_dir }}/.local/bin/terraform

Path to terraform executable to use.

terraform_command
Default: build

Terraform command to run. Examples are “plan”, “apply”

terraform_extra_args

String of extra command line options to pass to terraform.

terraform_plan

Optional. Path to the plan file to use when using ‘apply’ command.

terraform_workspace

Name of the workspace to operate against. By default this will not be created if it does not exist.

terraform_create_workspace
Default: false

Set to true if the workspace should automatically be created if doesn’t already exist.

terraform_purge_workspace
Default: false

Set to true if the workspace should be deleted after running ‘terraform destroy’.

terraform_comment
Default: true

Set to false to stop zuul from leaving a comment with the execution plan.

terraform_overrides

List of override.tf files to create before initializing terraform. This is useful if a module should use the source from a required project that has been checked out by zuul instead of using a remote git repository.

terraform_overrides.dir

Directory to put override.tf

terraform_overrides.content

Free form content of the override.tf file.

zuul_work_dir
Default: {{ zuul.project.src_dir }}

Directory to run terraform in.