An Ansible inventory tool.
JavaScript Python CSS
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
test
.gitignore
API.asciidoc
LICENSE.md
README.asciidoc
config.cfg
inventory.py
run.py

README.asciidoc

jetfire

An Ansible inventory tool.

Overview

Jetfire is a web based Flask application with a MongoDB backend to manage an Ansible inventory.

It is currently in early stage and lacks fearures and proper documentation. It currently has the following features:

  • add host with vars and add it to available groups

  • add groups with vars and available members

  • get host info (hostvars)

  • get group info (groupvars and members)

  • edit host vars and groups

  • edit groups vars and hosts

  • remove hosts and groups from the inventory

Usage

You’ll need a running MongoDB instance that you will use for your inventory. By default an "ansible" db is created (unless you configure a differend name in the config file) with currently following collections

  • hosts

  • groups

clone the repository and edit the config.cfg file in the app folder (specify mongodb server, port and database). Then run python app.py to launch the application. Open a browser and point to http://<yourhost>:5000

The inventory.py script is used as inventory script. It must be edited to point to the same MongoDB instance and database to function.

Required Python packages

  • pip install flask-paginate

API testing

curl http://<host>:<port>/api/v1.0/hosts -H "Content-Type: application/json" -d @host.json -X POST -v

API documention can be found here