Slide 1

Slide 1 text

ecspresso, ecschedule, lambroll を PipeCD プラグインとして動かしてみた (プロトタイプ) 2025-01-17 Fujiwara Tech Conference 2025 @t-kikuc #fujiwara_tech_conf

Slide 2

Slide 2 text

@t-kikuc / KIKUCHI Tetsuya PipeCD のメンテナ @CyberAgent ecspresso にも微力contribute ECS リソース一括停止ツール "ecstop" を作りました https://github.com/t-kikuc/ecstop #fujiwara_tech_conf 2/29

Slide 3

Slide 3 text

今日話すこと 1. PipeCD とは?プラグインとは? 2. ecspresso, ecschedule, lambroll をPipeCD で動かした概要 3. まとめ、今後の展望 #fujiwara_tech_conf 3/29

Slide 4

Slide 4 text

1. PipeCD とは?プラグインとは? #fujiwara_tech_conf 4

Slide 5

Slide 5 text

PipeCD とは 継続的デリバリーのOSS CNCF Sandbox Project 特徴 ECS, Lambda, K8s, Terraform, CloudRun へのデプロイに対応 (現時点) Canary, Blue/Green に強み Pull 型(GitOps ) #fujiwara_tech_conf 5/29

Slide 6

Slide 6 text

PipeCD プラグインとは デプロイ挙動を プラグイン で自在に定義できる 絶賛開発段階 #fujiwara_tech_conf 6/29

Slide 7

Slide 7 text

現在 PipeCD がデプロイ処理の全てを担っている #fujiwara_tech_conf 7/29

Slide 8

Slide 8 text

プラグイン対応後 各環境へのデプロイはプラグインが担う #fujiwara_tech_conf 8/29

Slide 9

Slide 9 text

プラグイン対応後 各環境へのデプロイはプラグインが担う #fujiwara_tech_conf 9/29

Slide 10

Slide 10 text

例 ecspresso などをそのまま動かせるのでは?? #fujiwara_tech_conf 10/29

Slide 11

Slide 11 text

2. ecspresso, ecschedule, lambroll を PipeCD で動かした概要 #fujiwara_tech_conf 11

Slide 12

Slide 12 text

全体像 #fujiwara_tech_conf 12/29

Slide 13

Slide 13 text

プラグインの中身 gRPC サーバのバイナリ CLI ツールをラップすれば簡単に作れる #fujiwara_tech_conf 13/29

Slide 14

Slide 14 text

[1] ecspresso プラグイン #fujiwara_tech_conf 14

Slide 15

Slide 15 text

設定: ecspresso +1 枚 #fujiwara_tech_conf 15/29

Slide 16

Slide 16 text

diff #fujiwara_tech_conf 16/29

Slide 17

Slide 17 text

deploy #fujiwara_tech_conf 17/29

Slide 18

Slide 18 text

[2] ecschedule プラグイン #fujiwara_tech_conf 18

Slide 19

Slide 19 text

設定: ecschedule +1 枚 ecspresso プラグインと同様 #fujiwara_tech_conf 19/29

Slide 20

Slide 20 text

diff #fujiwara_tech_conf 20/29

Slide 21

Slide 21 text

apply #fujiwara_tech_conf 21/29

Slide 22

Slide 22 text

こんなのも良さそう? #fujiwara_tech_conf 22/29

Slide 23

Slide 23 text

[3] lambroll プラグイン #fujiwara_tech_conf 23

Slide 24

Slide 24 text

設定: lambroll +1 枚 ecspresso,ecschedule と同様 #fujiwara_tech_conf 24/29

Slide 25

Slide 25 text

diff #fujiwara_tech_conf 25/29

Slide 26

Slide 26 text

apply #fujiwara_tech_conf 26/29

Slide 27

Slide 27 text

プラグインのコードは一応公開しています ※ あくまでもプロトタイプです https://github.com/t-kikuc/pipecd-plugin-prototypes #fujiwara_tech_conf 27/29

Slide 28

Slide 28 text

今後の展望 #fujiwara_tech_conf 28

Slide 29

Slide 29 text

今後の展望 ecspresso, ecschedule, lambroll 等とPipeCD とで 共存共栄したい 「こんなプラグイン面白そう」アイデア大募集中です! #fujiwara_tech_conf 29/29