3
3

More than 3 years have passed since last update.

CodeCommitのトリガーからCodeBuildを起動

Posted at

CodePipelineを使えばいいのでは?となりそうですが、CodePipelineの月額1ドルも節約したい時の話です。

前提

サービス 項目 設定値
CodeCommit リポジトリ名 sample_repo
CodeBuild ビルドプロジェクト名 sample_build

IAMの作成

Lambdaでの実行ロールを作成します。次のポリシーをアタッチした、IAMを作成します。

  • AWSCodeBuildDeveloperAccess
  • AWSLambdaBasicExecutionRole

Lambdaの作成

作成したIAMを指定してLambdaを作成します。

create_lambda.png

Lambdaのトリガーを作成します。今回はブランチをプッシュした際に起動するようにしておきます。

add_trigger.png

lambda_function.py
import boto3

def lambda_handler(event, context):
    print("start build")
    client = boto3.client('codebuild')
    client.start_build(projectName='sample_build')
    return 0

まとめ

lambdaが動かせるので、単にAWS SDKを使って起動しました。

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3