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...
Search
Erwin Staal
October 13, 2017
Technology
0
96
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
70
Get up to speed with DevOps
erwinstaal
0
41
Event-driven autoscaling on Kubernetes with KEDA and Azure Functions
erwinstaal
0
210
DevOps - The Automation op compliance
erwinstaal
0
130
Architecting for Continuous Delivery
erwinstaal
0
240
Get up to speed with DevOps
erwinstaal
0
51
Get up to speed with DevOps using modern development practices
erwinstaal
0
76
Microsoft Unity
erwinstaal
0
85
De 10 geboden van Continuous Delivery
erwinstaal
0
110
Other Decks in Technology
See All in Technology
大規模イベントに向けた ABEMA アーキテクチャの遍歴 ~ Platform Strategy 詳細解説 ~
nagapad
0
190
LIFF CLIとngrokを使ったLIFF/LINEミニアプリのお手軽実機確認
diggymo
0
230
AIエージェントを現場で使う / 2025.08.07 著者陣に聞く!現場で活用するためのAIエージェント実践入門(Findyランチセッション)
smiyawaki0820
6
700
2025-07-31: GitHub Copilot Agent mode at Vibe Coding Cafe (15min)
chomado
2
380
Vision Language Modelと自動運転AIの最前線_20250730
yuyamaguchi
3
1.2k
生成AI導入の効果を最大化する データ活用戦略
ham0215
0
110
風が吹けばWHOISが使えなくなる~なぜWHOIS・RDAPはサーバー証明書のメール認証に使えなくなったのか~
orangemorishita
15
5.5k
【CEDEC2025】『Shadowverse: Worlds Beyond』二度目のDCG開発でゲームをリデザインする~遊びやすさと競技性の両立~
cygames
PRO
1
290
オブザーバビリティプラットフォーム開発におけるオブザーバビリティとの向き合い / Hatena Engineer Seminar #34 オブザーバビリティの実現と運用編
arthur1
0
350
AI人生苦節10年で会得したAIがやること_人間がやること.pdf
shibuiwilliam
1
270
Kiroでインフラ要件定義~テスト を実施してみた
nagisa53
3
310
【CEDEC2025】大規模言語モデルを活用したゲーム内会話パートのスクリプト作成支援への取り組み
cygames
PRO
2
770
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.5k
Statistics for Hackers
jakevdp
799
220k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Side Projects
sachag
455
43k
Embracing the Ebb and Flow
colly
86
4.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Documentation Writing (for coders)
carmenintech
73
5k
GitHub's CSS Performance
jonrohan
1031
460k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
332
22k
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/