Skip to main content

Ansible Developers Box

Project description

andebox

PyPI - Version PyPI - Python Version PyPI - Downloads Last Commit

Build Status docs codecov

andebox is a script to assist Ansible developers by encapsulating some boilerplate tasks, especially the ability of running tests from the root directory of the collection project without any additional setup.

andebox integration test demo

Highlights

Setup-less ansible-test

No need to clone in specific locations or keep track of env variables. Simply clone whichever collection you want and run the ansible-test command as:

$ andebox test -- sanity --docker default --test validate-modules plugins/modules/mymodule.py
$ andebox test -- unit --docker default test/units/plugins/modules/mymodule.py
$ andebox test -- integration --docker default mymodule

If you want to test your code against multiple versions of ansible-core or other component, you will like the tox-test subcommand as well.

Stats on ignore files

Gathering stats from the ignore files can be quite annoying, especially if they are long. One can run:

$ andebox ignores -s2.17 -fc validate-modules:parameter-state-invalid-choice
     1  plugins/modules/consul_session.py validate-modules:parameter-state-invalid-choice
     1  plugins/modules/osx_defaults.py validate-modules:parameter-state-invalid-choice
     1  plugins/modules/parted.py validate-modules:parameter-state-invalid-choice
     1  plugins/modules/rhevm.py validate-modules:parameter-state-invalid-choice

Runtime config

Quickly peek what is the runtime.yml status for a specific module:

$ andebox runtime scaleway_ip_facts
D modules scaleway_ip_facts: deprecation in 3.0.0 (current=2.4.0): Use community.general.scaleway_ip_info instead.

Or using a regular expression:

$ andebox runtime -r 'gc[pe]' | head -5
R lookup gcp_storage_file: redirected to community.google.gcp_storage_file
T modules gce: terminated in 2.0.0: Use google.cloud.gcp_compute_instance instead.
R modules gce_eip: redirected to community.google.gce_eip
R modules gce_img: redirected to community.google.gce_img
R modules gce_instance_template: redirected to community.google.gce_instance_template

where D=Deprecated, T=Tombstone, R=Redirect.

Run Integration Tests in Vagrant VMs

To run integration tests inside a VM managed by vagrant:

# Run test in VM named "fedora37" using sudo
$ andebox vagrant -n fedora37 -s -- --python 3.9 xfs_quota --color yes

andebox does not manage your Vagrantfile. The user is responsible for creating and setting up the VM definition.

Installation

Install it as usual:

pip install andebox

If you use pipx (strongly recommended), you may use:

pipx install andebox

Project details


Release history Release notifications | RSS feed

This version

1.9.0

Download files

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

Source Distribution

andebox-1.9.0.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

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

andebox-1.9.0-py3-none-any.whl (25.2 kB view details)

Uploaded Python 3

File details

Details for the file andebox-1.9.0.tar.gz.

File metadata

  • Download URL: andebox-1.9.0.tar.gz
  • Upload date:
  • Size: 19.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for andebox-1.9.0.tar.gz
Algorithm Hash digest
SHA256 3bd0a090d1e06f673b4a46fc55c55fc851bc08062e4304124e29b184fcd4d8a6
MD5 7282c93defbf8c8aa6ae8becdd9c13d3
BLAKE2b-256 497b8f50459b1d40caa83f74bdf96dd33207b8d08f224d9e0f35052760064faa

See more details on using hashes here.

Provenance

The following attestation bundles were made for andebox-1.9.0.tar.gz:

Publisher: release.yml on russoz-ansible/andebox

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file andebox-1.9.0-py3-none-any.whl.

File metadata

  • Download URL: andebox-1.9.0-py3-none-any.whl
  • Upload date:
  • Size: 25.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for andebox-1.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 166005f5de5727db87510fafab49ad55a949d2097d43ff031dd7eb4c10ee883a
MD5 bc7e21a8ccd77d0f2ea415e42f12a4ad
BLAKE2b-256 341b0cf9c02730d5fe96d5c6aa3da746ff585826d90a8e52f345ce7bc722360a

See more details on using hashes here.

Provenance

The following attestation bundles were made for andebox-1.9.0-py3-none-any.whl:

Publisher: release.yml on russoz-ansible/andebox

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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