AWS CI/CD
目次
AWS CodeCommit
AWSで利用できるGitリポジトリ
権限
AWS Code Commit Full Access ポリシーが必要
Git認証情報
AWS CodeCommit の HTTPS Git 認証情報 > 認証情報を生成
Gitリポジトリ
「CodeCommit」サービス > リポジトリを作成
→GitリポジトリURL、ユーザ名、パスワードが発行される(変更不可)
AWS CodeBuild
AWSで利用できるビルドサービス
ビルドプロジェクト作成
「CodeBuild」サービス > ビルドプロジェクトを作成する
ソースプロバイダ
・AWS CodeCommit
・Git Hub
・BitBucket
リポジトリ・ブランチ
Gitリポジトリ・ブランチを指定
環境
・Managed
・カスタムイメージ(Dockerイメージ)
Buildspec
buildspec.ymlを作成してリポジトリにpush
※buildspec.yml
version: 0.2
phases:
install:
runtime-version:
python: 3.8
pre_build:
commands:
– echo Nothing to do in the pre_build phase…
build:
commands:
– echo Curl Test started on `date`
– curl -I https://aws.amazon.com/jp/
post_build:
commands:
– echo Test completed on `date`
ビルドプロジェクト実行
↑で作成したプロジェクトを選択 > ビルドを開始
CodePipeline
AWSで利用できるCI/CDサービス
ビルド→テスト→デプロイの自動化等
CodeCommit、CodeBuildを連続実行できる
パイプライン作成
ソースプロバイダ
・AWS CodeCommit
・Git Hub
・BitBucket
リポジトリ・ブランチ
Gitリポジトリ・ブランチを指定
検出オプション
パイプラインを自動的に開始するトリガー
・Amazon CloudWatch Events
・AWS CodePipeline
プロバイダー
・AWS CodeBuild
・Jenkins
プロジェクト名
作成済みのbuildプロジェクトを選択
→これで指定のブランチへのpushを検知してbuildプロジェクトが実行される
デプロイステージ
スキップ
パイプライン実行
実行はgitリポジトリの変更を検知して自動実行される
CodeDeploy
AWSで利用できるEC2、ECS、Lambda等への自動デプロイサービス