Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Ci & proServer

392 views

Published on

Short introduction to a CI Stack we love.
Gitlab + Surf + Ansible + proServer

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Ci & proServer

  1. 1. Our proServer ❤ continuous integration Sebastian Helzle T3CON16 Munich, October 26th 2016
  2. 2. What you will hear about • Short introduction into continuous integration/delivery & why you want that • A lean stack for easy CI/CD (Gitlab, Surf, Ansible) • How the proServer can help you • How we @punkt.de can help you do all this
  3. 3. Short introduction into CI/CD & why you want that
  4. 4. –Wikipedia Continuous Integration In software engineering, continuous integration (CI) is the practice of merging all developer working copies to a shared mainline several times a day.
  5. 5. –Wikipedia Continuous Delivery It aims at building, testing, and releasing software faster and more frequently.
  6. 6. It all starts with change • A developer fixes a bug • They commit the change to GIT • They push to a repository • And now what?
  7. 7. Old way • Team decides to make a release after a few weeks • Projects latest version (maybe tested) is transferred manually in some way to production • Meanwhile website shows errors • Caches for TYPO3, Redis, PHP, XYZ are flushed, apache restarted, solr connections reset, temp folder deleted, database migrations executed, etc… • Something is fixed manually because of a configuration problem • An hour later the team hopes the website is now working correctly
  8. 8. –A concerned product owner So what did we actually release?
  9. 9. We want to understand what’s going on
  10. 10. We want to automate and minimize human error • Put our manual checks into code • Put our manual tasks into code • Make everything reproducible • Make sure the intern can do releases • Have documented releases
  11. 11. New way • Developer commits • CI Server does it’s checks • Verified commits are reviewed and merged or auto merged • Auto-Deployment to staging • Developer tags verified commit • Auto-Deployment to production
  12. 12. A simple CI/CD stack • Gitlab • TYPO3 Surf • Ansible
  13. 13. Gitlab • CI Server • Git Server • Free or Self-Hosted • Optional: • Ticketsystem • Wiki • Static site hosting • Projektmanagement
  14. 14. TYPO3 Surf • Verified deployments • Smoke tests • Automated tasks • Cache clearing etc… • Allows rollbacks • Keeps old releases
  15. 15. Ansible • Infrastructure as code • Easy to learn • Almost no requirements on servers • Minimizes manual work on servers
  16. 16. Our proServer is a great base for CI/CD • Works nicely with Ansible • You can use it like a root server • We manage security relevant stuff • We optimized it for TYPO3 and Neos projects • Cost effective!
  17. 17. How we @punkt.de can help you • We offer workshops to help you setup or plan your CI/CD • We make the proServer better with your feedback • We will provide working setup scripts for the proposed easy stack on Github
  18. 18. Questions? 
 Contact Sebastian Helzle @sebobo helzle@punkt.de
  19. 19. Sources • Gitlab - https://about.gitlab.com • Ansible - https://www.ansible.com • TYPO3 Surf - https://github.com/TYPO3/Surf • proServer - https://proserver.punkt.de

×