Skip to main content

No project description provided

Project description

Ansible test

Make testinfra easier with ansible repository.

Write your test directly in your roles

purpose of ansible-tests

I want to be able to write testinfra tests in my role and use my inventories and my playbooks to run them

Usages

ansible-tests --file-name tests.yml --inventory inventory/dev.ini

Test your ansible roles

Your tests should be in test directory inside your role :

nginx
    ├── defaults
    │   └── main.yml
    ├── handlers
    │   └── main.yml
    ├── tasks
    │   └── main.yml
    └── tests
        └── test_nginx.py

Example of test file :

# tests/test_nginx.py

def test_check_nginx_is_installed(host):
  nginx = host.package('nginx')
  assert nginx.is_installed

def test_nginx_is_running(host):
  nginx = host.service('nginx')
  assert nginx.is_running

Example of corersponding task file :

# tasks/main.yml
---
- name: install nginx
  package:
    name: nginx
    state: present

- name: start nginx
  service:
    name: nginx
    state: started

Configure ansible-test

To run ansible test, you have to respect this requirements:

  • your roles must be in roles directory
  • you must have a playbook or a file to describe the matching between tests and servers

tests.yml supported formats

- hosts: bdd
  roles: postgres
- hosts: all
  roles: secu
- hosts: all
  roles:
    - base
    - secu
- hosts:
  - bdd
  - web-app
  roles:
  - role: secu
  - role: users
- hosts: bdd:web-app
  roles:
  - role: secu

You should be able to use directly your playbook if you don't use stuff like !group to exclude some group

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ansible-tests-0.0.2.tar.gz (2.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ansible_tests-0.0.2-py3-none-any.whl (4.4 kB view details)

Uploaded Python 3

File details

Details for the file ansible-tests-0.0.2.tar.gz.

File metadata

  • Download URL: ansible-tests-0.0.2.tar.gz
  • Upload date:
  • Size: 2.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.2

File hashes

Hashes for ansible-tests-0.0.2.tar.gz
Algorithm Hash digest
SHA256 c4f1f677b87498ef781761748188c72e27a3b4b67f5838d7646c981a3401956a
MD5 564d6d2dbb73286a772c09f523dad452
BLAKE2b-256 07157d145e8db9753abc4763303343aa4bb135e89d9a10a33b9b4cc4c44fd4bb

See more details on using hashes here.

File details

Details for the file ansible_tests-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: ansible_tests-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 4.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.2

File hashes

Hashes for ansible_tests-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8004eb52534966fc1ec2948e83a90848ea1a5b2b3a47cff3058cca9359762abb
MD5 b66711a8fd1ab48a4f71c94832f43241
BLAKE2b-256 b8798a1b705ad668b5e692b9be2b20947ca211f1c9f140d8b33b48f5267ee281

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page