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
31
第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
第153回 雲勉 トラシューが秒で終わる新機能 Amazon Q Developer operational investigations
iret
0
48
第150回 雲勉 AWS AppSyncではじめるGraphQL体験
iret
0
41
第151回 雲勉 プロジェクトのドキュメントにおける課題をAmazon Bedrockで解決してみる
iret
0
58
第152回 雲勉 シームレスなマルチリージョンへの移行と検討 ~Amazon EKSとAWS Global Acceleratorを使用した環境〜
iret
0
52
第149回 雲勉 AWS ベストプラクティスの最新と実際 AWS Well-Architected
iret
0
83
第148回 雲勉 Web アプリケーションセキュリティ
iret
0
47
第147回 雲勉 Amazon CloudWatchをウォッチ!
iret
0
63
第146回 雲勉 BLEAを眺めてCDKの書き方について学ぶ
iret
1
70
第145回 雲勉 Amazon ECSでサービス間通信する方法を調べてみよう
iret
0
72
Other Decks in Technology
See All in Technology
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
750
Developer Summit 2025 [14-D-1] Yuki Hattori
yuhattor
19
6.3k
2024.02.19 W&B AIエージェントLT会 / AIエージェントが業務を代行するための計画と実行 / Algomatic 宮脇
smiyawaki0820
14
3.6k
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
2
450
開発スピードは上がっている…品質はどうする? スピードと品質を両立させるためのプロダクト開発の進め方とは #DevSumi #DevSumiB / Agile And Quality
nihonbuson
2
3.1k
一度 Expo の採用を断念したけど、 再度 Expo の導入を検討している話
ichiki1023
1
170
RSNA2024振り返り
nanachi
0
590
Platform Engineeringは自由のめまい
nwiizo
4
2.1k
2/18/25: Java meets AI: Build LLM-Powered Apps with LangChain4j
edeandrea
PRO
0
130
エンジニアのためのドキュメント力基礎講座〜構造化思考から始めよう〜(2025/02/15jbug広島#15発表資料)
yasuoyasuo
18
6.9k
デスクトップだけじゃないUbuntu
mtyshibata
0
210
分解して理解する Aspire
nenonaninu
1
330
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
Navigating Team Friction
lara
183
15k
Facilitating Awesome Meetings
lara
52
6.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
How GitHub (no longer) Works
holman
314
140k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
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シリーズがなくならないことを祈りつつ、他ソリューションにも目を向けよう