Ansible content manager
Project description
Mazer
Ansible content manager
A new command-line tool for managing Ansible content.
Expect breaking changes!
Mazer is experimental, and currently only available for tech-preview. Use with lots of caution! It is not intended for use in production environments, nor is it currently intended to replace the ansible-galaxy command-line tool.
If you’re installing Ansible content in a production environment, or need assistance with Ansible, please visit the Ansible Project, or the Ansible docs site.
Docs
For additional documentation on mazer, view the Mazer topic on Ansible Galaxy Docs. Also see the more detailed README at github.
Examples
Installing roles
To install geerlingguy.nginx via galaxy:
$ mazer install geerlingguy.nginx
See mazer github repo for more examples.
Installing Mazer
From source
The source code for mazer lives at https://github.com/ansible/mazer
$ git clone https://github.com/ansible/mazer.git $ cd mazer $ python setup.py install
Or install the requirements via pip:
$ pip install -r requirements.txt
Via pip (from git)
pip install -v git+ssh://git@github.com/ansible/mazer.git
Testing
unit testing
mazer uses pytest for unit tests.
test requirements
To install test requirements, use pip to install the requirements in requirements_test.txt:
pip install -r requirements_test.txt
To run unit tests via tox for default platforms (python 2.6, 2.7, 3.6):
$ tox
via ‘pytest’ directly:
$ pytest tests/
Prerequisites
When installing content from an Ansible Galaxy server, requires Galaxy v3.0+.
Roadmap
To see what we’re working on, and where we’re headed, view the roadmap.
Getting help
Issues welcome! If you find a bug, or have a feature idea, please let us know by opening an issue.
You can also reach out to us on irc.freenode.net in the #ansible-galaxy channel.
Origin of “Mazer”
The name Mazer comes from a character from Ender’s Game, Mazer Rackham, that Wikipedia describes as “the half-Māori captain who singlehandedly stopped the Second Invasion by realizing that the Buggers are a hive mind. Due to his inability to pass on his knowledge, he was forced to spend fifty years at relativistic speeds (eight years to Rackham) so that he could train the next commander — Ender Wiggin.”
A mazer is also a hardwood drinking vessel.
License
History
0.3.0 (2018-11-06)
155 Implement install of things with dep solving (for trad roles and collections).
142 Add support for init of a collection, and make it the default.
139 Add ‘editable’ installs via ‘install -e’ (ala, ‘python setup.py develop’).
133 Add MAZER_CONFIG environment var for specifying config file location.
116 Add a ‘mazer build’ command to build collection artifacts.
126 Finish replacing core data objects with ‘attrs’ based classes.
124 Fix unneeded –roles-path option for init and install commands by removing it.
119 Fix “‘mazer list’ on multi-content repos looks for install_info in the wrong places”.
0.2.1 (2018-08-08)
Add ‘attrs’ dep to setup.py. Update requirements.txt to use setup.py requires.
Add the default logging config to Manifest.in so logging is setup correctly on pip install. Fixes https://github.com/ansible/mazer/issues/114
Fix install if a role name is substring of another role. Fixes https://github.com/ansible/mazer/issues/112
Create and send a X-Request-ID on http requests.
0.2.0 (2018-07-26)
Support new ~/.ansible/content/namespace/reponame/content_type/content_name layout
Create install receipts (.galaxy_install_info) on install of repos and roles.
‘list’ and ‘info’ commands updated.
Now requires and uses ‘attrs’ python module >=18.1.0
0.1.0 (2018-04-18)
First release on PyPI.
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
Built Distribution
Hashes for mazer-0.3.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ddcc6305b1f8e2042d55ab3f09cd576b76f07801b67f90bf1513aea5a80198c |
|
MD5 | 22f7a9a339835c78b80f427b1fb358b4 |
|
BLAKE2b-256 | 8538efbc50dfc5a9a1c7aba96d379b523ea2c464659cfd0fac4eb51fb66e52d3 |