Skip to main content

Ansible Debug Adapter Protocol Implementation

Project description

Ansibug

Test workflow codecov PyPI version License

The core component of the Ansible Debug Adapter Protocol used for debugging Ansible playbooks. See more documentation for ansibug at https://jborean93.github.io/ansibug/.

Please note this library should be considered a preview. New features and behaviour changes should be expected during this preview period.

Debug Adapter

This library combined with a Debug Adapter Protocol client, like Visual Studio Code, can be used to run and debug Ansible playbook's interactively. It supports basic features like stepping in, over, and out of tasks in a play with support for getting and setting variables at runtime.

ansible_example

More information about the debug adapter and debugging experience of Ansible can be found under the docs.

Requirements

The following Python requirements must be met before using this library:

  • Python 3.10+ (dependent on ansible-core support)
  • ansible-core >= 2.16.0
  • Linux or macOS (no Windows)

The debugger aims to continue to support the current ansible-core versions that have no reached End Of Life. See the ansible-core support matrix to see the current versions and the control node python versions for those versions. There are no guarantees that all features will be supported across Ansible versions, new features might be reliant on changes only present in newer Ansible versions. Any such features will be explicitly called out in the documentation.

Installation

This library has been published on PyPI and can be installed with:

python -m pip install ansibug

To test out the changes locally run the following:

git clone https://github.com/jborean93/ansibug.git

python -m pip install -e .[dev]
pre-commit install

This will install the current code in editable mode and also include some development libraries needed for testing or other development features.

Testing

This library uses tox to run the sanity and integration tests. Once the dev extras for this library has been installed, all the tests can be run by running the tox command.

As the support matrix for this library can take some time to run it might be beneficial to run only certain tests. The following factors are available in tox

  • sanity
  • py3{10,11,12,13}
  • ansible_{2.16,2.17,2.18,devel}

Here are some example factors that can be invoked with tox:

# Run only the sanity tests
tox run -f sanity

# Run Ansible 2.16 on all its supported Python versions
tox run -f ansible_2.16

# Run Python 3.12 on all the supported Ansible versions
tox run -f py312

# Run Ansible 2.16 tests on Python 3.12
tox run -f py312 ansible_2.16

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

ansibug-0.2.0.tar.gz (56.4 kB view details)

Uploaded Source

Built Distribution

ansibug-0.2.0-py3-none-any.whl (64.7 kB view details)

Uploaded Python 3

File details

Details for the file ansibug-0.2.0.tar.gz.

File metadata

  • Download URL: ansibug-0.2.0.tar.gz
  • Upload date:
  • Size: 56.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for ansibug-0.2.0.tar.gz
Algorithm Hash digest
SHA256 b89ea8b41f0547b070b6f4abb0e1d03899425f39bdcfc3a81dc4399e2b47bc93
MD5 05071b43c3dab7b36af772a8f17ef152
BLAKE2b-256 23408738b2155fabde5a6ddde009ab99c5720c49f699162d4279be9653dffd16

See more details on using hashes here.

Provenance

The following attestation bundles were made for ansibug-0.2.0.tar.gz:

Publisher: GitHub
  • Repository: jborean93/ansibug
  • Workflow: ci.yml
Attestations:
  • Statement type: https://in-toto.io/Statement/v1
    • Predicate type: https://docs.pypi.org/attestations/publish/v1
    • Subject name: ansibug-0.2.0.tar.gz
    • Subject digest: b89ea8b41f0547b070b6f4abb0e1d03899425f39bdcfc3a81dc4399e2b47bc93
    • Transparency log index: 147869644
    • Transparency log integration time:

File details

Details for the file ansibug-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: ansibug-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 64.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for ansibug-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7e5e40f0f784b3792edecd1bbcf52a0a4199b864e1ff9678d0da1666519d6127
MD5 65ff20e70c18eaaaef1a3dffb28ff8f0
BLAKE2b-256 25233a978e85fe2a096ad99c167d95d9dc6e640da3316cd6897e23995cf9075c

See more details on using hashes here.

Provenance

The following attestation bundles were made for ansibug-0.2.0-py3-none-any.whl:

Publisher: GitHub
  • Repository: jborean93/ansibug
  • Workflow: ci.yml
Attestations:
  • Statement type: https://in-toto.io/Statement/v1
    • Predicate type: https://docs.pypi.org/attestations/publish/v1
    • Subject name: ansibug-0.2.0-py3-none-any.whl
    • Subject digest: 7e5e40f0f784b3792edecd1bbcf52a0a4199b864e1ff9678d0da1666519d6127
    • Transparency log index: 147869648
    • Transparency log integration time:

Supported by

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