#はじめに
多々あるAWSサービスの中であまり着目されることがなく、情報量も少ないCodeBuildバッジについて調査してみました。
バッチ(batch)ではなくバッジ(badge)ですのでお間違いなく。
#CodeBuildとは
ソースコードをコンパイルし、テストを実行し、デプロイ可能なソフトウェアパッケージを作成できる完全マネージド型のビルドサービスで、常時稼働させておく必要がないのが特徴です。常時稼働しないことで無駄なコストがかからず、必要な際に実行できるのでビルドの順番を待たされることがありません。
名前にBuildと付いていますがLinuxのコマンドを実行できるのでBuildに限らず任意の処理が実行可能です。
#CodeBuildバッジとは
埋め込み可能なイメージとして動的に生成され、プロジェクトの最新ビルドのステータスを示します。認証が不要で誰でもCodeBuildプロジェクトのステータスを確認できます。
認証が不要なサービスは珍しいですね。
百聞は一見に如かず
こんなイメージが誰でも参照可能になります。
#設定方法
ビルドバッジを有効にするのチェックボックスをONにするだけで有効になります。
バッジ URL のコピーボタンをクリックするだけでURLがコピーされます。
あとはこれを任意のWebページに埋め込むだけです。
実に簡単ですね。
#CodeBuildバッジのステータス
以下の4種類があります。
- PASSING
- 該当するブランチで最新ビルドが成功しました。
- FAILING
- 該当するブランチで最新ビルドがタイムアウト、失敗、途中終了、または停止しました。
- IN_PROGRESS
- 該当するブランチで最新ビルドが進行中です。
- UNKNOWN
- 該当するブランチでプロジェクトがビルドをまだ実行していないか、まったく実行したことがありません。また、ビルドバッジ機能が無効になっている可能性もあります。
https://docs.aws.amazon.com/ja_jp/codebuild/latest/userguide/sample-build-badges.html
より
#活用方法
自分の管理下にあるCodeBuildプロジェクトやAWSアカウントが少ない場合には正直あまり使いどころはないと思います。
しかしながらCodeBuildプロジェクトが多い場合や複数のAWSアカウントにCodeBuildプロジェクトが存在する場合に、認証が不要で誰でも確認できることを活かし、バッジが確認できるWebページを用意するだけで一目で全てのCodeBuildプロジェクトのステータスが確認できるようになります。
CodeBuildプロジェクトを一つ一つ確認して回ったり、AWSアカウントを切り替えたりするのは手間ですしね。
CodeBuildプロジェクトのソースプロバイダにGitHubを指定している場合はGitHubのREADMEページにバッジを埋め込むと、最新のソースのステータスが一目でわかるようになって便利ですね。
#注意点
活用方法に挙げたように便利なCodeBuildバッジですが、CodePipelineに組み込まれたCodeBuildではステータスが更新されないので注意が必要です。
#さいごに
AWSの素晴らしい他のサービスに押されステータス表示だけを担うCodeBuildバッジはあまり目立ちませんが、よりよい運用を考慮すると利用すべきだと思いますので是非利用してみてください。
CodePipelineにもバッジがあれば便利だと思います。むしろCodePipelineにバッジが欲しいのでAWSさん、今後のアップデートを期待しています!