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
TechDaysNL - De tien fundamenten van Continuous Delivery
Search
Erwin Staal
October 13, 2017
Technology
0
84
TechDaysNL - De tien fundamenten van Continuous Delivery
TechDaysNL - De tien fundamenten van Continuous Delivery
Erwin Staal
October 13, 2017
Tweet
Share
More Decks by Erwin Staal
See All by Erwin Staal
Networking on Azure PaaS
erwinstaal
0
66
Get up to speed with DevOps
erwinstaal
0
36
Event-driven autoscaling on Kubernetes with KEDA and Azure Functions
erwinstaal
0
97
DevOps - The Automation op compliance
erwinstaal
0
98
Architecting for Continuous Delivery
erwinstaal
0
180
Get up to speed with DevOps
erwinstaal
0
46
Get up to speed with DevOps using modern development practices
erwinstaal
0
66
Microsoft Unity
erwinstaal
0
71
De 10 geboden van Continuous Delivery
erwinstaal
0
94
Other Decks in Technology
See All in Technology
累計ダウンロード数1億8000万を超えるアプリケーションプラットフォームのレガシーシステム脱却とモダン化への道
kmitsuhashi
0
120
VPoEの視点から見た、ヘンリーがサーバーサイドKotlinを使う理由 / Why Server-side Kotlin 2024
cho0o0
1
420
AIアシスタントの活用で品質の向上と開発ワークフローのスピードアップ
nagix
1
190
OSSコミットしてZennの課題を解決した話
dyoshikawa1993
0
150
推薦システムを本番導入する上で一番優先すべきだったこと~NewsPicks記事推薦機能の改善事例を元に~
morinota
0
120
サービス開発を前に進めるために 新米リードエンジニアが 取り組んだこと / Steps Taken by a Novice Lead Engineer to Advance Service Development
nologyance
0
180
LINE WORKSへ簡単通知!Incoming Webhookアプリの紹介
mmclsntr
0
110
運用改善、不都合な真実 / 20240722-ssmjp-kaizen
opelab
17
8k
How to Think Like a Performance Engineer
csswizardry
4
590
セキュリティ研修 Day1【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
150
AI研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
130
目標設定は好きですか? アジャイルとともに目標と向き合い続ける方法 / Do you like target Management?
kakehashi
10
3k
Featured
See All Featured
Atom: Resistance is Futile
akmur
261
25k
Fantastic passwords and where to find them - at NoRuKo
philnash
42
2.7k
A Philosophy of Restraint
colly
200
16k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
129
32k
4 Signs Your Business is Dying
shpigford
178
21k
Thoughts on Productivity
jonyablonski
64
4.1k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
353
29k
Creatively Recalculating Your Daily Design Routine
revolveconf
214
11k
Fireside Chat
paigeccino
25
2.8k
The Cult of Friendly URLs
andyhume
75
5.9k
Being A Developer After 40
akosma
72
580k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
121
18k
Transcript
None
None
Software engineer ALM Consultant
[email protected]
@erwin_staal Erwin Staal
Software engineer ALM Consultant
[email protected]
@erwin_staal Erwin Staal
Continuous Delivery? • Continuous Delivery is the ability to get
changes of all types into the hands of users, safely and quickly in a sustainable way • Sneller leveren • Hogere kwaliteit • Minder risico bij releases • Vroegtijdig feedback • Zicht op voortgang
Continuous Integration • Commit -> build -> test • Merged
vaak naar master
Continuous Delivery • Continuous Integration • Push-button deployments • Leveren
software > nieuwe features • Snel en geautomatiseerd feedback op changes
None
De hele organisatie helpt software te leveren
< /> As a {who} I want {what} Because {why}
+ + Waardeer alles dat klein is
Neem tijd om te refactoren “Any fool can write code
that a computer can understand. Good programmers write code that humans can understand.” - Martin Fowler
Automatiseer zoveel mogelijk testen
Automatiseer zoveel mogelijk testen
Automatiseer zoveel mogelijk testen
Implementeer je eigen pipeline Commit Stage Compile Unit test Analysis
Build Installers Automated Acceptance Testing Automated Capacity Testing Manual Testing Exploratory Testing Release Monitoring
Definieer je pipeline als code function findOrCreateBuild(account, teamProject, token, que
dockerHostEndpoint, dockerRegistryEndpoint) { util.tryFindBuild(account, teamProject, token, target, f if (e) { callback(e); } if (!bld) { createBuild(account, teamProject, token, queueId, dockerHostEndpoint, dockerRegistryEndpoint); } else { gen.log(`+ Found build definition`); } }); }
Definieer je infrastructuur als code Configuration ServerConfig { Import-DscResource -Module
xWebAdministration Node "webserver" { WindowsFeature installIIS { Ensure="Present" Name="Web-Server" } WindowsFeature installWebAspNet45 { Ensure="Present" Name="Web-Asp-Net45" } } }
Houdt de pipeline snel
werkende pipeline prioriteit Geef een
127.0.0.1 Draai de pipeline lokaal
Merge Merge Trunk Merge elke dag naar master
Trunk 2 2 3 4 2 3 1 1 1
1 4 5 2 3 1 2 1 3 2 1 1 4 3 2 Merge elke dag naar master
Merge Merge Trunk 2 2 3 4 2 3 1
1 1 1 4 5 2 3 1 2 1 3 2 1 1 4 3 2 1 4 3 2 1 4 5 2 3 Merge elke dag naar master
Trunk 1 2 3 4 5 1 1 3 4
2 4 5 2 1 3 2 4 3 Merge elke dag naar master
Merge elke dag naar master
Merge elke dag naar master
Feature A Feature B Dev Test Prod Scheidt deployment van
release
Vragen? Erwin Staal
[email protected]
@erwin_staal https://www.linkedin.com/in/erwinstaal/