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
Portable Pipelines
Search
mongrelion
March 21, 2019
Programming
2
43
Portable Pipelines
Avoid vendor lock-in with this pragmatic approach to CICD pipelines (spoiler alerts, it's bash)
mongrelion
March 21, 2019
Tweet
Share
More Decks by mongrelion
See All by mongrelion
Introduction to PGP
mongrelion
0
27
Managing PostgreSQL with Terraform
mongrelion
0
27
Management sucks
mongrelion
0
90
The future is now: join the DevOps revolution!
mongrelion
1
310
From dev to prod in 5 minutes: is your company ready? - ASAS 2017
mongrelion
0
250
Introducción a los Schedulers - ScaleConfCo 2017
mongrelion
1
360
From dev to prod in 5 minutes - QCon London 2017
mongrelion
0
190
From development to production in 5 minutes: is your company ready?
mongrelion
1
72
Microservices infrastructure with Terraform, Consul and Vault
mongrelion
0
710
Other Decks in Programming
See All in Programming
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
3
380
iOSアプリの信頼性を向上させる取り組み/ios-app-improve-reliability
shino8rayu9
0
160
CSC305 Lecture 03
javiergs
PRO
0
240
オープンソースソフトウェアへの解像度🔬
utam0k
2
190
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
0
410
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
200
The Flutter Journey of Building a Live Streaming App — With a Side of Performance Tuning
u503
1
100
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1k
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
940
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
8
5.3k
Railsだからできる 例外業務に禍根を残さない 設定設計パターン
ei_ei_eiichi
0
380
Advance Your Career with Open Source
ivargrimstad
0
400
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
The Language of Interfaces
destraynor
162
25k
GitHub's CSS Performance
jonrohan
1032
460k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
How STYLIGHT went responsive
nonsquared
100
5.8k
Thoughts on Productivity
jonyablonski
70
4.9k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Fireside Chat
paigeccino
40
3.7k
How GitHub (no longer) Works
holman
315
140k
Automating Front-end Workflow
addyosmani
1371
200k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
45
2.5k
Transcript
@mongrelion - carlosleon.info Portable Pipelines Vilnius, DevOpsPro Europe 2019
@mongrelion - carlosleon.info Carlos León - @mongrelion Strategic Consultant All
Things Cloud Native, DevOps, Programmable Infrastructure, Automation and Hang Gliding <3
@mongrelion - carlosleon.info Agenda 1 CICD: The Basics 2 The
Status Quo 3 CICD Tooling 4 Example 5 Portability 6 Q&A
Questions https://sli.do #devops2019
CICD: The Basics
DevOps Toolchain is licensed under the Creative Commons Attribution-Share Alike
4.0 International license
Build -> Test -> Deploy Staging -> More Tests ->
Deploy Production
@mongrelion - carlosleon.info The Good
@mongrelion - carlosleon.info The Good • Predictable
@mongrelion - carlosleon.info The Good • Predictable • Reproducible
@mongrelion - carlosleon.info The Good • Predictable • Reproducible •
Visibility
@mongrelion - carlosleon.info The Good • Predictable • Reproducible •
Visibility • Accountability
@mongrelion - carlosleon.info The Good • Predictable • Reproducible •
Visibility • Accountability • Less error prone
@mongrelion - carlosleon.info The Bad
@mongrelion - carlosleon.info The Bad • Semantic Versioning
@mongrelion - carlosleon.info The Bad • Semantic Versioning • Can
get chaotic when the pipeline is slow
@mongrelion - carlosleon.info The Status Quo
Jenkins logo is licensed under the Creative Commons Attribution-Share Alike
3.0 Unported license.
@mongrelion - carlosleon.info The Good
@mongrelion - carlosleon.info • Community support The Good
@mongrelion - carlosleon.info • Community support • Commercial support The
Good
@mongrelion - carlosleon.info The Good • Community support • Commercial
support • Extensions/plugins ecosystem
@mongrelion - carlosleon.info • Community support • Commercial support •
Extensions/plugins ecosystem • Well known The Good
@mongrelion - carlosleon.info The Good • Community support • Commercial
support • Extensions/plugins ecosystem • Well known • Battle tested
@mongrelion - carlosleon.info The Bad
@mongrelion - carlosleon.info • Eager for resources The Bad
@mongrelion - carlosleon.info • Eager for resources • Hard to
automate The Bad
@mongrelion - carlosleon.info • Eager for resources • Hard to
automate • Stateful to the bone The Bad
@mongrelion - carlosleon.info The Bad • Eager for resources •
Hard to automate • Stateful to the bone • Extensions/plugin ecosystem
CICD Tooling
None
@mongrelion - carlosleon.info Web application written in Go Example
None
None
@mongrelion - carlosleon.info Issues with this approach
@mongrelion - carlosleon.info Issues with this approach • Lots of
manual steps
@mongrelion - carlosleon.info Issues with this approach • Lots of
manual steps • Changes are not visible
@mongrelion - carlosleon.info Issues with this approach • Lots of
manual steps • Changes are not visible • No track
@mongrelion - carlosleon.info Issues with this approach • Lots of
manual steps • Changes are not visible • No track • No responsibility
@mongrelion - carlosleon.info Issues with this approach • Lots of
manual steps • Changes are not visible • No track • No responsibility • Long feedback loops
@mongrelion - carlosleon.info Portability Example
None
None
None
None
None
None
@mongrelion - carlosleon.info Pros
@mongrelion - carlosleon.info Pros • Portability
@mongrelion - carlosleon.info Pros • Portability • Short iteration loops
@mongrelion - carlosleon.info Pros • Portability • Short iteration loops
• Accountability
@mongrelion - carlosleon.info Pros • Portability • Short iteration loops
• Accountability • Trackable changes
@mongrelion - carlosleon.info Cons
@mongrelion - carlosleon.info Cons • Hard to bootstrap
@mongrelion - carlosleon.info Cons • Hard to bootstrap • Time
to learn bash
@mongrelion - carlosleon.info Cons • Hard to bootstrap • Time
to learn bash • Hard to reuse community components
Questions https://sli.do #devops2019
@mongrelion - carlosleon.info Thank you.