Playable is an Ansible Playbook generator UI developed in MEAN stack using [Yeoman angular-fullstack-generator](https://github.com/angular-fullstack/generator-angular-fullstack) and built using [Docker](https://www.docker.com/).
The tool may be used by an individual or a team to
- Generate Ansible Playbooks
- Easily Search and import roles from Galaxy or Github
- Execute and Test Playbooks (Not available in the publicly hosted version)
- Develop custom modules and test them
- All the above while enforcing Ansible Best Practices
This is a fun project I started working on from my experience working with Ansible an developing custom modules. I think it will help the Ansible community and am looking forward to assistance in developing and maintaining this project.
> Note: This project is in its initial Alpha release. Hence this is only to be used for test purpose and at your own risk.
Try a publicly hosted live demo at [ansible-playable.com](http://www.ansible-playable.com)
> Note: You may create projects and playbooks. But cannot execute or test them. For this you must host a private version of the tool yourself, following instructions below
The easiest way to get started is to use Docker. The latest version of the software is built using docker and is available at [Docker hub](https://hub.docker.com/r/mmumshad/ansible-playable/)
Run the image to get started
```angular2html
docker run -p 80:8080 mmumshad/ansible-playable
```
Remember to use port mapping to map http port to external host.
The tool currently supports the following features and functionality:
- Ansible Engine
- Add one Ansible Engine/s (Ansible Controller) per project
- Test connectivity to Ansible Engine
- Identify Ansible version
- Ansible Projects
- Create/Edit/Delete Ansible Projects
- Define Ansible Inventory files and variables
- View and edit project files
- Create Playbooks
- Create Plays and Tasks
- List all available modules
- Show module descriptions and parameters. Automatically identify parameters from documentation. (Provided the module was documented correctly in the standard format)
- List defined variables and values from inventory files as module parameters
- Search Roles from Github/Ansible Galaxy
- Show ReadMe file of roles in HTML format
- Import Roles from Github/Ansible Galaxy
- Playbook Execution
- Execute playbooks - individual or full
- Select custom verbose level
- Select custom hosts
- View Ansible output in the UI
- Test imported Roles
- View previous execution results
- Custom Modules
- Auto generate custom module template as per best practice
- Auto update documentation and parameter section based on user input
- Provides default properties and available types in UI