(~1997) • Living in Karlsruhe, Germany since 2004 • Freelancer since 2007 and fi rst TYPO3 project • Javascript enthusiast since 2008 • DevOps architect since 2012 • TYPO3 Neos core developer since 2013 • First time in Asia two weeks ago • Cook, hiker, reader, traveler, gamer for a long time
and checking what’s going on in your codebase • My tool: Git & Gitlab • Your private Github • Big community • Easy to setup and maintain • Supports teams
My tool: Jenkins • Centralized application for running all tasks in the process (after commit) • Very customizable • Can run in a distributed environment • Has lots of plugins available including Chuck Norris plugin
Will be triggered for every build • Provides reporting on code quality and other metrics • Some tests can also be run as monitoring for the production system • Promote builds which pass the tests • Inform the team when a tests fails and show the overall quality over a timespan • My tools: • Selenium(2) • PHPUnit, JUnit, PyUnit, QUnit, etc…
deploy promoted builds • Promote builds on success • Con fi gurations should be • in version control • easy to setup • Should be reproducible by everyone in your company • Requires good reporting, because errors will happen!
Flow package • Can be part of the project itself • PHP-based con fi guration (not necessarily a good thing) • Code is readable and can be extended easily • Rollbacks when any error happens while deploying • Keeps revisions on the target system • Deployment via rsync, packaging, Git • Run customized tasks at every deployment step • Alternatives: • Fabric - Python based tool for deployment and remote administration tasks
setup of each step in the pipeline • Provision the (virtual) machines • Install the applications • Con fi gure the system environment • Create basic con fi gurations for projects • My tool: Chef • Write cookbooks and recipes in ruby for setting up reproducible environments • Large community & good support • Lots of free cookbooks you can use
updates • Check if the tools work together • Simulate deliveries • Break things and try again • My tool: Vagrant • Check out the talk by Michael Knoll (Saturday): „Reproducible and portable work environments with Vagrant & Chef“
trivial • First steps will be hard -> don’t give up! • Motivate your people to play around with the systems • Best learning effect from my experience • Spreads the knowledge in your company • Making your customer invest in the improvements of your pipeline