terraform
infra-core に含まれる Terraform に関するディレクトリについての説明。
ディレクトリ構造
以下のような構造となっている。
$ tree -L 1 terraform/
terraform/
├── secrets
├── terraform-cloudflare-access
├── terraform-cloudflare-tunnel
├── terraform-dns
├── terraform-oraclecloud
└── terraform-proxmox
terraform-*
は git submodule として管理されている。
- terraform-cloudflare-access
- Cloudflare Access に関する terraform コードを管理するディレクトリ
- terraform-cloudflare-tunnel
- Cloudflare Tunnel に関する terraform コードを管理するディレクトリ
- terraform-dns
- DNS に関する terraform コードを管理するディレクトリ
- terraform-oraclecloud
- Oracle Cloud に関する terraform コードを管理するディレクトリ
- terraform-proxmox
- Proxmox に関する terraform コードを管理するディレクトリ
実行方法
いずれのディレクトリも GitHub への push に より terraform が実行されるようになっている。 CI/CD は terraform cloud を使用している。
ヒント
ローカルで実行したいこともあるかもしれない。その場合は以下のように実行する。
cd terraform/terraform-proxmox
cd environments/$ENV
terraform init
terraform plan
terraform apply
環境によっては terraform.tfvars
が必要だったり、terraform cloud の設定が必要だったりするので注意すること。