137 lines
4.7 KiB
Django/Jinja
137 lines
4.7 KiB
Django/Jinja
# Official Ansible Product Demos
|
|
|
|
This repo currently under construction and working on a minimal viable demo for testing purposes
|
|
|
|
# Table of contents
|
|
|
|
* [How to use](#how-to-use)
|
|
* [1. Provide login information and choose demo](#1-provide-login-information-and-choose-demo)
|
|
* [2. Run Ansible Playbook](#2-run-ansible-playbook)
|
|
* [Demo Repository](#demo-repository)
|
|
* [Infrastructure Demos](#infrastructure-demos)
|
|
* [Network Demos](#network-demos)
|
|
* [Security Demos](#security-demos)
|
|
* [Developer Demos](#developer-demos)
|
|
* [Contribute](#contribute)
|
|
* [Notes](#notes)
|
|
|
|
# How to use
|
|
|
|
## 1. Provide login information and choose demo
|
|
|
|
- Modify the `choose_demo.yml` file that is included in this repo with the username, password and IP address (or DNS name) of your Ansible Tower
|
|
- Choose the demo name you want from the table below (or choose `all`)
|
|
|
|
## 2. Run Ansible Playbook
|
|
|
|
```
|
|
ansible-playbook playbooks/install_demo.yml -e @choose_demo.yml
|
|
```
|
|
|
|
# Demo Repository
|
|
|
|
This repository currently holds {{hostvars[inventory_hostname].items()|rejectattr('0', 'match', 'ansible_')|selectattr('1.name', 'defined')|sort(attribute='1.name')|count}} demos.
|
|
|
|
## Infrastructure Demos
|
|
<table>
|
|
<tr>
|
|
<th>Demo Name</th>
|
|
<th>Author</th>
|
|
<th>install_demo.yml value</th>
|
|
<th>Description</th>
|
|
<th>Video Walkthrough</th>
|
|
<th>Workshop Types</th>
|
|
</tr>
|
|
{% for key, value in hostvars[inventory_hostname].items()|rejectattr('0', 'match', 'ansible_')|selectattr('1.name', 'defined')|selectattr('1.category', 'match', 'infrastructure$')|sort(attribute='1.name') %}
|
|
<tr>
|
|
<td>{{value.name}}</td>
|
|
<td>{{value.author}}</td>
|
|
<td><pre>demo: {{key}}</pre></td>
|
|
<td>{{value.description}}</td>
|
|
<td>{% if value.video is defined%}<a href="{{ value.video}}">Video Link</a>{% else %}Not available {% endif %}</td>
|
|
<td><ul>{% for workshop in value.workshop_type %}<li>{{workshop}}</li>{% endfor %}</ul></td>
|
|
</tr>
|
|
{% endfor %}
|
|
</table>
|
|
|
|
## Network Demos
|
|
|
|
<table>
|
|
<tr>
|
|
<th>Demo Name</th>
|
|
<th>Author</th>
|
|
<th>install_demo.yml value</th>
|
|
<th>Description</th>
|
|
<th>Video Walkthrough</th>
|
|
<th>Workshop Types</th>
|
|
</tr>
|
|
{% for key, value in hostvars[inventory_hostname].items()|rejectattr('0', 'match', 'ansible_')|selectattr('1.name', 'defined')|selectattr('1.category', 'match', 'network$')|sort(attribute='1.name') %} <tr>
|
|
<td>{{ value.name }}</td>
|
|
<td>{{ value.author }}</td>
|
|
<td><pre>demo: {{key }}</pre></td>
|
|
<td>{{ value.description }}</td>
|
|
<td>{% if value.video is defined %}<a href="{{ value.video }}">Video Link</a>{% else %}Not available {% endif %}</td>
|
|
<td><ul>{% for workshop in value.workshop_type %}<li>{{ workshop }}</li>{% endfor %}</ul></td>
|
|
</tr>
|
|
{% endfor %}
|
|
</table>
|
|
|
|
## Security Demos
|
|
|
|
<table>
|
|
<tr>
|
|
<th>Demo Name</th>
|
|
<th>Author</th>
|
|
<th>install_demo.yml value</th>
|
|
<th>Description</th>
|
|
<th>Video Walkthrough</th>
|
|
<th>Workshop Types</th>
|
|
</tr>
|
|
{% for key, value in hostvars[inventory_hostname].items()|rejectattr('0', 'match', 'ansible_')|selectattr('1.name', 'defined')|selectattr('1.category', 'match', 'security$')|sort(attribute='1.name') %} <tr>
|
|
<td>{{ value.name }}</td>
|
|
<td>{{ value.author }}</td>
|
|
<td><pre>demo: {{ key }}</pre></td>
|
|
<td>{{ value.description }}</td>
|
|
<td>{% if value.video is defined %}<a href="{{ value.video }}">Video Link</a>{% else %}Not available {% endif %}</td>
|
|
<td><ul>{% for workshop in value.workshop_type %}<li>{{ workshop }}</li>{% endfor %}</ul></td>
|
|
</tr>
|
|
{% endfor %}
|
|
</table>
|
|
|
|
## Developer Demos
|
|
|
|
<table>
|
|
<tr>
|
|
<th>Demo Name</th>
|
|
<th>Author</th>
|
|
<th>install_demo.yml value</th>
|
|
<th>Description</th>
|
|
<th>Video Walkthrough</th>
|
|
<th>Workshop Types</th>
|
|
</tr>
|
|
{% for key, value in hostvars[inventory_hostname].items()|rejectattr('0', 'match', 'ansible_')|selectattr('1.name', 'defined')|selectattr('1.category', 'match', 'developer$')|sort(attribute='1.name') %} <tr>
|
|
<td>{{ value.name }}</td>
|
|
<td>{{ value.author }}</td>
|
|
<td><pre>demo: {{ key }}</pre></td>
|
|
<td>{{ value.description }}</td>
|
|
<td>{% if value.video is defined %}<a href="{{ value.video }}">Video Link</a>{% else %}Not available {% endif %}</td>
|
|
<td><ul>{% for workshop in value.workshop_type %}<li>{{ workshop }}</li>{% endfor %}</ul></td>
|
|
</tr>
|
|
{% endfor %}
|
|
</table>
|
|
|
|
|
|
# Contribute
|
|
|
|
please refer to the [contribute.md](docs/contribute.md) documentation included in this collection.
|
|
|
|
# Notes
|
|
|
|
This README.md was auto-generated by Ansible user **{{ ansible_user_id }}** on **{{ ansible_date_time.date }}** with Ansible version **{{ ansible_version.full }}**
|
|
|
|
To generate a README.md, execute the following command
|
|
|
|
```
|
|
ansible-playbook playbooks/generate_readme.yml
|
|
```
|