7
windows/backup.yml
Normal file
7
windows/backup.yml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
---
|
||||||
|
- hosts: windows
|
||||||
|
name: Rollback playbook
|
||||||
|
tasks:
|
||||||
|
- name: "Rollback this step"
|
||||||
|
debug:
|
||||||
|
msg: "Rolling back this step"
|
||||||
@@ -1,7 +1,13 @@
|
|||||||
---
|
---
|
||||||
|
user_message: |
|
||||||
|
You will need to update SNOW credentials with your SNOW instance details if you plan to demo this.
|
||||||
|
|
||||||
controller_components:
|
controller_components:
|
||||||
- projects
|
- projects
|
||||||
|
- credential_types
|
||||||
|
- credentials
|
||||||
- job_templates
|
- job_templates
|
||||||
|
- workflow_job_templates
|
||||||
|
|
||||||
controller_projects:
|
controller_projects:
|
||||||
- name: Fact Scan
|
- name: Fact Scan
|
||||||
@@ -9,6 +15,42 @@ controller_projects:
|
|||||||
scm_type: git
|
scm_type: git
|
||||||
scm_url: 'https://github.com/ansible/awx-facts-playbooks.git'
|
scm_url: 'https://github.com/ansible/awx-facts-playbooks.git'
|
||||||
|
|
||||||
|
controller_credential_types:
|
||||||
|
- name: "SNOW Credential Type"
|
||||||
|
description: "credential to store SNOW"
|
||||||
|
kind: cloud
|
||||||
|
inputs:
|
||||||
|
fields:
|
||||||
|
- id: SNOW_USERNAME
|
||||||
|
type: string
|
||||||
|
label: Service Now Username
|
||||||
|
- id: SNOW_INSTANCE
|
||||||
|
type: string
|
||||||
|
label: Service Now Instance Name (devXXXXX)
|
||||||
|
- id: SNOW_PASSWORD
|
||||||
|
type: string
|
||||||
|
label: Service Now Password
|
||||||
|
secret: true
|
||||||
|
required:
|
||||||
|
- SNOW_USERNAME
|
||||||
|
- SNOW_INSTANCE
|
||||||
|
- SNOW_PASSWORD
|
||||||
|
injectors:
|
||||||
|
extra_vars:
|
||||||
|
snow_username: "{% raw %}{ { SNOW_USERNAME }}{% endraw %}"
|
||||||
|
snow_password: "{% raw %}{ { SNOW_PASSWORD }}{% endraw %}"
|
||||||
|
snow_instance: "{% raw %}{ { SNOW_INSTANCE }}{% endraw %}"
|
||||||
|
|
||||||
|
controller_credentials:
|
||||||
|
- name: SNOW Credential
|
||||||
|
description: Credentials
|
||||||
|
organization: Default
|
||||||
|
credential_type: "SNOW Credential Type"
|
||||||
|
inputs:
|
||||||
|
SNOW_USERNAME: "admin" #update after install
|
||||||
|
SNOW_PASSWORD: "XXX" #update after install
|
||||||
|
SNOW_INSTANCE: "devXxxxx" #update after install
|
||||||
|
|
||||||
controller_templates:
|
controller_templates:
|
||||||
- name: "WINDOWS / Install IIS"
|
- name: "WINDOWS / Install IIS"
|
||||||
job_type: run
|
job_type: run
|
||||||
@@ -114,7 +156,6 @@ controller_templates:
|
|||||||
type: text
|
type: text
|
||||||
variable: package_name
|
variable: package_name
|
||||||
required: true
|
required: true
|
||||||
|
|
||||||
- name: "WINDOWS / Arbitrary PowerShell"
|
- name: "WINDOWS / Arbitrary PowerShell"
|
||||||
job_type: run
|
job_type: run
|
||||||
inventory: "Workshop Inventory"
|
inventory: "Workshop Inventory"
|
||||||
@@ -203,3 +244,165 @@ controller_templates:
|
|||||||
type: text
|
type: text
|
||||||
variable: surname
|
variable: surname
|
||||||
required: true
|
required: true
|
||||||
|
|
||||||
|
- name: "Rollback"
|
||||||
|
job_type: run
|
||||||
|
inventory: "Workshop Inventory"
|
||||||
|
limit: "student1-win1"
|
||||||
|
project: "Ansible official demo project"
|
||||||
|
playbook: "windows/backup.yml"
|
||||||
|
execution_environment: "windows workshop execution environment"
|
||||||
|
credentials:
|
||||||
|
- "Workshop Credential"
|
||||||
|
|
||||||
|
- name: "Open SNOW Change Request"
|
||||||
|
job_type: run
|
||||||
|
inventory: "Workshop Inventory"
|
||||||
|
limit: "student1-ansible-1"
|
||||||
|
project: "Ansible official demo project"
|
||||||
|
playbook: "windows/snow.yml"
|
||||||
|
credentials:
|
||||||
|
- "SNOW Credential"
|
||||||
|
- "Workshop Credential"
|
||||||
|
|
||||||
|
- name: "Send Completion Notification"
|
||||||
|
job_type: run
|
||||||
|
inventory: "Workshop Inventory"
|
||||||
|
limit: "student1-win1"
|
||||||
|
project: "Ansible official demo project"
|
||||||
|
playbook: "windows/backup.yml"
|
||||||
|
execution_environment: "windows workshop execution environment"
|
||||||
|
credentials:
|
||||||
|
- "Workshop Credential"
|
||||||
|
|
||||||
|
- name: "Alert Ops!"
|
||||||
|
job_type: run
|
||||||
|
inventory: "Workshop Inventory"
|
||||||
|
limit: "student1-win1"
|
||||||
|
project: "Ansible official demo project"
|
||||||
|
playbook: "windows/backup.yml"
|
||||||
|
execution_environment: "windows workshop execution environment"
|
||||||
|
credentials:
|
||||||
|
- "Workshop Credential"
|
||||||
|
|
||||||
|
controller_workflows:
|
||||||
|
- name: "Windows Demo Workflow"
|
||||||
|
organization:
|
||||||
|
name: "Default"
|
||||||
|
workflow_nodes:
|
||||||
|
- unified_job_template:
|
||||||
|
name: "Ansible official demo project"
|
||||||
|
type: project_update
|
||||||
|
organization:
|
||||||
|
name: "Default"
|
||||||
|
identifier: node100
|
||||||
|
related:
|
||||||
|
success_nodes:
|
||||||
|
- identifier: node101
|
||||||
|
- unified_job_template:
|
||||||
|
name: "Open SNOW Change Request"
|
||||||
|
type: job_template
|
||||||
|
organization:
|
||||||
|
name: "Default"
|
||||||
|
identifier: node101
|
||||||
|
related:
|
||||||
|
success_nodes:
|
||||||
|
- identifier: node201
|
||||||
|
- unified_job_template:
|
||||||
|
name: "WINDOWS / Windows updates"
|
||||||
|
type: job_template
|
||||||
|
organization:
|
||||||
|
name: "Default"
|
||||||
|
identifier: node201
|
||||||
|
related:
|
||||||
|
success_nodes:
|
||||||
|
- identifier: node301
|
||||||
|
failure_nodes:
|
||||||
|
- identifier: node302
|
||||||
|
always_nodes: []
|
||||||
|
- unified_job_template:
|
||||||
|
name: "WINDOWS / Install IIS"
|
||||||
|
type: job_template
|
||||||
|
organization:
|
||||||
|
name: "Default"
|
||||||
|
identifier: node301
|
||||||
|
related:
|
||||||
|
success_nodes:
|
||||||
|
- identifier: node401
|
||||||
|
failure_nodes:
|
||||||
|
- identifier: node402
|
||||||
|
always_nodes: []
|
||||||
|
- unified_job_template:
|
||||||
|
name: "Rollback"
|
||||||
|
type: workflow_approval
|
||||||
|
organization:
|
||||||
|
name: "Default"
|
||||||
|
related:
|
||||||
|
success_nodes: []
|
||||||
|
failure_nodes: []
|
||||||
|
always_nodes: []
|
||||||
|
identifier: node302
|
||||||
|
- unified_job_template:
|
||||||
|
name: "WINDOWS / Chocolatey install multiple"
|
||||||
|
type: workflow_approval
|
||||||
|
organization:
|
||||||
|
name: "Default"
|
||||||
|
identifier: node401
|
||||||
|
related:
|
||||||
|
success_nodes:
|
||||||
|
- identifier: node501
|
||||||
|
failure_nodes:
|
||||||
|
- identifier: node502
|
||||||
|
always_nodes: []
|
||||||
|
- unified_job_template:
|
||||||
|
name: "Rollback"
|
||||||
|
type: job_template
|
||||||
|
organization:
|
||||||
|
name: "Default"
|
||||||
|
identifier: node402
|
||||||
|
related:
|
||||||
|
success_nodes: []
|
||||||
|
failure_nodes: []
|
||||||
|
always_nodes: []
|
||||||
|
- unified_job_template:
|
||||||
|
name: "Send Completion Notification"
|
||||||
|
type: job_template
|
||||||
|
organization:
|
||||||
|
name: "Default"
|
||||||
|
identifier: node501
|
||||||
|
related:
|
||||||
|
success_nodes: []
|
||||||
|
failure_nodes: []
|
||||||
|
always_nodes: []
|
||||||
|
- unified_job_template:
|
||||||
|
name: "Manual override"
|
||||||
|
type: workflow_approval
|
||||||
|
organization:
|
||||||
|
name: "Default"
|
||||||
|
related:
|
||||||
|
success_nodes:
|
||||||
|
- identifier: node601
|
||||||
|
failure_nodes:
|
||||||
|
- identifier: node602
|
||||||
|
always_nodes: []
|
||||||
|
identifier: node502
|
||||||
|
- unified_job_template:
|
||||||
|
name: "Rollback"
|
||||||
|
type: job_template
|
||||||
|
organization:
|
||||||
|
name: "Default"
|
||||||
|
identifier: node602
|
||||||
|
related:
|
||||||
|
success_nodes: []
|
||||||
|
failure_nodes: []
|
||||||
|
always_nodes: []
|
||||||
|
- unified_job_template:
|
||||||
|
name: "Alert Ops!"
|
||||||
|
type: job_template
|
||||||
|
organization:
|
||||||
|
name: "Default"
|
||||||
|
identifier: node601
|
||||||
|
related:
|
||||||
|
success_nodes: []
|
||||||
|
failure_nodes: []
|
||||||
|
always_nodes: []
|
||||||
|
|||||||
32
windows/snow.yml
Normal file
32
windows/snow.yml
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
---
|
||||||
|
- name: open a change request
|
||||||
|
hosts: student1-ansible-1
|
||||||
|
vars:
|
||||||
|
change_request:
|
||||||
|
severity: 2
|
||||||
|
priority: 2
|
||||||
|
description: Automated Provisioning
|
||||||
|
justification: Ansible Triggered
|
||||||
|
implementation_plan: Updated by Red Hat AAP
|
||||||
|
risk_impact_analysis: Changes are made automatically based on approved changes
|
||||||
|
test_plan: Run synthetic validation tests post-deployment
|
||||||
|
short_description: Automated Provisioning
|
||||||
|
tasks:
|
||||||
|
- name: Create a change request
|
||||||
|
servicenow.itsm.change_request:
|
||||||
|
instance:
|
||||||
|
host: "https://{{ snow_instance }}.service-now.com"
|
||||||
|
username: "{{ snow_username }}"
|
||||||
|
password: "{{ snow_password }}"
|
||||||
|
type: standard
|
||||||
|
state: new
|
||||||
|
requested_by: admin
|
||||||
|
short_description: "{{ change_request.short_description }}"
|
||||||
|
description: "{{ change_request.description }}"
|
||||||
|
priority: moderate
|
||||||
|
risk: low
|
||||||
|
impact: low
|
||||||
|
register: new_incident
|
||||||
|
|
||||||
|
- debug:
|
||||||
|
var: new_incident.record.number
|
||||||
Reference in New Issue
Block a user