Skip to main content

Anisible Role Quality Assurance

Project description

A utility for managing Ansible Roles. Designed to be run inside the roles directory.

Inspired by [ansigenome](https://github.com/nickjj/ansigenome/)

Host Depends

depends functionality requires on graphviz to be installed.

Features

### Stats

ansiqa stats

Prints stats about roles. With no arguments, stats will print the following for each:

  • Number of tasks

  • Number of variables set

  • Number of defaults set

  • If a README.* file is present

  • If meta/main.yml is present

  • If extras/main.yml is present (used by Ansiqa to generate READMEs)

### Meta

ansiqa meta

Generate base meta files for roles from values in the AnsiQA config file.

### Extra

ansiqa extra

Generate base extra files for roles from values in the AnsiQA config file, stored in extra/main.yml. These values are used by AnsiQA to generate READMEs.

### Docs

ansiqa docs

Generate a README by filling a Jinja2 template. The readme template must end in .j2, and can be put in the following places:

  • Specified in the AnsiQA config file, by the root level token template

  • Found in the current working directory, matching the README.*.j2 glob

  • Found in the user’s home directory, matching the README.*.j2 glob

This template is fed a role dictionary, which contains the following tokens

` 'name': the role name 'path': the role absolute path 'defaults': the defaults provided by the role, formatted as yaml 'files': a list of files by the role 'handlers': a list of handlers provided by the role 'meta': a dict containing the values in meta/main.yml 'tasks': a list of tasks provided by the role 'templates': a list of templates provided by the role 'tests': a boolean value, if the tests directory exists 'vars': the variables provided by the role, formatted as yaml 'extra': a dict containing the values in extra/main.yml `

### Depends

ansiqa depends

Dependency introspection. With no arguments, depends prints the number of dependencies each role has, the number of times each role is depended on, and the “dependency depth” of each role (how long the longest dependency chain is.)

With the –graph flag, ansiqa generates a GraphViz graph to visualize the dependency tree.

Configuration

The configuration file should be a yaml file named .ansiqa and be located either in the current working directory or in the user’s home directory. It can have the following root level tokens

` meta: A dict containing the default values for the meta/main.yml extra: A dict containing the default values for the extra/main.yml template: A string containing the path to the README template, first checking the current working directory for the path, then the home directory, and finally checking it as an absolute path. `

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

ansiqa-0.3.0.tar.gz (6.4 kB view hashes)

Uploaded Source

Built Distribution

ansiqa-0.3.0-py3-none-any.whl (7.6 kB view hashes)

Uploaded Python 3

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