Q92 — AWS DOP-C02 第3章

第 92/100 問 | ← 第3章

開発チームは、アプリケーションのバージョン管理にAWS CodeCommitを使用しています。CI/CDインフラストラクチャとして、AWS CodePipeline、AWS CodeBuild、およびAWS CodeDeployを活用しています。CodeCommit内では、最近、長期間テストを実行する必要があるプルリクエストがマージされました。この結果、開発チームはコードベースのブランチへロールバックする必要があり、手動介入と人的リソースの浪費が発生しました。 DevOpsエンジニアは、CodeCommitにおけるプルリクエストに対して自動テストを実行し、レビュアーがコードレビューの一環として自動テスト結果を容易に確認できるようにしたいと考えています。 DevOpsエンジニアは、この要件を満たすために何を行うべきですか?

正解: D. pullRequestStatusChangedイベントに応答するAmazon EventBridgeルールを作成します。アプリケーションテストを実行するCodeBuildアクションを含むCodePipelineパイプラインを呼び出すAWS Lambda関数を作成します。Lambda関数を、テスト結果完了後にCodeBuildテスト結果をプルリクエストへのコメントとして投稿するようにプログラムします。

解説

正解はDです。まず、pullRequestStatusChangedイベントはプルリクエストのステータス変更を正確に捉えることができ、その後続処理を即座に開始するのに最適です。作成されたAWS Lambda関数はCodeBuild操作を用いてアプリケーションテストを実行し、コードの品質を効果的に検証します。最後に、テスト結果をプルリクエストへのコメントとして投稿することで、レビュアーがコードレビュー中に明確にテスト結果を確認でき、開発チームの要件を満たします。したがって、選択肢Dが正しいです。