概要
- GitHubActionsからCIをTerraformCloudに移行
- 連携でエラーが出たので手順を含めてメモ
- ひとまずterrrafoorm plan/apply/destroyをやるところまで
詳細
- WorkSpace作成でGitHubを選んだら以下のエラー
Failed to install GitHub App
Github 設定

- "GitHuB.com(Custom)"を指定が正しい

-
GitHubの右上アイコン➔"Settings"➔"Developer settings"➔"OAuth Apps"➔"Register a new application"を選ぶ
-
表示されたClient IDとClient SecretをTerraform Cloud使うのでメモ

- "Client Secret"を生成

- ClientIDとClientSecretをメモ

TerraformCloud 設定
- メモしたClientIDとClientSecretを入力

- GitHUbで"Organization aceess"をする場合はRequestして管理者に承認してもらう
- Authorizeする

- SSHキーセットアップはスキップ。あとでもいい。

- 連携が完了

- GitHub側をリロード。ユーザが増えている。

- WorkSpace作成の続き。GitHubが選択できるようになっている。

- 会社で使っている場合などは"OrganizationAccess"をする

- 次の画面ではGitHub上にあるリポジトリが選べるようになっている

- "NextStep"に従って変数を入れる

- AWSのクレデンシャルを入力

TerraformCloud apply実行
- 詳細は割愛するが適当なリポジトリ・tfファイルを右上メニューからPLAN実行してみる
- CIでエラーが出たらメッセージを参考に都度修正
- 変数まわりでエラーが出たが、とりあえずハードコードなどして正常にCIをパスするようにする。

- PLANが通ったらAPPLYで適用してみる

- stateのタブを選択。tfstateの状態を確認できる。


TerraformCloud destroy実行
- terraform destroy を実行して環境を削除する。対象WorkspaceのSettingから以下のように「Destruction and Deletion」を選択

- "Allow destroy plans"を有効にする
- "Queue destroy plan"で"terraform destory"を実行する




- 削除後は空のtfstateが残る

その他エラー
- 特定のリポジトリを選択できない
- WebHookの設定に問題があるようなメッセージ

Error creating workspace
Failed to create webhook on repository: Failed to create webhook on repository
- リポジトリ側に権限がない可能性。リポジトリの設定を変更する必要があり。