Skip to main content

untaped-awx

Install it as part of untaped: uv tool install 'untaped[awx]' or pip install 'untaped[awx]'. To add it to an existing install, see Getting started.

untaped awx reads and changes Ansible Automation Platform (AAP) or AWX resources by name, lints them, launches and follows jobs, and tests playbook changes with declarative suites. It is for people and agents who manage a shared controller from the command line or from CI. awx lint and awx test are experimental and may change in a minor release.

Set up

Point a profile at the controller, give it a token, then check the connection:

untaped config set awx.server.url https://aap.example.com
untaped auth login awx
untaped config set awx.api_prefix /api/v2/   # standalone AWX only
untaped awx ping

ping names the authenticated user. auth login stores the token with your password store, not in config.yml; an environment variable also works. See Tokens and the settings.

Find and change resources

untaped awx job-templates list --filter name__icontains=deploy
untaped awx job-templates get Deploy --organization Default --format yaml
untaped awx job-templates patch Deploy --organization Default --set verbosity=2 --dry-run
untaped awx job-templates edit --filter name__icontains=deploy --field verbosity

Targets are picked by name inside a scope, by id, by query or from a pipe. patch sets the same values on every selected resource; edit opens the selection in your editor as one multi-document file. Writes preview and ask first (untaped agents awx writes).

Export and apply documents

untaped awx job-templates export Deploy --organization Default --out deploy.yml
untaped awx apply ./awx-specs --dry-run
untaped --profile staging awx export --kind job-templates --out-dir exported \
  | untaped --profile prod awx apply - --yes

Exports are portable YAML that reference other resources by name. apply creates or updates them in dependency order, so you can keep configuration in git, copy it between controllers, and gate CI on apply --check.

Lint resources

untaped awx lint ./awx-specs --offline     # the documents alone
untaped awx lint --organization Platform   # what the controller holds

On a template naming a project the files lack, and a schedule setting a limit its template ignores, the first reports two rows (--format json for every field) and ends with the summary lint: 2 errors, 0 warnings, exit 3. The rows, trimmed here to their location, rule and message (the table also shows each one's severity and target):

awx-specs/templates.yml#2  awx.missing-reference     project 'web' is not in the batch
awx-specs/templates.yml#4  awx.ignored-launch-field  limit is set, but JobTemplate 'deploy-web' ignores it: ask_limit_on_launch is false

With files, lint checks apply documents before you apply them, resolving references in the batch (--offline) or on the controller too; without, it checks what the controller holds, from a snapshot kept for an hour. Findings share untaped lint's ids, --ignore and exit codes (3 on an error), and a repository can lint its documents offline with untaped lint. untaped agents awx linting lists the rules.

Launch and follow jobs

untaped awx job-templates launch Deploy --organization Default \
  --extra-vars @vars.yml --host-pattern web --follow
untaped awx jobs relaunch 101 --failed-hosts --yes --format pipe \
  | untaped awx jobs wait --stdin
untaped awx jobs logs 101 --tail 50

You get the job's outcome when it finishes, and its log or events when you need to diagnose it.

Test a playbook change

untaped awx test init "Deploy app"
untaped awx test run --scm-branch main --format json > /tmp/baseline.json
# commit and git push the change, then:
untaped awx test validate --scm-branch HEAD
untaped awx test run --scm-branch HEAD --compare /tmp/baseline.json --format json

A suite in the playbook repository launches a template once per case and checks each job against what the case expects. Comparing against the base branch shows regressions, and each failing row names the system that must act, so an environment failure is not blamed on your change.

Reference

untaped agents awx lists every command with its options, the settings, and the guides on selecting and changing resources, export and apply documents, workflow node graphs, launching jobs, linting, writing and reading test suites, test runs at a git ref, and the AWX user an agent works as; the untaped you run generates it.

untaped skills install awx --target claude (or another agent) points your agent at it.

Metadata

Release files for untaped-awx 11.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for untaped-awx 11.1.0
File Size Uploaded Provenance Actions
untaped_awx-11.1.0.tar.gz 322.9 kB With provenance Details for untaped_awx-11.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for untaped-awx 11.1.0
File Interpreter ABI Platform Actions
untaped_awx-11.1.0-py3-none-any.whl Python 3 none any Details for untaped_awx-11.1.0-py3-none-any.whl

Total release size: 757.9 kB

Release files / untaped_awx-11.1.0.tar.gz

Download URL untaped_awx-11.1.0.tar.gz
Size 322.9 kB
Tags Source
SHA-256 checksum
How to use checksums
a8c29efa86c1ba17a5f7872ddf2a7e9f58e51215899c987f59824ac2cb481eab
BLAKE2b-256 checksum
How to use checksums
1314cafc1ede83858816ecf4a75b17918aaaebefb9858fb9edb0e23d85589f9f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Release files / untaped_awx-11.1.0-py3-none-any.whl

Download URL untaped_awx-11.1.0-py3-none-any.whl
Size 435.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
21fc48bdda4d02f2b36ed1fc3cf24a1a4755916af608d2cbae922c75211dff9d
BLAKE2b-256 checksum
How to use checksums
d075b417ffa0f9609471c4f543e51ba261e2013186703f164fba488093826c07
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

Security for untaped-awx 11.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for untaped_awx-11.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 23, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page