syncing source to git
This commit is contained in:
15
roles/developer_report/meta/main.yml
Normal file
15
roles/developer_report/meta/main.yml
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
galaxy_info:
|
||||
role_name: developer_report
|
||||
author: Sean Cavanaugh
|
||||
description: This role create an HTML report using Ansible Facts
|
||||
company: Red Hat
|
||||
|
||||
|
||||
license: license (GPLv2, CC-BY, etc)
|
||||
|
||||
min_ansible_version: 2.9
|
||||
|
||||
galaxy_tags: []
|
||||
|
||||
dependencies: []
|
||||
@@ -1,9 +1,10 @@
|
||||
---
|
||||
- name: create HTML report
|
||||
become: yes
|
||||
become: true
|
||||
template:
|
||||
src: report.j2
|
||||
dest: "{{ file_path }}"
|
||||
|
||||
- name: DISPLAY LINK TO INVENTORY REPORT
|
||||
debug:
|
||||
msg: "Please go to http://{{ansible_host}}/report"
|
||||
msg: "Please go to http://{{ ansible_host }}/report"
|
||||
|
||||
15
roles/generate_readme/meta/main.yml
Normal file
15
roles/generate_readme/meta/main.yml
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
galaxy_info:
|
||||
role_name: generate_readme
|
||||
author: Sean Cavanaugh
|
||||
description: This role generates a readme for the github/ansible/product-demos
|
||||
company: Red Hat
|
||||
|
||||
|
||||
license: license (GPLv2, CC-BY, etc)
|
||||
|
||||
min_ansible_version: 2.9
|
||||
|
||||
galaxy_tags: []
|
||||
|
||||
dependencies: []
|
||||
23
roles/install_demo/README.md
Normal file
23
roles/install_demo/README.md
Normal file
@@ -0,0 +1,23 @@
|
||||
# install_demo role
|
||||
|
||||
This role will install demos into your specified Ansible Tower environment. Here is an example of using this role:
|
||||
|
||||
```
|
||||
---
|
||||
- name: setup deploy application demo
|
||||
hosts: localhost
|
||||
gather_facts: false
|
||||
connection: local
|
||||
|
||||
tasks:
|
||||
|
||||
- name: install demo
|
||||
include_role:
|
||||
name: "install_demo"
|
||||
```
|
||||
|
||||
Please refer to the master list in the main [README.md]()../../README.md).
|
||||
|
||||
# required variables
|
||||
|
||||
You must specify all the variables in the [choose_demo.yml](../../choose_demo.yml) example.
|
||||
15
roles/install_demo/meta/main.yml
Normal file
15
roles/install_demo/meta/main.yml
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
galaxy_info:
|
||||
role_name: install_demo
|
||||
author: Sean Cavanaugh
|
||||
description: |
|
||||
This role will install demos into your specified Ansible Tower environment.
|
||||
company: Red Hat
|
||||
|
||||
|
||||
license: license (GPLv2, CC-BY, etc)
|
||||
|
||||
min_ansible_version: 2.9
|
||||
|
||||
galaxy_tags: []
|
||||
dependencies: []
|
||||
@@ -1,51 +1,54 @@
|
||||
---
|
||||
- name: add tower project
|
||||
tower_project:
|
||||
name: "{{hostvars.localhost[demo].project.name}}"
|
||||
description: "{{hostvars.localhost[demo].project.description}}"
|
||||
organization: "{{hostvars.localhost[demo].project.organization}}"
|
||||
scm_type: "{{hostvars.localhost[demo].project.scm_type}}"
|
||||
scm_url: "{{hostvars.localhost[demo].project.scm_url}}"
|
||||
tower_username: "{{my_tower_username}}"
|
||||
tower_password: "{{my_tower_password}}"
|
||||
tower_host: "{{my_tower_host}}"
|
||||
validate_certs: no
|
||||
name: "{{ vars[demo].project.name }}"
|
||||
description: "{{ vars[demo].project.description }}"
|
||||
organization: "{{ vars[demo].project.organization }}"
|
||||
scm_type: "{{ vars[demo].project.scm_type }}"
|
||||
scm_url: "{{ vars[demo].project.scm_url }}"
|
||||
tower_username: "{{ my_tower_username }}"
|
||||
tower_password: "{{ my_tower_password }}"
|
||||
tower_host: "{{ my_tower_host }}"
|
||||
validate_certs: false
|
||||
|
||||
- name: add single job template without survey
|
||||
tower_job_template:
|
||||
name: "{{hostvars.localhost[demo].name}}"
|
||||
description: "{{hostvars.localhost[demo].description}}"
|
||||
job_type: "{{hostvars.localhost[demo].job_type}}"
|
||||
inventory: "{{hostvars.localhost[demo].inventory}}"
|
||||
project: "{{hostvars.localhost[demo].project.name}}"
|
||||
playbook: "{{hostvars.localhost[demo].playbook}}"
|
||||
fact_caching_enabled: "{{hostvars.localhost[demo].fact_caching_enabled | default('no')}}"
|
||||
credential: "{{hostvars.localhost[demo].credential}}"
|
||||
survey_enabled: "{{hostvars.localhost[demo].survey_enabled}}"
|
||||
tower_username: "{{my_tower_username}}"
|
||||
tower_password: "{{my_tower_password}}"
|
||||
tower_host: "{{my_tower_host}}"
|
||||
validate_certs: no
|
||||
name: "{{ vars[demo].name }}"
|
||||
description: "{{ vars[demo].description }}"
|
||||
job_type: "{{ vars[demo].job_type }}"
|
||||
inventory: "{{ vars[demo].inventory}}"
|
||||
project: "{{ vars[demo].project.name }}"
|
||||
playbook: "{{ vars[demo].playbook }}"
|
||||
fact_caching_enabled: "{{ vars[demo].fact_caching_enabled | default('false') }}"
|
||||
credential: "{{ vars[demo].credential }}"
|
||||
survey_enabled: "{{ vars[demo].survey_enabled }}"
|
||||
tower_username: "{{ my_tower_username }}"
|
||||
tower_password: "{{ my_tower_password }}"
|
||||
tower_host: "{{ my_tower_host }}"
|
||||
validate_certs: false
|
||||
when:
|
||||
- workshop_type in hostvars.localhost[demo].workshop_type
|
||||
- not hostvars.localhost[demo].survey_enabled
|
||||
- workshop_type in vars[demo].workshop_type
|
||||
- not vars[demo].survey_enabled
|
||||
register: add_project
|
||||
until: add_project is not failed
|
||||
retries: 5
|
||||
|
||||
- name: add single job template with survey
|
||||
tower_job_template:
|
||||
name: "{{hostvars.localhost[demo].name}}"
|
||||
description: "{{hostvars.localhost[demo].description}}"
|
||||
job_type: "{{hostvars.localhost[demo].job_type}}"
|
||||
inventory: "{{hostvars.localhost[demo].inventory}}"
|
||||
project: "{{hostvars.localhost[demo].project.name}}"
|
||||
playbook: "{{hostvars.localhost[demo].playbook}}"
|
||||
fact_caching_enabled: "{{hostvars.localhost[demo].fact_caching_enabled | default('no')}}"
|
||||
credential: "{{hostvars.localhost[demo].credential}}"
|
||||
survey_enabled: "{{hostvars.localhost[demo].survey_enabled}}"
|
||||
survey_spec: "{{hostvars.localhost[demo].survey_spec}}"
|
||||
tower_username: "{{my_tower_username}}"
|
||||
tower_password: "{{my_tower_password}}"
|
||||
tower_host: "{{my_tower_host}}"
|
||||
validate_certs: no
|
||||
name: "{{ vars[demo].name }}"
|
||||
description: "{{ vars[demo].description }}"
|
||||
job_type: "{{ vars[demo].job_type }}"
|
||||
inventory: "{{ vars[demo].inventory}}"
|
||||
project: "{{ vars[demo].project.name }}"
|
||||
playbook: "{{ vars[demo].playbook }}"
|
||||
fact_caching_enabled: "{{ vars[demo].fact_caching_enabled | default('false') }}"
|
||||
credential: "{{ vars[demo].credential }}"
|
||||
survey_enabled: "{{ vars[demo].survey_enabled }}"
|
||||
survey_spec: "{{ vars[demo].survey_spec}}"
|
||||
tower_username: "{{ my_tower_username }}"
|
||||
tower_password: "{{ my_tower_password }}"
|
||||
tower_host: "{{ my_tower_host }}"
|
||||
validate_certs: false
|
||||
when:
|
||||
- workshop_type in hostvars.localhost[demo].workshop_type
|
||||
- hostvars.localhost[demo].survey_enabled
|
||||
- workshop_type in vars[demo].workshop_type
|
||||
- vars[demo].survey_enabled
|
||||
|
||||
@@ -1,56 +1,64 @@
|
||||
---
|
||||
- name: block for job template (non-workflow)
|
||||
- name: block for job template loop
|
||||
block:
|
||||
- name: add tower project
|
||||
- name: "add tower project job_template_loop.yml"
|
||||
tower_project:
|
||||
name: "{{item.value.project.name}}"
|
||||
description: "{{item.value.project.description}}"
|
||||
organization: "{{item.value.project.organization}}"
|
||||
scm_type: "{{item.value.project.scm_type}}"
|
||||
scm_url: "{{item.value.project.scm_url}}"
|
||||
tower_username: "{{my_tower_username}}"
|
||||
tower_password: "{{my_tower_password}}"
|
||||
tower_host: "{{my_tower_host}}"
|
||||
validate_certs: no
|
||||
name: "{{ item.value.project.name }}"
|
||||
description: "{{ item.value.project.description }}"
|
||||
organization: "{{ item.value.project.organization }}"
|
||||
scm_type: "{{ item.value.project.scm_type }}"
|
||||
scm_url: "{{ item.value.project.scm_url }}"
|
||||
tower_username: "{{ my_tower_username }}"
|
||||
tower_password: "{{ my_tower_password }}"
|
||||
tower_host: "{{ my_tower_host }}"
|
||||
validate_certs: false
|
||||
when:
|
||||
- workshop_type in item.value.workshop_type
|
||||
|
||||
- name: "add job template {{item.value.name}} without survey"
|
||||
- name: "add job template {{ item.value.name }} without survey job_template_loop.yml"
|
||||
tower_job_template:
|
||||
name: "{{item.value.name}}"
|
||||
description: "{{item.value.description}}"
|
||||
job_type: "{{item.value.job_type}}"
|
||||
inventory: "{{item.value.inventory}}"
|
||||
project: "{{item.value.project.name}}"
|
||||
playbook: "{{item.value.playbook}}"
|
||||
fact_caching_enabled: "{{item.value.fact_caching_enabled | default('no')}}"
|
||||
credential: "{{item.value.credential}}"
|
||||
survey_enabled: "{{item.value.survey_enabled}}"
|
||||
tower_username: "{{my_tower_username}}"
|
||||
tower_password: "{{my_tower_password}}"
|
||||
tower_host: "{{my_tower_host}}"
|
||||
validate_certs: no
|
||||
name: "{{ item.value.name }}"
|
||||
description: "{{ item.value.description }}"
|
||||
job_type: "{{ item.value.job_type }}"
|
||||
inventory: "{{ item.value.inventory}}"
|
||||
project: "{{ item.value.project.name }}"
|
||||
playbook: "{{ item.value.playbook}}"
|
||||
fact_caching_enabled: "{{ item.value.fact_caching_enabled | default('false')}}"
|
||||
credential: "{{ item.value.credential }}"
|
||||
survey_enabled: "{{ item.value.survey_enabled }}"
|
||||
tower_username: "{{ my_tower_username }}"
|
||||
tower_password: "{{ my_tower_password }}"
|
||||
tower_host: "{{ my_tower_host }}"
|
||||
validate_certs: false
|
||||
when:
|
||||
- workshop_type in item.value.workshop_type
|
||||
- not item.value.survey_enabled
|
||||
register: add_project
|
||||
until: add_project is not failed
|
||||
retries: 5
|
||||
|
||||
- name: "add job template {{item.value.name}} with survey"
|
||||
- name: "add job template {{ item.value.name }} with survey"
|
||||
tower_job_template:
|
||||
name: "{{item.value.name}}"
|
||||
description: "{{item.value.description}}"
|
||||
job_type: "{{item.value.job_type}}"
|
||||
inventory: "{{item.value.inventory}}"
|
||||
project: "{{item.value.project.name}}"
|
||||
playbook: "{{item.value.playbook}}"
|
||||
fact_caching_enabled: "{{item.value.fact_caching_enabled | default('no')}}"
|
||||
credential: "{{item.value.credential}}"
|
||||
survey_enabled: "{{item.value.survey_enabled}}"
|
||||
survey_spec: "{{item.value.survey_spec}}"
|
||||
tower_username: "{{my_tower_username}}"
|
||||
tower_password: "{{my_tower_password}}"
|
||||
tower_host: "{{my_tower_host}}"
|
||||
validate_certs: no
|
||||
name: "{{ item.value.name }}"
|
||||
description: "{{ item.value.description }}"
|
||||
job_type: "{{ item.value.job_type }}"
|
||||
inventory: "{{ item.value.inventory}}"
|
||||
project: "{{ item.value.project.name }}"
|
||||
playbook: "{{ item.value.playbook}}"
|
||||
fact_caching_enabled: "{{ item.value.fact_caching_enabled | default('false') }}"
|
||||
credential: "{{ item.value.credential }}"
|
||||
survey_enabled: "{{ item.value.survey_enabled }}"
|
||||
survey_spec: "{{ item.value.survey_spec}}"
|
||||
tower_username: "{{ my_tower_username }}"
|
||||
tower_password: "{{ my_tower_password }}"
|
||||
tower_host: "{{ my_tower_host }}"
|
||||
validate_certs: false
|
||||
when:
|
||||
- workshop_type in item.value.workshop_type
|
||||
- item.value.survey_enabled
|
||||
register: add_project
|
||||
until: add_project is not failed
|
||||
retries: 5
|
||||
when:
|
||||
- item.value.workflow is not defined or not item.value.workflow
|
||||
|
||||
@@ -59,3 +67,4 @@
|
||||
when:
|
||||
- item.value.workflow is defined
|
||||
- item.value.workflow
|
||||
- workshop_type in item.value.workshop_type
|
||||
|
||||
@@ -1,22 +1,37 @@
|
||||
---
|
||||
- name: set facts from role vars
|
||||
set_fact:
|
||||
demo_list: "{{(dict(vars|dictsort|rejectattr('0', 'match', 'ansible_')|selectattr('1.name', 'defined'))|dict2items)|map(attribute='key')|list}}"
|
||||
|
||||
- name: provide info to terminal window
|
||||
debug:
|
||||
msg: "install {{demo}} on {{my_tower_host}}"
|
||||
msg:
|
||||
- "install {{ vars.demo }} on {{ my_tower_host }}"
|
||||
- "available demos are: {{demo_list}}"
|
||||
|
||||
- name: make sure demo is a valid demo
|
||||
assert:
|
||||
that:
|
||||
- vars.demo is defined
|
||||
- vars.demo in demo_list or vars.demo == "all"
|
||||
msg:
|
||||
- "demo must be defined and be one of: {{demo_list}}"
|
||||
- "full list can be found on https://github.com/ansible/product-demos"
|
||||
|
||||
- name: install all job templates
|
||||
include_tasks: job_template_loop.yml
|
||||
loop: "{{dict(hostvars[inventory_hostname]|dictsort|rejectattr('0', 'match', 'ansible_')|selectattr('1.name', 'defined'))|dict2items}}"
|
||||
loop: "{{ dict(vars|dictsort|rejectattr('0', 'match', 'ansible_')|selectattr('1.name', 'defined'))|dict2items }}"
|
||||
when: demo == "all"
|
||||
|
||||
- name: install single job template
|
||||
include_tasks: job_template.yml
|
||||
when:
|
||||
- demo != "all"
|
||||
- hostvars[inventory_hostname][demo].workflow is not defined or not hostvars[inventory_hostname][demo].workflow
|
||||
- vars[demo].workflow is not defined or not vars[demo].workflow
|
||||
|
||||
- name: install single workflow
|
||||
include_tasks: workflow.yml
|
||||
when:
|
||||
- demo != "all"
|
||||
- hostvars[inventory_hostname][demo].workflow is defined
|
||||
- hostvars[inventory_hostname][demo].workflow
|
||||
- vars[demo].workflow is defined
|
||||
- vars[demo].workflow
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
---
|
||||
#these tasks will install a workflow
|
||||
# these tasks will install a workflow
|
||||
|
||||
- name: "install all job templates in relation to workflow {{hostvars[inventory_hostname][demo].name}}"
|
||||
- name: "install all job templates in relation to workflow {{ hostvars[inventory_hostname][demo].name }}"
|
||||
include_tasks: add_job_template.yml
|
||||
loop: "{{hostvars[inventory_hostname][demo].job_templates|dict2items}}"
|
||||
loop: "{{ hostvars[inventory_hostname][demo].job_templates|dict2items }}"
|
||||
|
||||
- name: "install workflow template {{hostvars[inventory_hostname][demo].name}}"
|
||||
- name: "install workflow template {{ hostvars[inventory_hostname][demo].name }}"
|
||||
tower_workflow_template:
|
||||
name: "{{hostvars[inventory_hostname][demo].name}}"
|
||||
description: "{{hostvars[inventory_hostname][demo].description}}"
|
||||
organization: "{{hostvars[inventory_hostname][demo].organization}}"
|
||||
schema: "{{ hostvars[inventory_hostname][demo].schema}}"
|
||||
tower_username: "{{my_tower_username}}"
|
||||
tower_password: "{{my_tower_password}}"
|
||||
tower_host: "{{my_tower_host}}"
|
||||
validate_certs: no
|
||||
name: "{{ hostvars[inventory_hostname][demo].name }}"
|
||||
description: "{{ hostvars[inventory_hostname][demo].description }}"
|
||||
organization: "{{ hostvars[inventory_hostname][demo].organization }}"
|
||||
schema: "{{ hostvars[inventory_hostname][demo].schema }}"
|
||||
tower_username: "{{ my_tower_username }}"
|
||||
tower_password: "{{ my_tower_password }}"
|
||||
tower_host: "{{ my_tower_host }}"
|
||||
validate_certs: false
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
---
|
||||
- name: "INSIDE LOOP - install all job templates in relation to workflow {{item.value.name}}"
|
||||
- name: "INSIDE LOOP - install all job templates in relation to workflow {{ item.value.name }}"
|
||||
include_tasks: job_template_loop.yml
|
||||
loop: "{{item.value.job_templates|dict2items}}"
|
||||
loop: "{{ item.value.job_templates|dict2items}}"
|
||||
|
||||
- name: "INSIDE LOOP - install workflow template {{item.value.name}}"
|
||||
- name: "INSIDE LOOP - install workflow template {{ item.value.name }}"
|
||||
tower_workflow_template:
|
||||
name: "{{item.value.name}}"
|
||||
description: "{{item.value.description}}"
|
||||
organization: "{{item.value.organization}}"
|
||||
schema: "{{item.value.schema}}"
|
||||
tower_username: "{{my_tower_username}}"
|
||||
tower_password: "{{my_tower_password}}"
|
||||
tower_host: "{{my_tower_host}}"
|
||||
validate_certs: no
|
||||
name: "{{ item.value.name }}"
|
||||
description: "{{ item.value.description }}"
|
||||
organization: "{{ item.value.organization }}"
|
||||
schema: "{{ item.value.schema}}"
|
||||
tower_username: "{{my_tower_username }}"
|
||||
tower_password: "{{my_tower_password }}"
|
||||
tower_host: "{{my_tower_host }}"
|
||||
validate_certs: false
|
||||
|
||||
37
roles/install_demo/vars/main/01_deploy_application.yml
Normal file
37
roles/install_demo/vars/main/01_deploy_application.yml
Normal file
@@ -0,0 +1,37 @@
|
||||
---
|
||||
deploy_application:
|
||||
author: "Sean Cavanaugh"
|
||||
category: infrastructure
|
||||
name: "Deploy Application (survey)"
|
||||
description: "install yum applications on Linux with a survey"
|
||||
job_type: "run"
|
||||
inventory: "Workshop Inventory"
|
||||
playbook: "playbooks/01_deploy_application.yml"
|
||||
credential: "Workshop Credential"
|
||||
survey_enabled: false
|
||||
survey_spec:
|
||||
name: Deploy application survey
|
||||
description: Which application do you want to install?
|
||||
spec:
|
||||
- type: multiplechoice
|
||||
question_name: Select a command you would like to execute
|
||||
question_description: select the application
|
||||
variable: application
|
||||
required: true
|
||||
default: httpd
|
||||
choices:
|
||||
- httpd
|
||||
- nginx
|
||||
- htop
|
||||
- gdb
|
||||
video: "https://www.youtube.com/watch?v=pU8ZgSBuEJw&list=PLdu06OJoEf2bp-PNtxPP_2n7Avkax8TED"
|
||||
project:
|
||||
name: "Ansible official demo project"
|
||||
description: "prescriptive demos from Red Hat Management Buisness Unit"
|
||||
organization: "Default"
|
||||
scm_type: git
|
||||
scm_url: "https://github.com/ansible/product-demos"
|
||||
workshop_type:
|
||||
- f5
|
||||
- rhel
|
||||
- rhel_90
|
||||
29
roles/install_demo/vars/main/02_patching.yml
Normal file
29
roles/install_demo/vars/main/02_patching.yml
Normal file
@@ -0,0 +1,29 @@
|
||||
---
|
||||
patching:
|
||||
author: "Will Tome"
|
||||
category: infrastructure
|
||||
name: "SERVER / Patching"
|
||||
description: "patching for Linux servers"
|
||||
job_type: "run"
|
||||
inventory: "Workshop Inventory"
|
||||
playbook: "playbooks/02_patching.yml"
|
||||
credential: "Workshop Credential"
|
||||
survey_enabled: true
|
||||
survey_spec:
|
||||
name: ''
|
||||
description: ''
|
||||
spec:
|
||||
- question_name: 'Enter host to configure'
|
||||
type: text
|
||||
variable: HOSTS
|
||||
required: false
|
||||
project:
|
||||
name: "Ansible official demo project"
|
||||
description: "prescriptive demos from Red Hat Management Buisness Unit"
|
||||
organization: "Default"
|
||||
scm_type: git
|
||||
scm_url: "https://github.com/ansible/product-demos"
|
||||
workshop_type:
|
||||
- f5
|
||||
- rhel
|
||||
- rhel_90
|
||||
57
roles/install_demo/vars/main/03_hardening.yml
Normal file
57
roles/install_demo/vars/main/03_hardening.yml
Normal file
@@ -0,0 +1,57 @@
|
||||
---
|
||||
hardening:
|
||||
author: "Will Tome"
|
||||
category: security
|
||||
name: "SERVER / Hardening"
|
||||
description: "hardening for Linux servers"
|
||||
job_type: "run"
|
||||
inventory: "Workshop Inventory"
|
||||
playbook: "playbooks/03_hardening.yml"
|
||||
credential: "Workshop Credential"
|
||||
survey_enabled: true
|
||||
survey_spec:
|
||||
name: ''
|
||||
description: ''
|
||||
spec:
|
||||
- question_name: 'Enter host to configure'
|
||||
type: text
|
||||
variable: HOSTS
|
||||
required: false
|
||||
- question_name: Configure Firewall?
|
||||
type: multiplechoice
|
||||
variable: harden_firewall
|
||||
required: false
|
||||
choices:
|
||||
- 'Yes'
|
||||
- 'No'
|
||||
- question_name: Configure Time?
|
||||
type: multiplechoice
|
||||
variable: harden_time
|
||||
required: false
|
||||
choices:
|
||||
- 'Yes'
|
||||
- 'No'
|
||||
- question_name: Harden SSH?
|
||||
type: multiplechoice
|
||||
variable: harden_ssh
|
||||
required: false
|
||||
choices:
|
||||
- 'Yes'
|
||||
- 'No'
|
||||
- question_name: PCI Baseline?
|
||||
type: multiplechoice
|
||||
variable: harden_pci
|
||||
required: false
|
||||
choices:
|
||||
- 'Yes'
|
||||
- 'No'
|
||||
project:
|
||||
name: "Ansible official demo project"
|
||||
description: "prescriptive demos from Red Hat Management Buisness Unit"
|
||||
organization: "Default"
|
||||
scm_type: git
|
||||
scm_url: "https://github.com/ansible/product-demos"
|
||||
workshop_type:
|
||||
- f5
|
||||
- rhel
|
||||
- rhel_90
|
||||
23
roles/install_demo/vars/main/04_scan_facts.yml
Normal file
23
roles/install_demo/vars/main/04_scan_facts.yml
Normal file
@@ -0,0 +1,23 @@
|
||||
---
|
||||
fact_scan:
|
||||
author: "Will Tome"
|
||||
category: infrastructure
|
||||
name: "SERVER / Fact Scan"
|
||||
description: "scan facts for Linux and Windows systems"
|
||||
job_type: "run"
|
||||
inventory: "Workshop Inventory"
|
||||
playbook: scan_facts.yml
|
||||
credential: "Workshop Credential"
|
||||
survey_enabled: false
|
||||
fact_caching_enabled: true
|
||||
project:
|
||||
name: "Ansible official awx-facts-playbooks project"
|
||||
description: "playbooks to support fact scanning in Ansible Tower"
|
||||
organization: "Default"
|
||||
scm_type: git
|
||||
scm_url: "https://github.com/ansible/awx-facts-playbooks.git"
|
||||
workshop_type:
|
||||
- f5
|
||||
- rhel
|
||||
- windows
|
||||
- rhel_90
|
||||
47
roles/install_demo/vars/main/05_grant_sudo.yml
Normal file
47
roles/install_demo/vars/main/05_grant_sudo.yml
Normal file
@@ -0,0 +1,47 @@
|
||||
---
|
||||
grant_sudo:
|
||||
author: "Will Tome"
|
||||
category: infrastructure
|
||||
name: "SERVER / Grant Sudo"
|
||||
description: "grant sudo privledges for specified time via survey"
|
||||
job_type: "run"
|
||||
inventory: "Workshop Inventory"
|
||||
playbook: playbooks/05_grant_sudo.yml
|
||||
credential: "Workshop Credential"
|
||||
survey_enabled: true
|
||||
survey_spec:
|
||||
name: ''
|
||||
description: ''
|
||||
spec:
|
||||
- question_name: 'Enter host to configure'
|
||||
type: text
|
||||
variable: HOSTS
|
||||
required: false
|
||||
- question_name: Username
|
||||
type: text
|
||||
variable: sudo_user
|
||||
required: true
|
||||
- question_name: Time
|
||||
type: integer
|
||||
variable: sudo_count
|
||||
required: true
|
||||
default: 10
|
||||
- question_name: Units
|
||||
type: multiplechoice
|
||||
variable: harden_ssh
|
||||
required: true
|
||||
choices:
|
||||
- 'minutes'
|
||||
- 'hours'
|
||||
- 'days'
|
||||
default: minutes
|
||||
project:
|
||||
name: "Ansible official demo project"
|
||||
description: "prescriptive demos from Red Hat Management Buisness Unit"
|
||||
organization: "Default"
|
||||
scm_type: git
|
||||
scm_url: "https://github.com/ansible/product-demos"
|
||||
workshop_type:
|
||||
- f5
|
||||
- rhel
|
||||
- rhel_90
|
||||
29
roles/install_demo/vars/main/06_debug_info.yml
Normal file
29
roles/install_demo/vars/main/06_debug_info.yml
Normal file
@@ -0,0 +1,29 @@
|
||||
---
|
||||
debug_info:
|
||||
author: "Will Tome"
|
||||
category: infrastructure
|
||||
name: "SERVER / Gather Debug Info"
|
||||
description: "provide info for memory and CPU usage for specified systems"
|
||||
job_type: "run"
|
||||
inventory: "Workshop Inventory"
|
||||
playbook: playbooks/06_debug_info.yml
|
||||
credential: "Workshop Credential"
|
||||
survey_enabled: false
|
||||
survey_spec:
|
||||
name: ''
|
||||
description: ''
|
||||
spec:
|
||||
- question_name: 'Enter host to configure'
|
||||
type: text
|
||||
variable: HOSTS
|
||||
required: false
|
||||
project:
|
||||
name: "Ansible official demo project"
|
||||
description: "prescriptive demos from Red Hat Management Buisness Unit"
|
||||
organization: "Default"
|
||||
scm_type: git
|
||||
scm_url: "https://github.com/ansible/product-demos"
|
||||
workshop_type:
|
||||
- f5
|
||||
- rhel
|
||||
- rhel_90
|
||||
29
roles/install_demo/vars/main/07_security_patching.yml
Normal file
29
roles/install_demo/vars/main/07_security_patching.yml
Normal file
@@ -0,0 +1,29 @@
|
||||
---
|
||||
security_patching:
|
||||
author: "Will Tome"
|
||||
category: infrastructure
|
||||
name: "SERVER / Security Patching"
|
||||
description: "upgrade all yum packages for security related except kernel"
|
||||
job_type: "run"
|
||||
inventory: "Workshop Inventory"
|
||||
playbook: playbooks/02_patching.yml
|
||||
credential: "Workshop Credential"
|
||||
survey_enabled: true
|
||||
survey_spec:
|
||||
name: ''
|
||||
description: ''
|
||||
spec:
|
||||
- question_name: 'Enter host to configure'
|
||||
type: text
|
||||
variable: HOSTS
|
||||
required: false
|
||||
project:
|
||||
name: "Ansible official demo project"
|
||||
description: "prescriptive demos from Red Hat Management Buisness Unit"
|
||||
organization: "Default"
|
||||
scm_type: git
|
||||
scm_url: "https://github.com/ansible/product-demos"
|
||||
workshop_type:
|
||||
- f5
|
||||
- rhel
|
||||
- rhel_90
|
||||
21
roles/install_demo/vars/main/10_openscap.yml
Normal file
21
roles/install_demo/vars/main/10_openscap.yml
Normal file
@@ -0,0 +1,21 @@
|
||||
---
|
||||
openscap:
|
||||
author: "Sean Cavanaugh"
|
||||
category: security
|
||||
name: "Create Openscap Report"
|
||||
description: "Create HTML report using SCAP Security Guide (SSG)"
|
||||
job_type: "run"
|
||||
inventory: "Workshop Inventory"
|
||||
playbook: "playbooks/10_openscap.yml"
|
||||
credential: "Workshop Credential"
|
||||
survey_enabled: false
|
||||
project:
|
||||
name: "Ansible official demo project"
|
||||
description: "prescriptive demos from Red Hat Management Buisness Unit"
|
||||
organization: "Default"
|
||||
scm_type: git
|
||||
scm_url: "https://github.com/ansible/product-demos"
|
||||
workshop_type:
|
||||
- f5
|
||||
- rhel
|
||||
- rhel_90
|
||||
23
roles/install_demo/vars/main/11_developer_report.yml
Normal file
23
roles/install_demo/vars/main/11_developer_report.yml
Normal file
@@ -0,0 +1,23 @@
|
||||
---
|
||||
developer_report:
|
||||
author: "Sean Cavanaugh"
|
||||
category: developer
|
||||
name: "Create Developer Report"
|
||||
description: >
|
||||
'Create HTML report using
|
||||
<a href="https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.html#variables-discovered-from-systems-facts">Ansible facts</a>'
|
||||
job_type: "run"
|
||||
inventory: "Workshop Inventory"
|
||||
playbook: "playbooks/11_developer_report.yml"
|
||||
credential: "Workshop Credential"
|
||||
survey_enabled: false
|
||||
project:
|
||||
name: "Ansible official demo project"
|
||||
description: "prescriptive demos from Red Hat Management Buisness Unit"
|
||||
organization: "Default"
|
||||
scm_type: git
|
||||
scm_url: "https://github.com/ansible/product-demos"
|
||||
workshop_type:
|
||||
- f5
|
||||
- rhel
|
||||
- rhel_90
|
||||
83
roles/install_demo/vars/main/20_f5_bigip_workflow.yml
Normal file
83
roles/install_demo/vars/main/20_f5_bigip_workflow.yml
Normal file
@@ -0,0 +1,83 @@
|
||||
---
|
||||
f5_bigip_workflow:
|
||||
workflow: true
|
||||
author: 'Sean Cavanaugh'
|
||||
category: network
|
||||
name: 'WORKFLOW - F5 BIG-IP'
|
||||
description: 'Workflow for F5 BIG-IP to setup a VIP (Virtual IP) load balancer between two RHEL webservers'
|
||||
organization: 'Default'
|
||||
workshop_type:
|
||||
- f5
|
||||
schema:
|
||||
- job_template: 'F5 - add nodes'
|
||||
success:
|
||||
- job_template: 'F5 - add pool'
|
||||
success:
|
||||
- job_template: 'F5 - add pool members'
|
||||
success:
|
||||
- job_template: 'F5 - add virtual server'
|
||||
job_templates:
|
||||
f5_add_nodes:
|
||||
name: 'F5 - add nodes'
|
||||
description: 'add webserver nodes into F5 BIG-IP'
|
||||
job_type: 'run'
|
||||
inventory: 'Workshop Inventory'
|
||||
playbook: 'exercises/ansible_f5/1.2-add-node/bigip-node.yml'
|
||||
credential: 'Workshop Credential'
|
||||
survey_enabled: false
|
||||
project:
|
||||
name: 'Ansible Workshops Project'
|
||||
description: 'official workshops from Ansible'
|
||||
organization: 'Default'
|
||||
scm_type: git
|
||||
scm_url: 'https://github.com/ansible/workshops'
|
||||
workshop_type:
|
||||
- f5
|
||||
f5_add_pool:
|
||||
name: 'F5 - add pool'
|
||||
description: 'add webserver nodes into F5 BIG-IP'
|
||||
job_type: 'run'
|
||||
inventory: 'Workshop Inventory'
|
||||
playbook: 'exercises/ansible_f5/1.3-add-pool/bigip-pool.yml'
|
||||
credential: 'Workshop Credential'
|
||||
survey_enabled: false
|
||||
project:
|
||||
name: 'Ansible Workshops Project'
|
||||
description: 'official workshops from Ansible'
|
||||
organization: 'Default'
|
||||
scm_type: git
|
||||
scm_url: 'https://github.com/ansible/workshops'
|
||||
workshop_type:
|
||||
- f5
|
||||
f5_add_pool_members:
|
||||
name: 'F5 - add pool members'
|
||||
description: 'add webserver nodes into pool'
|
||||
job_type: 'run'
|
||||
inventory: 'Workshop Inventory'
|
||||
playbook: 'exercises/ansible_f5/1.4-add-pool-members/bigip-pool-members.yml'
|
||||
credential: 'Workshop Credential'
|
||||
survey_enabled: false
|
||||
project:
|
||||
name: 'Ansible Workshops Project'
|
||||
description: 'official workshops from Ansible'
|
||||
organization: 'Default'
|
||||
scm_type: git
|
||||
scm_url: 'https://github.com/ansible/workshops'
|
||||
workshop_type:
|
||||
- f5
|
||||
f5_add_vip:
|
||||
name: 'F5 - add virtual server'
|
||||
description: 'create VIP and add pool to virtual server'
|
||||
job_type: 'run'
|
||||
inventory: 'Workshop Inventory'
|
||||
playbook: 'exercises/ansible_f5/1.5-add-virtual-server/bigip-virtual-server.yml'
|
||||
credential: 'Workshop Credential'
|
||||
survey_enabled: false
|
||||
project:
|
||||
name: 'Ansible Workshops Project'
|
||||
description: 'official workshops from Ansible'
|
||||
organization: 'Default'
|
||||
scm_type: git
|
||||
scm_url: 'https://github.com/ansible/workshops'
|
||||
workshop_type:
|
||||
- f5
|
||||
19
roles/install_demo/vars/main/30_windows_iss.yml
Normal file
19
roles/install_demo/vars/main/30_windows_iss.yml
Normal file
@@ -0,0 +1,19 @@
|
||||
---
|
||||
windows_iis:
|
||||
author: "Colin McNaughton"
|
||||
category: infrastructure
|
||||
name: "Windows IIS Server"
|
||||
description: "install webserver on Windows Server with a survey"
|
||||
job_type: "run"
|
||||
inventory: "Workshop Inventory"
|
||||
playbook: "playbooks/30_windows_iis.yml"
|
||||
credential: "Demo Credential"
|
||||
survey_enabled: false
|
||||
project:
|
||||
name: "Ansible official demo project"
|
||||
description: "prescriptive demos from Red Hat Management Buisness Unit"
|
||||
organization: "Default"
|
||||
scm_type: git
|
||||
scm_url: "https://github.com/ansible/product-demos"
|
||||
workshop_type:
|
||||
- windows
|
||||
Reference in New Issue
Block a user