https://github.com/example42/tp-acceptance
Acceptance tests on tp applications and profiles
https://github.com/example42/tp-acceptance
Last synced: 10 months ago
JSON representation
Acceptance tests on tp applications and profiles
- Host: GitHub
- URL: https://github.com/example42/tp-acceptance
- Owner: example42
- Created: 2015-11-13T19:26:15.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2016-04-05T14:21:43.000Z (over 9 years ago)
- Last Synced: 2025-03-04T17:49:26.118Z (10 months ago)
- Language: Shell
- Size: 190 KB
- Stars: 1
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Tiny Puppet Acceptance Tests
In this repo are gathered the results of acceptance tests of [Tiny Puppet](http://www.tiny-puppet.com)'s support for applications and profiles.
##### Current [Compatibility Matrix](tests/app_summary.md) for component applications
## Setup
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](https://github.com/example42/tp-playground/blob/master/Vagrantfile#L3) 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
The ```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 ```acceptance``` dir:
```bin/test_app.sh all Centos7 acceptance```
- To test an application on all the running VMs and save the results in the ```acceptance``` dir:
```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.
### Application tests
Routinely the results of acceptance tests are generated and [saved](tests/app_summary.md). This is a rough reference on the current support matrix of different applications on different Operating Systems.
For a summary, check the [Compatibility Matrix](tests/app_summary.md) 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.