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
Cloud Run CI/CD + QA @ KAUCHE
Search
Yuki Ito
February 11, 2023
Technology
680
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Cloud Run CI/CD + QA @ KAUCHE
Yuki Ito
February 11, 2023
More Decks by Yuki Ito
See All by Yuki Ito
newmo の創業を支える Software Architecture と Platform Engineering
110y
5
3.6k
Modular Monolith Go Server with GraphQL Federation + gRPC
110y
1
1.1k
Modular Monolith + Go @ newmo
110y
1
1.3k
Go + GraphQL @ newmo
110y
3
990
Architect / Platform Team at KAUCHE
110y
1
710
Cloud Run + Observability / Reliability @ KAUCHE
110y
0
680
Microservices on Cloud Run @ KAUCHE
110y
0
320
KAUCHE Loves Go
110y
0
540
Evolution of Architecture @ Kauche
110y
3
640
Other Decks in Technology
See All in Technology
[MIRU26] Open-Vocabulary Intention-Guided Object Detection in Diverse Scenes
keio_smilab
PRO
0
110
VPCセキュリティ対応の最新事情
nagisa53
2
360
Swift&Xcodeのバージョンアップにまつわる怖かった思い出 / Scary Memories of Swift and Xcode Updates
bitkey
PRO
0
110
Power Automateアップデート情報
miyakemito
0
300
「待ち時間」の消滅と「自我消耗」の加速:生成AI時代のエンジニアを救うメンタル・リソース管理
poropinai1966
0
410
StepFunctionsとGraphRAGを活用した暗黙知活用のためのRAG基盤
yakumo
1
200
DevOps Agentで運用判断をチーム資産にする~Agent InstructionsとAgent Skillを継続的に育てる~
fujioka6789
0
200
【CEDEC2026】ゲームシナリオライターを支援するAIツール開発の実践 ― 設計とプロンプトの工夫 ―
cygames
PRO
1
640
AIは実装を速くする。では、私たちは何を今作るべきか?-立場を越えてリリースに向き合ったチーム開発の実践 / 20260801 Hiromi Nakaya and Naoki Takahashi
shift_evolve
PRO
3
300
plamo-3-translateの開発
pfn
PRO
0
260
『三匹の子ぶた』から学ぶネットワークセキュリティの昔と今 / Network Security: Then and Now Through the Lens of The Three Little Pigs
nttcom
1
1.5k
運用を犠牲にせずコストを制御し事業成長を支える B2B SaaS ID管理基盤におけるS3 Tableのログストレージ活用
kaminashi
1
150
Featured
See All Featured
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
680
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
230
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
460
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
370
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
Making the Leap to Tech Lead
cromwellryan
135
10k
The Spectacular Lies of Maps
axbom
PRO
1
880
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.5k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
The Language of Interfaces
destraynor
162
27k
Design in an AI World
tapps
1
270
How to Think Like a Performance Engineer
csswizardry
28
2.7k
Transcript
Cloud Run CI/CD + QA @ KAUCHE Yuki Ito (@mrno110)
Cloud Run Casual Talk #1
Kauche Architect / Platform Team Yuki Ito @mrno110
None
What is Cloud Run Cloud Run is a managed compute
platform that enables you to run containers that are invocable via requests or events. Cloud Run is serverless: it abstracts away all infrastructure management... https://cloud.google.com/run/docs
Agenda ɾCI / CD ɾQA
Agenda ɾCI / CD ɾQA
CI / CD Applications Deploy Manifests Cloud Build Cloud Run
Cloud Build Artifact Registry ᶃ Trigger ᶄ Push Image ᶅ Trigger ᶆ Fetch ᶇ Deploy ᶈ Pull Image
CI / CD Applications Deploy Manifests Cloud Build Cloud Run
Cloud Build Artifact Registry ᶃ Trigger ᶄ Push Image ᶅ Trigger ᶆ Fetch ᶇ Deploy ᶈ Pull Image
Workload Identity Federation https://cloud.google.com/blog/products/identity-security/enabling-keyless-authentication-from-github-actions
CI / CD Applications Deploy Manifests Cloud Build Cloud Run
Cloud Build Artifact Registry ᶃ Trigger ᶄ Push Image ᶅ Trigger ᶆ Fetch ᶇ Deploy ᶈ Pull Image
CI / CD Applications Deploy Manifests Cloud Build Cloud Run
Cloud Build Artifact Registry ᶃ Trigger ᶄ Push Image ᶅ Trigger ᶆ Fetch ᶇ Deploy ᶈ Pull Image
110y/cbtctl https://github.com/110y/cbtctl
110y/cbtctl https://github.com/110y/cbtctl
CI / CD Applications Deploy Manifests Cloud Build Cloud Run
Cloud Build Artifact Registry ᶃ Trigger ᶄ Push Image ᶅ Trigger ᶆ Fetch ᶇ Deploy ᶈ Pull Image
CI / CD Applications Deploy Manifests Cloud Build Cloud Run
Cloud Build Artifact Registry ᶃ Trigger ᶄ Push Image ᶅ Trigger ᶆ Fetch ᶇ Deploy ᶈ Pull Image
Declarative Manifest apiVersion: serving.knative.dev/v1 kind: Service metadata: annotations: run.googleapis.com/ingress: internal
run.googleapis.com/launch-stage: BETA labels: cloud.googleapis.com/location: ... name: ... spec: template: metadata: annotations: run.googleapis.com/execution-environment: gen2 run.googleapis.com/startup-cpu-boost: "true" run.googleapis.com/vpc-access-connector: projects/.../locations/.../connectors/... run.googleapis.com/vpc-access-egress: all-traffic # ... spec: containers: # ... serviceAccountName: ...
kustomize . ├── base │ ├── kustomization.yaml │ └── service.yaml
├── dev │ ├── kustomization.yaml │ ├── resource.yaml │ └── service.yaml └── prod ├── kustomization.yaml ├── resource.yaml └── service.yaml
CI / CD Applications Deploy Manifests Cloud Build Cloud Run
Cloud Build Artifact Registry ᶃ Trigger ᶄ Push Image ᶅ Trigger ᶆ Fetch ᶇ Deploy ᶈ Pull Image
Agenda ɾCI / CD ɾQA
Agenda ɾCI / CD ɾQA
Deploy Service per Branch Applications Deploy Manifests Cloud Build Cloud
Run Cloud Build Artifact Registry ᶃ Trigger ᶄ Push Image ᶅ Trigger ᶆ Fetch ᶇ Deploy ᶈ Pull Image
Deploy Service per Branch 🧑💻 Cloud Run Services Service-1-Branch-A Service-1-Branch-B
Service-1 Service-2-Branch-X Service-2-Branch-Y Service-2 Gateway
Deploy Service per Branch 🧑💻 Cloud Run Services Service-1-Branch-A Service-1-Branch-B
Service-1 Service-2-Branch-X Service-2-Branch-Y Service-2 Gateway cloud-run-service-1: branch-b cloud-run-service-2: branch-x
Deploy Service per Branch 🧑💻 Cloud Run Services Service-1-Branch-A Service-1-Branch-B
Service-1 Service-2-Branch-X Service-2-Branch-Y Service-2 Gateway cloud-run-service-1: branch-b cloud-run-service-2: branch-x
xDS Control Plane for Cloud Run xDS Control Plane Service-1-Branch-A
Service-1-Branch-B Service-1 Service-X Service Routing Information [default] → Service-1 [cloud-run-service-1: branch-a] → Service-1-Branch-A [cloud-run-service-1: branch-b] → Service-1-Branch-B Service Discovery
What is xDS...? Listener Cluster Endpoint Endpoint Cluster Endpoint Endpoint
Route
What is xDS...? 0.0.0.0:5000 Service-1 10.28.1.11 10.28.1.12 Service-2 10.28.1.13 10.28.1.14
Route Path: /service-1 Path: /service-2
What is xDS...? Control Plane xDS API Cluster Route Listener
x Discovery Service API •Listener Discovery Service •Route Discovery Service
•Cluster Discovery Service •Endpoint Discovery Service
xDS Control Plane for Cloud Run xDS Control Plane Service-1-Branch-A
Service-1-Branch-B Service-1 Service-X Service Routing Information [default] → Service-1 [cloud-run-service-1: branch-a] → Service-1-Branch-A [cloud-run-service-1: branch-b] → Service-1-Branch-B Service Discovery
Deploy Service per Branch 🧑💻 Cloud Run Services Service-1-Branch-A Service-1-Branch-B
Service-1 Service-2-Branch-X Service-2-Branch-Y Service-2 Gateway cloud-run-service-1: branch-b cloud-run-service-2: branch-x
Agenda ɾCI / CD ɾQA