Spinnaker
orig. Draft 2018-10-14
Continuous Delivery

by Joaquín Menchaca
update Draft 2018-11-08
Agenda

- What is Spinnaker?
- Pipelines & Artifacts
- What is Needed
- Deploying
- Releasing
- The Demo
Spinnaker?



The Artifact

Previously…

Delivered

This episode…
Components


Delivers Software using Immutable Prod w. GitOps & Pipelines
Pipelines


Jenkins/X releases (push) image, Spinnaker Deploys
Pipelines


Once Promoted (Approved), Spinnaker Deploys to Stage where Integration CI Stage Takes Place
Pipelines


Production will have Blue-Green Canary, roll back if fail
Pipelines Whaat??

Artifacts Whaat??
Backend Pipeline

Backend CI


hygiene = code cov, code health, security
Backend CD


health = heath check (ready, standby, active)
monitor = metrics, instrumentation (new relic)
FrontEnd Pipeline

FrontEnd CI


no npm, no git repo, just bucket now
FrontEnd CD


cdn points to correct bucket path
Ops

Infrastructure Pipeline
Ops CI
Yes, Ops has Code


chef server is also repo
Ops CD


chef artifact of data bags (json) determine env
Tooling Pipelines

build + test libs
Tooling CI


What is Needed?

Deployment & Releases
Deployments


Deployments


Deployments

- When to Configure
- Runtime - while system is running
- Build Time - dependences in image
- Deploy Time - environment specific
- Jenkins Releases (Pushes) Artifacts
- Spinnaker Deploys Artificats
- VM instances (GCE) - images by Packer
- K8S pods w. Helm - Docker images
- UX = many moving parts → one central part
Release


Current CI


Current CI

- Build scripts embed own CI Pipeline?
- Super task to do everything? NO
- Release directly to prod is open BAD
- Jenkins needs to drive, not build scripts
- Versions written to files
- Direct Commits to Master possible BAD
- No Guarantee Approve Release is Legit
- UX = Humans Required to edit JSON
- Can bypass process
- Mistakes can happen
Future CI


Future CI

- Just use CI to do CI!!
- CI good at doing CI, it's true
- Use Tags for Versions
- Single Source of Truth (no Databags)
- Branches for Environments
- UX = No Manual Editing Required
- Use Web UI and Relax
Spinnaker Demo

Screenshots


Screenshots


Screenshots


The End

Extras
in case anyone asks

Cutoff Promotions


GitOps Promotion
Current Release

Current Deploy

Spinnaker orig. Draft 2018-10-14 Continuous Delivery by Joaquín Menchaca update Draft 2018-11-08
Spinnaker
By Joaquín Menchaca
Spinnaker
RocketLawyer CD
- 735