Skip to main content

A CLI tool for scaffolding Ansible Content.

Project description

PyPI - Status PyPI - Version PyPI - Python Version License Ansible Code of Conduct GitHub issues

ansible-creator

A CLI tool for scaffolding all your Ansible Content.

Installation

$ pip install ansible-creator

Usage

$ ansible-creator --help
usage: ansible-creator [-h] [--version] {init} ...

Tool to scaffold Ansible Content. Get started by looking at the help text.

optional arguments:
  -h, --help  show this help message and exit
  --version   Print ansible-creator version and exit.

Commands:
  {init}      The subcommand to invoke.
    init      Initialize an Ansible Collection.

Initialize an Ansible Collection skeleton with 'init'

$ ansible-creator init --help
usage: ansible-creator init [-h] [--na] [--lf LOG_FILE] [--ll {notset,debug,info,warning,error,critical}] [--la {true,false}] [--json] [-v]
                            [--init-path INIT_PATH] [--force]
                            collection

Creates the skeleton framework of an Ansible collection.

positional arguments:
  collection            The collection name in the format ``<namespace>.<collection>``.

optional arguments:
  -h, --help            show this help message and exit
  --na, --no-ansi       Disable the use of ANSI codes for terminal color.
  --lf LOG_FILE, --log-file <file> LOG_FILE
                        Log file to write to.
  --ll {notset,debug,info,warning,error,critical}, --log-level <level> {notset,debug,info,warning,error,critical}
                        Log level for file output.
  --la {true,false}, --log-append <bool> {true,false}
                        Append to log file.
  --json                Output messages as JSON
  -v, --verbose         Give more Cli output. Option is additive, and can be used up to 3 times.
  --init-path INIT_PATH
                        The path in which the skeleton collection will be created. The default is the current working directory.
  --force               Force re-initialize the specified directory as an Ansible collection.
$ ansible-creator init testns.testname --init-path $HOME/collections/ansible_collections
    Note: collection testns.testname created at /home/ansible-dev/collections/ansible_collections

Running the above command generates an Ansible Collection with the following structure:

$ tree -lla /home/ansible-dev/collections/ansible_collections
.
├── CHANGELOG.rst
├── changelogs
│   └── config.yaml
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING
├── docs
│   ├── docsite
│   │   └── links.yml
│   └── .keep
├── extensions
│   ├── eda
│   │   └── rulebooks
│   │       └── rulebook.yml
│   └── molecule
│       ├── integration_hello_world
│       │   └── molecule.yml
│       └── utils
│           ├── playbooks
│           │   ├── converge.yml
│           │   └── noop.yml
│           └── vars
│               └── vars.yml
├── galaxy.yml
├── .github
│   └── workflows
│       └── test.yml
├── .isort.cfg
├── LICENSE
├── MAINTAINERS
├── meta
│   └── runtime.yml
├── plugins
│   ├── action
│   │   └── __init__.py
│   ├── cache
│   │   └── __init__.py
│   ├── filter
│   │   ├── hello_world.py
│   │   └── __init__.py
│   ├── inventory
│   │   └── __init__.py
│   ├── modules
│   │   └── __init__.py
│   ├── module_utils
│   │   └── __init__.py
│   ├── plugin_utils
│   │   └── __init__.py
│   ├── sub_plugins
│   │   └── __init__.py
│   └── test
│       └── __init__.py
├── .pre-commit-config.yaml
├── .prettierignore
├── pyproject.toml
├── README.md
├── tests
│   ├── .gitignore
│   ├── integration
│   │   ├── __init__.py
│   │   ├── targets
│   │   │   └── hello_world
│   │   │       └── tasks
│   │   │           └── main.yml
│   │   └── test_integration.py
│   └── unit
│       └── .keep
└── .vscode
    └── extensions.json

Upcoming features

  • Scaffold Ansible plugins of your choice with the create action. Switch to the create branch and try it out!

Licensing

GNU General Public License v3.0 or later.

See LICENSE to see the full text.

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-creator-0.0.1a3.tar.gz (46.7 kB view details)

Uploaded Source

Built Distribution

ansible_creator-0.0.1a3-py3-none-any.whl (49.3 kB view details)

Uploaded Python 3

File details

Details for the file ansible-creator-0.0.1a3.tar.gz.

File metadata

  • Download URL: ansible-creator-0.0.1a3.tar.gz
  • Upload date:
  • Size: 46.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for ansible-creator-0.0.1a3.tar.gz
Algorithm Hash digest
SHA256 62d8fa436dd430176f8cf993d4b4f4d5e3db689ddc9ef50f96162f4bee96653b
MD5 12abfe8969f37a7b11f7e24b76ceb870
BLAKE2b-256 02c54b1a4c520e1965ff036092d164a2025e1f6ddcfac916ff2081d83b07ae7f

See more details on using hashes here.

File details

Details for the file ansible_creator-0.0.1a3-py3-none-any.whl.

File metadata

File hashes

Hashes for ansible_creator-0.0.1a3-py3-none-any.whl
Algorithm Hash digest
SHA256 8bbef9a82f090f320b4fe7f1c5e2024588a6d2e4f513414823d2675080cee3de
MD5 fd99dc1b4f2b461397e8d4b47a1a3400
BLAKE2b-256 c45ad02c55af5e8d3c30468caaf5bd88ba31312e7aa1051d1943ce3f65f8bfd2

See more details on using hashes here.

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