Repository URL to install this package:
|
Version:
1.0.0b1 ▾
|
---
sudo: required
language: generic
matrix:
include:
# High Sierra
- os: osx
osx_image: xcode10.1
env: ANSIBLE_VERSION='<2.8.0'
# High Sierra
- os: osx
osx_image: xcode10.1
env: ANSIBLE_VERSION='<2.7.0'
# High Sierra
- os: osx
osx_image: xcode10.1
env: ANSIBLE_VERSION='<2.6.0'
# High Sierra
- os: osx
osx_image: xcode10.1
env: ANSIBLE_VERSION='<2.5.0'
# Sierra
- os: osx
osx_image: xcode9.2
env: ANSIBLE_VERSION='<2.8.0'
# El Capitan
- os: osx
osx_image: xcode8
env: ANSIBLE_VERSION='<2.8.0'
branches:
only:
- master
- /^\d+\.\d+(\.\d+)?(-\S*)?$/
before_install:
# Unwind the developer environment
- URL=https://raw.githubusercontent.com/Homebrew/install/master/uninstall
- curl -sLO "${URL}"
- chmod +x uninstall
- ./uninstall --force
- rm -rf /usr/local/Homebrew
- sudo rm -rf /usr/local/Caskroom
- sudo rm -rf /usr/local/bin/brew
- sudo rm -rf /Library/Developer/CommandLineTools
# Install pip
- curl https://bootstrap.pypa.io/get-pip.py | sudo -H /usr/bin/python
- which pip
- pip --version
# Setup virtualenv
- sudo -H pip install -U virtualenv
- virtualenv --version
- virtualenv .venv
- source .venv/bin/activate
install:
# Upgrade setuptools and install setuptools_scm (for testinfra)
- pip install -U setuptools setuptools_scm
# Dependencies
- pip install "ansible${ANSIBLE_VERSION}"
- pip install ansible-lint
- pip install testinfra
- pip install yamllint
# Requests, required for version_check.py
- pip install requests
# Check versions
- ansible --version
- ansible-lint --version
- py.test --version
- yamllint --version
script:
# Check available releases
- python tests/version_check.py
# Lint all YAML files.
- yamllint .
# Check the role/playbook's syntax.
- ansible-playbook tests/playbook.yml --syntax-check
# Lint the playbook.
- ansible-lint tests/playbook.yml
# Test the playbook.
- ansible-playbook tests/playbook.yml
# Test the playbook's idempotence.
- idempotence=$(mktemp /private/tmp/XXXXXXXXX)
- ansible-playbook tests/playbook.yml | tee -a ${idempotence}
- >-
tail -25 ${idempotence} |
grep -q 'changed=0.*failed=0' &&
(echo 'Idempotence test: pass' && exit 0) ||
(echo 'Idempotence test: fail' && exit 1)
# Test host state
- py.test --connection=local --hosts=localhost --verbose tests
notifications:
webhooks: https://galaxy.ansible.com/api/v1/notifications/