Infrastructure under the magnifying glass

Post on 10-Apr-2017

469 views 0 download

Transcript of Infrastructure under the magnifying glass

Infrastructure under the magnifying glass

Martin Fleischer

Table of content

Continuous DeliveryInfrastructure as Code

Low level QAKitchenCIDilloJS - Verifying your web application

Final wordsQ&A

Introduction

Hands On

Conclusion

Continuous Delivery/DeploymentFrom CI to CD

● Build and test faster + release faster ● Reduce risk of releasing● Get fast feedback● Keep everything in version control & automate almost everything

Infrastructure as CodeWhy testing infrastructure ?

● It’s code !● Collective Ownership - Infrastructure belongs to everyone● Document your infrastructure● Get fast feedback & save time on debugging

Don’t let your infrastructure end up being saddened

Low-Level QAStatic code analysis & unit tests

● Remove code smells● Avoid regression● Improve design with TDD/BDD● Documentation Service

Unit

UI

Low Level QA in the Chef world● Foodcritic - Cookbook linter● Rubocop - Ruby static code analyzer● Chefspec - Chef unit tests

KitchenCIhttp://kitchen.ci/

Integration test harness

● Driver plugin architecture (Amazon EC2, Digital Ocean, Vagrant, Docker, …)

● Run tests on multiple platforms● Support for many test frameworks (Bats, shUnit2, RSpec, Serverspec)

Kitchen workflowhttps://learn.chef.io/local-development/rhel/get-started-with-test-kitchen/

kitchen create

kitchen converge

kitchenlogin

kitchenverify

kitchendestroy

DilloJShttps://github.com/butjar/dillojs

Final words● Infrastructure testing is still at an early stage● Focus is still on integration testing● No rocket science● Participate in DevOps !

Tested infrastructure vs. Untested infrastructure

Q&A

?!