[アップデート] Amazon CodeCatalyst の Environment にデフォルトロールが設定出来るようになりました

2024.06.25

いわさです。

Amazon CodeCatalyst の CI/CD ワークフローでは CloudFormation や S3 のデプロイなど、アカウントの AWS リソースへアクセスする場合があります。
その場合「Environment」というコンポーネントにサービスロールを指定した AWS アカウントを設定してデプロイすることが出来ます。

これまでは接続する AWS アカウント設定にサービスロールを指定してそれが使用される形でしたが、先日のアップデートで Environment 毎にデフォルトロールの指定が出来るようになりました。

指定出来るようになったというか今後は必要になります。
デフォルトロールをまだ指定していない以前作成した Environment がいくつか残っていたので、デフォルトロールの設定を行ってみました。手順などを紹介します。

Environment ごとにデフォルトロールの設定が必要

CodeCatalyst ワークスペース内のプロジェクトで、CI/CD メニュー内で Environment の管理が行われています。
まず、既存 Environment を確認してみると、次のように「デフォルトロールが設定されていないぜ」というエラーメッセージが早速表示されていました。なるほど、これか。

何も特に変更してないのですが、既存 Environment はエラーが発生している状態ですね。

そして、デフォルトロールを未設定の既存 Environment をワークフローで使おうとすると、この Environment はデフォルトロールが設定されていないぞと構成エラーとなります。

従来は Environemnt で接続するアカウントを指定し、そのアカウント上でロールを管理するようなイメージでした。

デフォルトロールを設定してみる

ということでデフォルトロールの設定が必要なようなので設定しましょう。
Environment の編集画面からデフォルトのロールの設定が可能です。

以下の設定箇所が追加されていました。

ロールを設定すると Environment 画面のエラーも解消され、問題なく使えるようになりました。

さいごに

本日は Amazon CodeCatalyst の Environment にデフォルトロールの設定が出来るようになったので挙動の確認と、設定変更を行ってみました。

デフォルトロールが設定出来るようになったというより、デフォルトロールの設定が必要になりました。というのが正しいですね。
新規で CodeCatalyst を使い始める方が気をつける点はなさそうですが、既存で CodeCatalyst を使われている方はデフォルトロールが必要になった点を覚えておきましょう。