Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Cloud Run CI/CD + QA @ KAUCHE
Search
Yuki Ito
February 11, 2023
Technology
700
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.8k
Modular Monolith Go Server with GraphQL Federation + gRPC
110y
1
1.2k
Modular Monolith + Go @ newmo
110y
1
1.3k
Go + GraphQL @ newmo
110y
3
1k
Architect / Platform Team at KAUCHE
110y
1
730
Cloud Run + Observability / Reliability @ KAUCHE
110y
0
700
Microservices on Cloud Run @ KAUCHE
110y
0
340
KAUCHE Loves Go
110y
0
550
Evolution of Architecture @ Kauche
110y
3
650
Other Decks in Technology
See All in Technology
WasmをRustにする
sansantech
PRO
0
250
Local CI × GitHub Actions
gogutan
2
190
S3 Filesで挑む! 八戸せんべい汁の食べ頃問題
usanchuu
0
100
Running Kotlin + Quarkus with Lambda
nealle
1
3.7k
今さら理解するウェブフォントver.2026
takanorip
3
790
PagerDuty Tech Hub-鳴らすけれど、人は動かない
ezaki
0
170
分析AIエージェントを育てる、動く環境を育てる
codatum
1
1.1k
その Valkey 使いこなしていますか?
onk
PRO
5
1.5k
フロントエンドカンファレンス関西2026 - 速すぎるUIに、待ち時間を
teamlab
PRO
0
130
AIカンパニーへの転換を支えた、エンジニアの仕事の再定義
kworkdev
PRO
2
1.2k
初海外で注意すべきこと12選!!!安全快適なre:invent生活にするために
yuuuuuuu168
1
160
パッチ更新でterraform initが落ちた日
grimoh
1
140
Featured
See All Featured
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.9k
Are puppies a ranking factor?
jonoalderson
2
4.1k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Believing is Seeing
oripsolob
1
240
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.3k
Paper Plane
katiecoart
PRO
5
54k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
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