Slide 1

Slide 1 text

SERVERLESS CI/CD ADITYA SATRYA Head of IT Development Jabar Digital Service linkedin.com/in/asatrya July 2019

Slide 2

Slide 2 text

Hi, I’m Aditya Head of IT Development, Jabar Digital Service linkedin.com/in/asatrya Interested about: technical leadership, devops, backend development, agile methodologies, data engineering 2

Slide 3

Slide 3 text

Our mission: Establish data-driven policy making; Accelerate government digital transformation; Simplify people's lives with digital technology. 3

Slide 4

Slide 4 text

Our experience with GCP 4

Slide 5

Slide 5 text

Dev & Staging servers CI/CD pipeline 45+ pipeline runs/day ~10 deployments/day 5

Slide 6

Slide 6 text

Outline 6

Slide 7

Slide 7 text

Introduction to CI/CD Introduction to Serverless Overview about Cloud Build and Cloud Run Simple end-to-end demo 7 What will be in this talk:

Slide 8

Slide 8 text

Complex CI/CD case Deep technical discussion about Cloud Build and Cloud Run 8 What will NOT be in this talk:

Slide 9

Slide 9 text

Serverless & CI/CD 9

Slide 10

Slide 10 text

What is Serverless? 10

Slide 11

Slide 11 text

Provisioning Scaling Patching Upgrading 11

Slide 12

Slide 12 text

Focus on your code 12

Slide 13

Slide 13 text

What is CI/CD? 13

Slide 14

Slide 14 text

Git-push-to-deploy pipeline Automated Consistent environment 14

Slide 15

Slide 15 text

15 Git Push Build and Test Deploy Staging Server Production Server Review & Rollout

Slide 16

Slide 16 text

Why CI/CD? 16

Slide 17

Slide 17 text

Speed Quality Peace of mind 17

Slide 18

Slide 18 text

Job queue congestion Scaling is hard Infra troubleshooting 18 Problems solved with serverless CI/CD

Slide 19

Slide 19 text

Tools: Cloud Build & Cloud Run 19

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

21 Cloud Build 101

Slide 22

Slide 22 text

build test deploy and.. actually anything 22 CI/CD service for

Slide 23

Slide 23 text

Fully-managed Pay per build-minute 23 Serverless

Slide 24

Slide 24 text

24 Cloud Build Workflow

Slide 25

Slide 25 text

25 Cloud Run 101

Slide 26

Slide 26 text

Automatically scales your stateless containers 26

Slide 27

Slide 27 text

Startup times and response times No persistent filesystem Request-scoped computation Stateless services 27 Contract

Slide 28

Slide 28 text

28 Resource Model

Slide 29

Slide 29 text

Demo: Simple CI/CD 29

Slide 30

Slide 30 text

Create simple NodeJS app Create unit test script Dockerize app Push to Github 30 App development

Slide 31

Slide 31 text

Create cloudbuild.yaml Create Cloud Build trigger Create Cloud Run Service 31 Configure CI/CD Pipeline

Slide 32

Slide 32 text

Git push See Cloud Build job See Cloud Run deployment 32 Run CI/CD Pipeline

Slide 33

Slide 33 text

Thanks! Any questions? 33