-
Notifications
You must be signed in to change notification settings - Fork 11
Testing
This page should line out testing concepts applied in this project. It is my ( Matthias ) personal opinion based on my current state of knowledge and sensitivities.
Current suggestion to start testing this infrastructure project is: terratest.
First step is to pick a powerful, but easy to use and setup testing framework.
A go library to write tests for terraform, packer and docker.
Made for terraform.
It is golang.
Test have to be written in golang and hence can make use of the language toolset and libraries.
Has to run on real infrastructure. No pre-evaluation of terraform files.
Organizing a golang project might be a bit more work, but toolset and libraries are powerful. And of course writing golang is fun. ;)
There is a toolset to test infrastructure setups done with Chef. This plugin extends the test capabilities for terraform.
Setting it up involves many steps and creates files all over your computer ( like: ruby, bundler, Gemfile ).
Furthermore looking at the first test example reveals the expression of the whole infrastructure just in a different language.
It uses Inspec. There is a competitor called serverspec. It is not clear which one is the future.
It is based on ruby.
Kitchen.CI was made to evaluate Chef infrastructure definition.
From my perspective the setup is too complicated hence the maintenance will be complicated too. A tool made for Chef made fit for terraform - this does not sound like a straight forward solution. For now ( 2019-06-20 ) Kitchen-Terraform does not seem the right fit for this project.