Upgrade to Pro — share decks privately, control downloads, hide ads and more …

TechDaysNL - De tien fundamenten van Continuous Delivery

TechDaysNL - De tien fundamenten van Continuous Delivery

TechDaysNL - De tien fundamenten van Continuous Delivery

Erwin Staal

October 13, 2017
Tweet

More Decks by Erwin Staal

Other Decks in Technology

Transcript

  1. 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
  2. Continuous Delivery • Continuous Integration • Push-button deployments • Leveren

    software > nieuwe features • Snel en geautomatiseerd feedback op changes
  3. < /> As a {who} I want {what} Because {why}

    + + Waardeer alles dat klein is
  4. 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
  5. Implementeer je eigen pipeline Commit Stage Compile Unit test Analysis

    Build Installers Automated Acceptance Testing Automated Capacity Testing Manual Testing Exploratory Testing Release Monitoring
  6. 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`); } }); }
  7. 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" } } }
  8. 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
  9. 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
  10. Trunk 1 2 3 4 5 1 1 3 4

    2 4 5 2 1 3 2 4 3 Merge elke dag naar master