SLIDE 1 The Butler and the Snake
Continuous Integration for Python
Europython 2015 — Bilbao
Timo Stollenwerk
SLIDE 2
SLIDE 3
Continuous Integration
Commit Build Report
SLIDE 4
Buildbot
SLIDE 5
"It's like Buildbot, but with a butler." Jenkins (aka Hudson)
SLIDE 6
Nightly Builds
SLIDE 7
Solving the Nightly Build Problem
Commit Build Notify
SLIDE 8 Automated Build
Buildout / PIP / EasyInstall / Tox / Shining Panda
Photo Credit: Ralph Bijker
SLIDE 9
Testing
collective.xmltestreport / pytest / Coverage / Cobertura
SLIDE 10
Robot Framework / Saucelabs
Robot Framework
Robot / Saucelabs Jenkins Plugins
SLIDE 11
Static Code Analysis
Pep8 / Pyflakes / Pylint / plone.recipe.codeanalysis / Violations Plugin
SLIDE 12
Notifications
Email-Ext Plugin / LDAP / Jenkins Dashboard Plugin
SLIDE 13
Build is still broken
SLIDE 14
Agreement on the Team
SLIDE 15
Continuous Integration Rules
buildoutcoredev.readthedocs.org
SLIDE 16
A green build!
SLIDE 17
Scalability
Server-Node / Provisioning / Jenkins Port Allocator Plugin
SLIDE 18
Continuous Deployment
zest.releaser / devpi / Jenkins Workflow Plugin
SLIDE 19
Summary
SLIDE 20 Further Reading
https://medium.com/@timostollenwerk/continuous-integration-for-plone-b7b0b72c21dc
SLIDE 21 Europython 2015 - Bilbao
Timo Stollenwerk Twitter: IRC: E-Mail: Blog: Web: The Butler and the Snake http://twitter.com/timostollenwerk tisto@freenode tisto@plone.org http://medium.com/timostollenwerk http://timostollenwerk.net http://de.slideshare.net/tisto/the-butler-and-the-snake-europython-2015