Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Shohei kubo
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
くぼ
July 13, 2025
100
1
Share
Shohei kubo
くぼ
July 13, 2025
Featured
See All Featured
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
340
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
44k
What's in a price? How to price your products and services
michaelherold
247
13k
Code Reviewing Like a Champion
maltzj
528
40k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
200
Making Projects Easy
brettharned
120
6.6k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
520
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
A Soul's Torment
seathinner
6
2.8k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
New Earth Scene 8
popppiees
3
2.3k
Transcript
CDKでCICDパイプライン を構築して苦労した話 久保翔平
CI/CDとは • ソフトウェア開発におけるビルド、テスト、デプロイといった プロセスを自動化する仕組みのこと • CI/CDを導入することで、リリースの高速化やコード品質の担保、 人的コストの削減といった効果が期待できる。 AWSのCI/CDサービス AWS CodeBuild
AWS CodeCommit AWS CodeDeploy AWS CodePipeline
CDKで作成したCICDパイプライン • インフラ構築用パイプライン -AWS サービスの構築を担当 -インフラ用のCDKスタックごとに作成 • アプリイメージビルド用パイプライン -アプリのビルドを担当。 -アプリイメージごとに作成(front用、back用など)
インフラ構築用パイプライン Account A環境 B環境 A環境と同様の構成 AWS CodePipeline(V2) AWS CodeBuild (Diff)
AWS CodeCommit Developer 手動 承認 AWS CodeBuild (Deploy) インフラ資材 手動起動 Source Deploy 意図しない更新によりAWS環境が 破壊されるのを防ぐ
インフラ構築用パイプライン Account A環境 B環境 A環境と同様の構成 AWS CodePipeline(V2) AWS CodeBuild (Diff)
AWS CodeCommit Developer 手動 承認 AWS CodeBuild (Deploy) インフラ資材 手動起動 Source Deploy 意図しない更新によりAWS環境が 破壊されるのを防ぐ
アプリイメージビルド用パイプライン Account 共通環境 AWS CodePipeline(V2) AWS CodeCommit AWS CodeBuild AWS
CodeArtifact Amazon ECR Amazon EventBridge AWS CodeBuild AWS CodeCommit Source Test Build mainへのマージを トリガーに起動 コンテナイメージ パッケージ
苦労する前の私 • CDKは触っていたが CI/CD系の構築未経験 • buildspec? (呪文) • アプリ系の知識もあまりない
苦労したこと • buildspecとビルド環境変数 ※buildspec.ymlとは ⇒ビルド実行時に実行する コマンド群を記したファイル AWS CodeBuild App/CDK Source
buildspec.ymlを実行 ビルド環境変数 AWS_ACCOUNT_ID=XXX AWS_REGION=??? ECR_NAME=〇〇〇 buildspec.yml
苦労したこと • buildspecとビルド環境変数 ※buildspec.ymlとは ⇒ビルド実行時に実行する コマンド群を記したファイル AWS CodeBuild App/CDK Source
buildspec.ymlを実行 ビルド環境変数 AWS_ACCOUNT_ID=XXX AWS_REGION=??? ECR_NAME=〇〇〇 buildspec.yml 環境変数を適切に設定することで buildspecの再利用性UP!
苦労したこと • アプリ、コンテナへの理解不足 始めはMavenって何? Dockerfileってどう書けばいいの?状態 イメージ構築時にパッケージの依存関係 が原因でエラー
苦労した後の私 • CDKは触っていたが CI/CD系の構築未経験 • buildspec? (呪文) • アプリ系の知識もあまりない •
パイプラインの動き完璧! • buildspecも任せて! • アプリ側の知識も習得!
学び • 業務を通して、安全なパイプラインの構築手法について理解した • ビルド環境変数を適切に設定することでbuildspecの再利用性が 増す • CI/CD構築の構築業務を通してアプリやコンテナの知識も学ぶこ とができた