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
くぼ
July 13, 2025
1
85
Shohei kubo
くぼ
July 13, 2025
Tweet
Share
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
58k
Utilizing Notion as your number one productivity tool
mfonobong
2
210
Six Lessons from altMBA
skipperchong
29
4.1k
Side Projects
sachag
455
43k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Writing Fast Ruby
sferik
630
62k
How to build a perfect <img>
jonoalderson
1
4.9k
Skip the Path - Find Your Career Trail
mkilby
0
52
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
The Mindset for Success: Future Career Progression
greggifford
PRO
0
230
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
180
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構築の構築業務を通してアプリやコンテナの知識も学ぶこ とができた