Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
---
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/