GitHub ActionsでPulumiをCI/CDしてみた
投稿日: 2023-09-15 17:01
GitHub ActionsでPulumiをCI/CDしてみた
はじめに
個人趣味のインフラをPulumiで管理しています。
Pulumiの公式からGitHub Actionsが公開されていたので、こちらを利用してGitHubのmainブランチへpushしたら自動でデプロイされるように設定してみました。
手順
GitHub Actionsのワークフロー作成
GitHub: pulumi/actionsのリポジトリ内にワークフローのサンプルがあるので、これを参考にしてYAMLを書きます。
ファイルは .github/workflows/pulumi.yml
に配置します。
name: Pulumi deployon: push: branches: - mainjobs: up: name: Update runs-on: ubuntu-latest steps: - name: Checkout 🛎️ uses: actions/checkout@v3
- name: Setup Go ✨ uses: actions/setup-go@v3 with: go-version: "1.21"
- name: Downloading dependencies 📦 run: go mod download
- name: Applying infrastructure 🚀 uses: pulumi/actions@v4 with: command: up stack-name: prod env: PULUMI_ACCESS_TOKEN: ${{ secrets.PULUMI_ACCESS_TOKEN }}
Pulumiのアクセストークン取得
Pulumi Cloudへアクセスして、アクセストークンを取得します。
アクセストークンをGitHub ActionsのSecretsに登録
取得したアクセストークンをGitHub ActionsのSecretsに登録します。
おわりに
もう少し凝ったことをやろうとすると、GitHub Actions力が必要そうですが、公式のサンプルがあったので簡単にできました。
Pulumiは公式のドキュメントであったり、サンプルが充実しているので、初心者でも簡単に始められて良いですね。