Tiny Puppet Acceptance Tests
In this repo are gathered the results of acceptance tests of Tiny Puppet's support for applications and profiles.
Compatibility Matrix for component applicationsCurrent
To install and setup the testing environment (Needed: git, Vagrant, Virtual Box r10k):
git clone https://github.com/example42/tp-acceptance cd tp-acceptance r10k puppetfile install vagrant status
The default Vagrantfile uses the cachier plugin, you can install it with (comment thesecond line of Vagrant file (
config.cache.auto_detect = true) if you don't want to use/install it:
vagrant plugin install vagrant-cachier
The repository structure:
Puppetfile # Module to install via r10k o librarian-puppet Vagrantfile # Vagrant environment configuration bin/ # Contains scripts used fors tests hieradata/ # Contains hieradata used in Vagrant's Puppet envirorment manifests/ # Manifests modules/ # External modules directory. Populated by r10k modules_local # Local modules directory
Applications acceptance tests
bin/test_app.sh script is the quickest way to test how Tiny Puppet manages different applications on different Operating Systems.
You need to run the VM you want to test on:
vagrant up Ubuntu1404
and then execute commands like these:
To test apache installation on Ubuntu1404:
bin/test_app.sh apache Ubuntu1404
To test ALL the supported applications on Centos7:
bin/test_app.sh all Centos7
To test ALL the applications on Centos7 and save the results in the
bin/test_app.sh all Centos7 acceptance
To test an application on all the running VMs and save the results in the
bin/test_app.sh munin all acceptance
To run puppi check for proftpd applications on Centos7:
bin/test_app.sh all Centos7 puppi
To run acceptance tests for all the supported applications on all the running VMs:
bin/test_app.sh all all acceptance
Do not expect everything to work seamlessly, this is a test environment to verify functionality and coverage on different Operating Systems.
Routinely the results of acceptance tests are generated and saved. This is a rough reference on the current support matrix of different applications on different Operating Systems.
For a summary, check the Compatibility Matrix of tp support for component applications, updated regularly.
Note however that Tiny Puppet support may extend to other OS: the acceptance tests use directly
puppet apply on
tp defines, so they need to run locally and have the expected prerequisites (such as the Ruby version).
Note also that some tests fail for trivial reasons such as the absence of a valid configuration file by default or missing data to configure dedicated repositories or execution order issues while running tests on the same VM or errors in the test scripts.