terraform_agent
Ansible role terraform_agent
Install and configure Terraform Agent (for TFC or TFE) on your system.
GitHub | GitLab | Downloads | Version |
---|---|---|---|
Example Playbook
This example is taken from molecule/default/converge.yml
and is tested on each push, pull request and release.
---
- name: Converge
hosts: all
become: true
gather_facts: true
roles:
- role: robertdebock.terraform_agent
The machine needs to be prepared. In CI this is done using molecule/default/prepare.yml
:
---
- name: Prepare
hosts: all
become: true
gather_facts: false
roles:
- role: robertdebock.bootstrap
- role: robertdebock.ca_certificates
Also see a full explanation and example on how to use these roles.
Role Variables
The default values for the variables are set in defaults/main.yml
:
---
# defaults file for terraform_agent
# The version of the terraform_agent to install.
terraform_agent_version: "1.14.5"
# Where to install the terraform_agent.
terraform_agent_installation_path: /opt/tfc_agent
# The URL here Terraform Enterprise or Terraform Cloud is hosted.
terraform_agent_terraform_enterprise_address: "https://app.terraform.io"
# The Agent Token generated on Terraform Enterprise or Terraform Cloud.
# When no token (`""``) is defined, the agent will not be started.
terraform_agent_token: ""
# The name of the Agent as it will be registered as in Terraform Enterprise or Terraform Cloud.
terraform_agent_name: "my_agent"
# The log level of the agent. Either "TRACE", "DEBUG", "INFO", "WARN", or "ERROR".
terraform_agent_log_level: "INFO"
# The path to a directory to store all agent-related data, including Terraform configurations, cached Terraform release archives, etc.
terraform_agent_data_dir: "~/.tfc-agent"
# The path to a directory to store all agent-related cache data, including cached Terraform release archives, policy binaries, etc.
terraform_agent_cache_dir: "{{ terraform_agent_data_dir }}/cache"
Requirements
- pip packages listed in requirements.txt.
State of used roles
The following roles are used to prepare a system. You can prepare your system in another way.
Requirement | GitHub | GitLab |
---|---|---|
robertdebock.bootstrap | ||
robertdebock.ca_certificates |
Context
This role is a part of many compatible roles. Have a look at the documentation of these roles for further information.
Here is an overview of related roles:
Compatibility
This role has been tested on these container images:
container | tags |
---|---|
Amazon | Candidate |
Debian | all |
EL | 9 |
Fedora | all |
Ubuntu | all |
The minimum version of Ansible required is 2.12, tests have been done to:
- The previous version.
- The current version.
- The development version.
If you find issues, please register them in GitHub.
License
Author Information
Please consider sponsoring me.
Install and configure Terraform Agent (for TFC or TFE) on your system.
ansible-galaxy install robertdebock/ansible-role-terraform_agent