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
第154回 雲勉 AWS Codeシリーズ盛り上げ隊 ~ Codeシリーズは砕けない ~
Search
iret.kumoben
February 18, 2025
Technology
0
82
第154回 雲勉 AWS Codeシリーズ盛り上げ隊 ~ Codeシリーズは砕けない ~
下記、勉強会での資料です。
https://youtu.be/Za5IVbCC8Ug
iret.kumoben
February 18, 2025
Tweet
Share
More Decks by iret.kumoben
See All by iret.kumoben
第170回 雲勉 Lyria が切り拓く音楽制作の未来
iret
1
20
第169回 雲勉 AWS WAF 構築 RTA
iret
0
31
第168回 雲勉 JITNAの使い方とハマったポイントについて語る回
iret
0
35
第167回 雲勉 エージェント開発を加速する Agent Development Kit 入門
iret
1
42
第166回 雲勉 コードを読んで理解する AWS Amplify Gen2 Backend
iret
0
43
第165回 雲勉 Google Agentspace について
iret
0
37
第164回 雲勉 Agent Development Kit と MCP Toolbox for Databases で MCP 連携してみた
iret
1
85
第163回 雲勉 CircleCIで複数リポジトリ間のパイプラインを連携する
iret
1
38
第162回 雲勉 比較して学ぶ AWS Amplify Gen 2
iret
0
50
Other Decks in Technology
See All in Technology
【CEDEC2025】現場を理解して実現!ゲーム開発を効率化するWebサービスの開発と、利用促進のための継続的な改善
cygames
PRO
0
720
ホリスティックテスティングの右側も大切にする 〜2つの[はか]る〜 / Holistic Testing: Right Side Matters
nihonbuson
PRO
0
570
AWS re:Inforce 2025 re:Cap Update Pickup & AWS Control Tower の運用における考慮ポイント
htan
1
200
Claude Codeは仕様駆動の夢を見ない
gotalab555
0
130
Findy Freelance 利用シーン別AI活用例
ness
0
290
Mambaで物体検出 完全に理解した
shirarei24
2
210
バクラクによるコーポレート業務の自動運転 #BetAIDay
layerx
PRO
1
830
SRE新規立ち上げ! Hubbleインフラのこれまでと展望
katsuya0515
0
160
データエンジニアがクラシルでやりたいことの現在地
gappy50
3
850
AI人生苦節10年で会得したAIがやること_人間がやること.pdf
shibuiwilliam
1
270
【CEDEC2025】ブランド力アップのためのコンテンツマーケティング~ゲーム会社における情報資産の活かし方~
cygames
PRO
0
230
僕たちが「開発しやすさ」を求め 模索し続けたアーキテクチャ #アーキテクチャ勉強会_findy
bengo4com
0
1.8k
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
246
12k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
540
GitHub's CSS Performance
jonrohan
1031
460k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.4k
Adopting Sorbet at Scale
ufuk
77
9.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
KATA
mclloyd
31
14k
Transcript
第154回 雲勉【オンライン】 AWS Codeシリーズ盛り上げ隊 ~ Codeシリーズは砕けない ~
自己紹介 2 松田 啓佑 • X(Twitter) ◦ @ksk_mats_ • 所属
◦ アイレット株式会社 CI事業部 • 業務 ◦ 自社プロダクト開発における非機能領域全般を担当 ◦ インフラ、オブザーバビリティ、バックエンド開発 • 認定 ◦ 2024 Japan AWS Ambassadors • 好きなAWSサービス ◦ ECS ◦ Codeシリーズ
アジェンダ 3 • おさらい : CI/CDとは • おさらい : AWS
Codeシリーズについて • Codeシリーズを取り巻く状況 • Codeシリーズのアップデート情報 • 最後に
4 1. CI/CDとは
5 CI/CDとは • Continuous Integration/Continuous Delivery = 継続的インテグレーション/継続的デリバリー • アプリケーション開発の各ステージを自動化することにより、アプリケーション開発を高速/効率化する手法
CI/CDがない世界 6 時間がかかる ヒューマンエラーが発生する ソースコードの変更 ビルド実施 テスト実施 デプロイ実施 リリース 人がやる範囲
CI/CDがある世界 7 ソースコードの変更 ビルド実施 テスト実施 デプロイ実施 リリース 人がやる範囲 時間はかからない ヒューマンエラーはゼロ
8 CI/CDの重要性 アジリティ (俊敏性)が求められる昨今のアプリ開発において CI/CDは必要不可欠な要素
9 アプリケーションの一般的なリリースサイクル • ソース:ソースコードの更新 • ビルド:コンパイル、コンテナイメージの作成 • テスト:単体テスト、結合テスト、UIテスト、ロードテスト • デプロイ:環境への適用
CI/CDではこれら各フェーズを自動化する => 自動化した一連のプロセスを CI/CDパイプライン と呼ぶ ソース ビルド テスト デプロイ
10 2. AWS Codeシリーズとは
11 AWS Codeシリーズとは プライベートなGitリポジトリ AWSリソースへのアプリケーションをデ プロイする 他のCodeシリーズを連携させて、 CI/CD パイプラインを構成する AWSにおいて、アプリケーションのリリースプロセスを担うサービス
ビルドやテストなど デプロイのための準備を行う
12 Codeシリーズで構成された CI/CDパイプラインのイメージ アーティファクトストア ソースステージ ビルドステージ デプロイステージ
13 軽く宣伝 https://www.youtube.com/watch?v=qiF4AcjNt1A&t=2563s
14 3. Codeシリーズを取り巻く状況
CodeCommitの新規利用終了 15 2024年7月末 CodeCommit新規利用受付終了のお知らせ https://x.com/jeffbarr/status/1818461689920344321
CodeCommitの新規利用終了 16 AWSユーザに動揺が走る CodeCommitが実質廃止? Codeシリーズも終わるのか?
まあ、落ち着きましょう 17 ??「安心してください!」
Codeシリーズのアップデート状況 18 CodeCommit新規受付終了後(2024年8月以降)、 Codeシリーズ全体で合計21件のアップデートがある状況
つまり、どういうことだってばよ? 19 Codeシリーズが見放された訳ではなさそう
20 4. Codeシリーズのアップデート情報
[CodePipeline] ステージ条件の導入 21 • リリース日 : 2024/09/28 • ポイント ◦
ステージの開始/終了を条件により、柔軟に制御できるように ◦ 条件判定にCommand/Lambda/Cloudwatch Alarmなどが利用可能 ◦ これによりワークフロー的な制御が可能になった AWS CodePipeline が、パイプラインゲートを実装するためのステージレベルの条件を導入
[CodePipeline] ステージ条件に変数チェックルールを導入 22 • リリース日 : 2024/09/27 • ポイント ◦
ステージ条件判定にて、CodePipelineの変数を閾値と比較して評価できる ◦ CodeBuildアクションの出力変数などと組み合わせるユースケースが多そう ◦ これによりステージ条件がより柔軟に AWS CodePipeline がステージレベルの条件にパイプライン変数チェックルールを導入
[CodePipeline] コマンド実行アクションプロバイダーを導入 23 • リリース日 : 2024/10/04 • ポイント ◦
シェルコマンドを実行するというシンプルなアクションプロバイダー ◦ 従来ではCodeBuildを利用してコマンド実行する必要があった ◦ これにより、パイプライン内でのコマンド実行が簡単に AWS CodePipeline が新しい汎用コンピューティングアクションを導入
[CodePipeline] パイプラインのテンプレートの導入 24 • リリース日 : 2024/10/09 • ポイント ◦
パイプラインの作成時にテンプレートの利用か、スクラッチ作成を選択可能に ◦ ECS(Fargate)やCloudformationのCI/CDパイプラインがテンプレート化 ◦ これにより一般的な構成のパイプラインをスピーディーに実装できる AWS CodePipeline が新たな利用開始エクスペリエンスを導入
[CodePipeline] ステージのスキップを導入 25 • リリース日 : 2024/10/11 • ポイント ◦
ステージ条件によりステージをスキップさせることが可能に ◦ これによりパイプラインのワークフロー制御がより柔軟に AWS CodePipeline がステージのスキップを導入
[CodePipeline] ステージ障害時の自動再試行をサポート 26 • リリース日 : 2024/10/15 • ポイント ◦
ステージ内のアクションが失敗した際に、ステージ/アクションを自動で再試行することが 可能に ◦ 従来はアクションが失敗した場合は、ステージが失敗と判定されていた ◦ アクションの一時的なエラーの回避が簡単に AWS CodePipeline がステージ障害時の自動再試行をサポート
[CodePipeline] スターターテンプレートが OSSに 27 • リリース日 : 2024/11/08 • ポイント
◦ パイプラインのテンプレート集がOSSに ◦ テンプレートを利用することで、パイプラインの実装が容易に ◦ OSSなので、自分で作成したテンプレートもコントリビュート可能 簡単に始められる AWS CodePipeline のオープンソースのスターターテンプレート
[CodePipeline] “ECRへのプッシュ ”と“Inspectorでのスキャン ”がアクションとしてサポート 28 • リリース日 : 2024/11/25 •
ポイント ◦ CodePipelineのアクションに以下のアクションが新規追加 ▪ ECRBuildAndPublish アクション ▪ AWS InspectorScan アクション ◦ 今まではCodeBuildにて実装していた頻出アクションが、パイプラインで簡単に利用可 能に AWS CodePipeline が ECR イメージの公開と AWS InspectorScan を新しいアクションとしてサポート開始 [CodePipeline] 「ECRへのPush」と「Inspectorスキャン」がアクションとしてサポートされました!
[CodePipeline] デバッグ画面の強化 29 • リリース日 : 2025/01/16 • ポイント ◦
CodePipelineのデバッグ画面にて画面遷移なしで、ステージ/アクションの実行結果の 閲覧ができるように(一部対応していないプロバイダーあり) ◦ 従来はステージ/アクションごとに結果を閲覧する際は画面遷移が生じていた AWS CodePipeline が AWS マネジメントコンソールに新しいデバッグ機能を導入 AWS CodePipelineの新しいデバックインターフェースが実装されました!
[CodeBuild] Windowsイメージのビルドプロジェクトで VPC接続をサポート 30 • リリース日 : 2024/08/01 • ポイント
◦ ビルドプロジェクトにてWindowsイメージを利用した際に、VPC接続が可能に ◦ 東京リージョンでは利用不可(そもそも、ビルドプロジェクトにてWindowsイメージを利用 できるのがバージニア/オハイオ/オレゴン/アイルランドのみ) AWS CodeBuild が Windows での VPC 接続のサポートを開始
[CodeBuild] ARMイメージのリソースが強化 31 • リリース日 : 2024/08/05 • ポイント ◦
ビルドプロジェクトにて最大48vCPU/96GBのARMイメージが利用可能に AWS CodeBuild が 3 つの新しい ARM ベースのコンピューティングタイプのサポートを開始
[CodeBuild] Secret Managerによる複数のアクセストークンをサポート 32 • リリース日 : 2024/08/15 • ポイント
◦ ソースプロバイダーごとにアクセストークンを設定可能に ◦ OAuthおよびPATをSecrets Managerに保存して利用する ◦ これによりトークンの権限範囲を柔軟に調整できる AWS CodeBuild が AWS Secrets Manager による複数のアクセストークンのサポートを開始
[CodeBuild] GitHubへのアクセスに GitHub Apps を認証方式としてサポート 33 • リリース日 : 2024/08/15
• ポイント ◦ GitHubとの連携において、GitHub Appsが利用可能に ◦ GitHubとの連携がより簡単に AWS CodeBuild が GitHub Apps を使用したソースリポジトリへのアクセスのサポートを開始
[CodeBuild] ビルドプロジェクトで macOSビルドをサポート 34 • リリース日 : 2024/08/19 • ポイント
◦ iOSやmacOS向けのアプリケーションのCI/CDパイプラインを簡単に実装可能に ◦ macOSビルドはリザーブドキャパシティフリートでのみ利用可能(オンデマンドでは利用 不可) ◦ 東京リージョンでは利用不可(バージニア/オハイオ/オレゴン/フランクフルト/シドニーの み) AWS CodeBuild が Mac ビルドをサポートするようになりました AWS CodeBuild を使用して継続的インテグレーションパイプラインに macOS を追加する
[CodeBuild] GitLabランナーをサポート 35 • リリース日 : 2024/09/17 • ポイント ◦
CodeBuildプロジェクトをGitLabのセルフホストランナーとしてサポート ◦ GitLab CI/CDにてCodeBuildプロジェクトを利用可能に ◦ GitHub Actionランナーは2024年4月にサポート済み AWS CodeBuild がマネージド GitLab ランナーのサポート開始
[CodeBuild] リザーブドキャパシティフリートが NACLをサポート 36 • リリース日 : 2024/10/15 • ポイント
◦ リザーブドキャパシティフリートで構成されたビルドプロジェクトのアウトバンド通信を制 御可能に ◦ この機能を利用すると、CodeBuildが管理するプロキシサーバーにトラフィックがルー ティングされる AWS CodeBuild、マネージドネットワークアクセスコントロールリストのサポートを開始
[CodeBuild] ビルドプロジェクトの自動再試行のサポート 37 • リリース日 : 2024/10/29 • ポイント ◦
CodePipelineと同様に、CodeBuildプロジェクトでも自動再試行が可能に ◦ CodeBuid単体でも使い勝手が良くなった AWS CodeBuild でビルドの自動再試行のサポートを開始
[CodeBuild] リザーブドキャパシティのコンピューティングオプションの拡張 38 • リリース日 : 2024/11/06 • ポイント ◦
コンテナモードのリザーブドキャパシティのコンピューティングオプションが新しく18個選 択可能に ◦ リザーブドキャパシティでも幅広いビルド環境を実現可能に AWS CodeBuild でリザーブドキャパシティ用の追加コンピューティングタイプのサポートを開始
[CodeBuild] リザーブドキャパシティの Windows コンテナビルドをサポート 39 • リリース日 : 2024/11/12 •
ポイント ◦ リザーブドキャパシティフリートでWindows OSの実行モードにコンテナ(Docker)が利用 可能に ◦ Windows OSのビルド環境を低コストで利用可能に AWS CodeBuild がリザーブドキャパシティフリートでの Windows Docker ビルドをサポート開始
[CodeBuild] リザーブドキャパシティと Lambdaコンピューティングでバッチビルドをサポート 40 • リリース日 : 2025/01/10 • ポイント
◦ オンデマンドのEC2コンピューティングのみ対応していたバッチビルドを、リザーブドキャ パシティとLambdaコンピューティングでも対応 AWS CodeBuild がリザーブドキャパシティーと Lambda コンピューティングによるバッチビルドのサポートを開始
[CodeBuild] テストの分割と並列処理のサポート 41 • リリース日 : 2025/01/17 • ポイント ◦
対象テストフレームワークにおける、テスト分割と並列処理が簡単に実装可能に ◦ 機能を有効にすることでファイル単位でテストが並列実行され、パイプラインにおけるテ ストの所要時間を大幅に削減 AWS CodeBuild でテストの分割と並列処理のサポートを開始 CodeBuild がテストの分割と並列処理をサポートしました!
42 5. 最後に
最後に 43 • 今回の内容はあくまで主観に基づくもの • AWSはCodeシリーズのLTSを保証しているわけではない • Codeシリーズは続いて行くはずだが、CodeCommitは戻ってこない(はず) • Codeシリーズがなくならないことを祈りつつ、他ソリューションにも目を向けよう