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
ecspressoを活用したCI/CDパイプラインをアジャイル開発現場に導入してみたら
Search
Haruki Tsuchiya
August 08, 2023
Programming
2
4.2k
ecspressoを活用したCI/CDパイプラインをアジャイル開発現場に導入してみたら
2023/08/08 JAWS-UG コンテナ支部 #24 ecspresso MeetUp の発表資料です
Haruki Tsuchiya
August 08, 2023
Tweet
Share
Other Decks in Programming
See All in Programming
The Ralph Wiggum Loop: First Principles of Autonomous Development
sembayui
0
3.7k
エージェント開発初心者の僕がエージェントを作った話と今後やりたいこと
thasu0123
0
240
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
240
Cyrius ーLinux非依存にコンテナをネイティブ実行する専用OSー
n4mlz
0
120
CSC307 Lecture 14
javiergs
PRO
0
470
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
550
モジュラモノリスにおける境界をGoのinternalパッケージで守る
magavel
0
3.5k
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
260
手戻りゼロ? Spec Driven Developmentとは@KAG AI week
tmhirai
1
190
AI時代のソフトウェア開発でも「人が仕様を書く」から始めよう-医療IT現場での実践とこれから
koukimiura
0
140
TipKitTips
ktcryomm
0
160
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
170
Featured
See All Featured
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
660
The Pragmatic Product Professional
lauravandoore
37
7.2k
Become a Pro
speakerdeck
PRO
31
5.8k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
230
Paper Plane (Part 1)
katiecoart
PRO
0
5.4k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
280
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
310
Designing Powerful Visuals for Engaging Learning
tmiket
0
270
What does AI have to do with Human Rights?
axbom
PRO
1
2k
The Curse of the Amulet
leimatthew05
1
9.8k
Transcript
ecspressoを活用したCI/CDパイプラインを アジャイル開発現場に導入してみたら 2023/08/08 JAWS-UG コンテナ支部 #24 ecspresso MeetUp
自己紹介 株式会社mediba バックエンドエンジニア 土屋 陽輝(つちや はるき) @hrktcy 経歴 ・情報系大学院修了→21年mediba入社 LIKE
・go言語 ・terraform ・ecspresso AWS Summit戦利品 AWSDevDay 2
今日お話しすること 3 弊社アジャイル開発現場で取り組んでいる ブランチ戦略とecspressoを活用したCI/CDパイプライン をご紹介し、得られた恩恵についてお話しします
アジェンダ • チーム構成/開発の進め方 • ブランチ戦略 • ecspressoを活用したCI/CDパイプライン • アジャイル開発現場にもたらした恩恵 4
5 チーム構成 プロダクトチーム(5~15名程度) PdM 1名 PO/Dir 1~3名 程度 Developer (FE/BE/AE)
2~7名 程度 SRE UNIT 0~1名 Creator (UI/UX) 0~2名 品質管理 UNIT 0~1名 • 開発手法 • アジャイル • インフラ • 価値提供の素早さの観点からECSを採用することが多い
開発の進め方 6 ドライバーとナビゲーターに分かれて開発する • 個々人で開発するより生産性は下がる • 経験の浅い人にとっては負担が大きい 場合がある メリット デメリット
• エラーや問題を早期発見できる • 全体で知識/スキルが共有される • 職能間の担当業務の垣根が軽減される
DevOpsをアジャイルに取り入れる 7 • ローンチに向けての生産性向上 • 継続的なリリースサイクルの実現
アジェンダ • チーム構成/開発の進め方 • ブランチ戦略 • ecspressoを活用したCI/CDパイプライン • アジャイル開発現場にもたらした恩恵 8
ブランチ戦略 • 各環境に反映されているソースコードの可視性が高い状態である • 誰でも簡単に運用ができる(シンプルである) • 前バージョンへの切り戻しが高速且つ容易である • 高速且つ信頼性の高いデリバリーが実現できる 9
ecspressoで高速且つ信頼性の高いデリバリーを実現する • タスク定義・サービスのみを一元管理 • アプリケーションリポジトリに 設定ファイルを配置できる • デプロイがシンプル • 別プロダクトにも流用しやすい
10
アジェンダ • チーム構成/開発の進め方 • ブランチ戦略 • ecspressoを活用したCI/CDパイプライン • アジャイル開発現場にもたらした恩恵 11
ecspressoを活用したCI/CDパイプライン 12 v1.0.0 リリースに向けて開発する時 main
ecspressoを活用したCI/CDパイプライン 13 release/* v1.0.0 ① リリース用ブランチを切る main
“環境-年月日_番号”の形式でタグをPush ↓ 資材をビルド&デプロイ* ecspressoを活用したCI/CDパイプライン 14 feature/* release/* v1.0.0 lintや単体テスト は
push時に自動実行 ② featureブランチを切って作業 Point: リリース用ブランチへのマージだけを考えるだけでよい dev-20230808_01 dev/stg環境で検証したい場合 ※デプロイ方式はCodeDeploy(Blue/Green) main
ecspressoを活用したCI/CDパイプライン 15 feature/* release/* v1.0.0 ③ リリース用ブランチにマージ Point: releaseブランチのPRに[build]コメントをすると CI周りを事前に行うように設定
main
ecspressoを活用したCI/CDパイプライン 16 feature/* release/* main v1.0.0 ④ prdブランチにマージ&承認 →ecspressoによるデプロイが実行 Point:
• デプロイ処理のみ走る • 失敗のリスクが低減される • 失敗原因の特定がしやすい • ecspresso deploy コマンド • codeDeployの終了を待つ(v2からデフォルト) • 新リビジョンの安定起動をGitHub Actionsで担保できる prd/*
ecspressoを活用したCI/CDパイプライン 17 feature/* release/* v1.0.0 v1.1.0 prd/* ⑤ リグレッションテスト後、mainにマージ •
切り戻しが必要になった場合 • v1.0.0地点からデプロイし直す main
アジェンダ • チーム構成/開発の進め方 • ブランチ戦略 • ecspressoを活用したCI/CDパイプライン • アジャイル開発現場にもたらした恩恵 18
アジャイル開発現場にもたらした恩恵 • アプリ開発に集中できる環境が整い、開発プロセスが大きく向上した • ecspressoが開発者のインフラに対する毛嫌いを減らしてくれた • O11yの観点を全員が考慮できるようになった • サイドカー設定も設定ファイルで可能 •
FireLens経由で監視SaaSと紐付け • WebトランザクションやAPMなどの柔軟な計装を組み込み、試しやすくなった 19
20 ecspressoを活用したDevOpsの取り組みによって 私たちのアジャイル開発現場は 更なる成長を遂げることができました! 最後に