diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000000000000000000000000000000000000..57e457ec22c6c18aac27a138882f83e8c5022012 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,38 @@ +/* +Jenkins pipeline for testing an Ansible role. +Required software on the agent: +- Python 2.7. +- Tox. +- Vagrant. +- Virtualbox. +*/ +pipeline { + agent any + environment { + VBOX_HWVIRTEX = off + } + stages { + stage('install') { + steps { + sh 'git submodule update --init --recursive' + } + } + stage('test') { + steps { + parallel ( + 'pre-commit': { + sh 'tox -e pre-commit' + } + 'molecule': { + sh 'tox' + } + ) + } + } + } + post { + success { + sh 'tox -e import' + } + } +} diff --git a/tox.ini b/tox.ini index fca46228eacd9240de0cdf608077968eb1271893..c80d480b6f557c37a14f6ec977a2900494e95d51 100644 --- a/tox.ini +++ b/tox.ini @@ -24,3 +24,8 @@ commands = sh -c "ansible-galaxy install git+file://$(pwd),$(git rev-parse --abbrev-ref HEAD) -p .molecule/roles" molecule dependency pre-commit run --all-files + +[testenv:import] +envdir = {toxinidir}/.tox/molecule +deps = -rtests/requirements.txt +commands = ansible-galaxy import -v