Terragrunt vs Terraform Workspaces — DRY化の2択を整理する
1. 概要 TerraformでDRY(Don’t Repeat Yourself)なコードを書く方法として、Terraform Workspacesと、サードパーティツールのTerragruntがあります。 … 続きを読む
1. 概要 TerraformでDRY(Don’t Repeat Yourself)なコードを書く方法として、Terraform Workspacesと、サードパーティツールのTerragruntがあります。 … 続きを読む
1. 概要 OPA(Open Policy Agent)はCloud Native Computing Foundation(CNCF)のポリシーエンジンです。Conftestは、OPAのRegoポリシーでTerrafo … 続きを読む
1. 概要 Terraformのリポジトリ設計として「モノレポ」と「マルチリポ」があります。アプリコードとインフラコードをどう配置するかはチームの規模・運用フローに大きく影響します。 2. モノレポ構成の例 モノレポのメ … 続きを読む
1. 概要 Jenkinsはオンプレミスでの実績があるCI/CDサーバーです。Terraform専用機能はありませんが、Jenkinsfileでplan/applyのパイプラインを自由に構築できます。 2. Terraf … 続きを読む
1. 概要 GitLabはGitHub Actionsと同様にCI/CDが組み込まれています。特にセルフホスト版GitLabを使っているチームでは、GitLab CI/CDでTerraformを動かすのが自然な選択です。 … 続きを読む
1. 概要 GitHub ActionsはGitHubに統合されたCI/CDで、2024年現在のデファクトスタンダードになりつつあります。CircleCIは独立したCI/CDサービスで、長年の実績があります。どちらがTe … 続きを読む
1. 概要 GitHub ActionsはGitHubに統合されたCI/CDサービスです。Terraformと組み合わせることで、インフラをコードとしてレビュー・承認・適用するワークフローを構築できます。 2. 前提:S … 続きを読む
1. 概要 PRレビュー時にterraform planの結果を自動的にコメント投稿することで、レビュアーがインフラ変更の影響を把握しやすくなります。 2. 最もシンプルな実装(github-script) 3. tfc … 続きを読む
1. 概要 GitHub ActionsからAWSを操作する際、従来はIAMアクセスキーをGitHub Secretsに保存していました。OIDCを使うと、一時的な認証情報を自動取得するため、長期間有効なアクセスキーが不 … 続きを読む
1. 概要 dev/stg/prdを別々のAWSアカウントで管理している場合、GitHub ActionsからそれぞれのアカウントにTerraformをデプロイする構成が必要です。 2. 構成の概要 各AWSアカウントに … 続きを読む