diodonfrost.terraform
ansible-role-terraform
このロールは、ターゲットホストにTerraformをインストールするための方法を提供します。
要件
このロールはAnsible 2.5を使用して開発されました。以前のバージョンとの互換性は保証されていません。
ansible-galaxy install diodonfrost.terraform
を使用して、システムにロールをインストールします。
- Ansible >= 2.8
- Python >= 2.7
ロール変数
このロールには複数の変数があります。これらの変数のデフォルト値は次のとおりです。
---
# ansible-role-terraformのデフォルトファイル
# インストールするTerraformバージョンを定義
# 可能な値: https://releases.hashicorp.com/terraform/index.json
# デフォルト: latest
terraform_version: latest
# TerraformパッケージをダウンロードするURLを定義
# デフォルト: Ansible vars/*.ymlで定義されたローカルシステムパスを使用
terraform_pkg_url: "{{ __terraform_pkg_url }}"
# Terraformバイナリをインストールする場所を定義
# デフォルト: Ansible vars/*.ymlで定義されたローカルシステムパスを使用
terraform_path: "{{ __terraform_default_path }}"
依存関係
なし
サンプルプレイブック
これは、Ansible Galaxy Terraformロールをローカルホストにデプロイし、最新バージョンのTerraformをインストールするサンプルプレイブックファイルです。
---
- hosts: localhost
become: true
roles:
- role: diodonfrost.terraform
このロールは、特定のバージョンのTerraformをインストールすることもできます。
---
- hosts: localhost
become: true
roles:
- role: ansible-role-terraform
vars:
terraform_version: 0.12.0-rc1
Terraform 0.11.14をインストール
---
- hosts: localhost
become: true
roles:
- role: ansible-role-terraform
vars:
terraform_version: 0.11.14
ローカルテスト
このプロジェクトは、Moleculeを使用して、開発とテストを支援します。
開発やテストを行うには、次のソフトウェアをインストールする必要があります:
- Linux(例: Ubuntu)
- Docker
- Python(python-pipを含む)
- Ansible
- Molecule
- Libvirt(Windowsシステムをテストする場合)
- Vagrant(Windowsシステムをテストする場合)
Dockerを使用したテスト
# 要件をインストール
pip install -r requirements-dev.txt
# Ubuntu 22.04でAnsibleロールをテスト
molecule test
# Ubuntu 20.04でAnsibleロールをテスト
image=ansible-ubuntu:20.04 molecule test
# 最新のAlpineでAnsibleロールをテスト
image=ansible-alpine:latest molecule test
# CentOS 7インスタンスを作成
image=ansible-centos:7 molecule create
# CentOS 7インスタンスにロールを適用
image=ansible-centos:7 molecule converge
# CentOS 7インスタンスでテストを実行
image=ansible-centos:7 molecule verify
VagrantとLibvirtを使用したテスト
# FreeBSDでAnsibleロールをテスト
molecule test -s freebsd
# OpenBSDでAnsibleロールをテスト
molecule test -s openbsd
# WindowsでAnsibleロールをテスト
molecule test -s windows
ライセンス
Apache 2
著者情報
このロールは2019年にdiodonfrostによって作成されました。