1 Commits

Author SHA1 Message Date
willtome
2c944e6cc8 implement rhc role 2023-06-05 09:34:18 -04:00
19 changed files with 177 additions and 211 deletions

View File

@@ -27,7 +27,7 @@ If you would like to contribute to this project please refer to [contribution gu
3. Finally, Create a Job Template called `Setup` with the following configuration: 3. Finally, Create a Job Template called `Setup` with the following configuration:
- Name: Setup - Name: Setup
- Inventory: Demo Inventory - Inventory: Workshop Inventory
- Exec Env: Control Plane EE - Exec Env: Control Plane EE
- Playbook: setup_demo.yml - Playbook: setup_demo.yml
- Credentials: - Credentials:

View File

@@ -40,7 +40,7 @@ After running the setup job template, there are a few steps required to make the
### Add Workshop Credential Password ### Add Workshop Credential Password
1) Add a password that meets the [default complexity requirements](https://learn.microsoft.com/en-us/windows/security/threat-protection/security-policy-settings/password-must-meet-complexity-requirements#reference). This allows you to connect to Windows Servers provisioned with Create VM job. Required until [RFE](https://github.com/ansible/workshops/issues/1597]) is complete 1) Add the password used to login to Controller. This allows you to connect to Windows Servers provisioned with Create VM job. Required until [RFE](https://github.com/ansible/workshops/issues/1597]) is complete
### Remove Inventory Variables ### Remove Inventory Variables

View File

@@ -10,7 +10,7 @@
ansible.builtin.assert: ansible.builtin.assert:
that: that:
- aws_key_name is defined - aws_key_name is defined
- create_vm_aws_region is defined - aws_region is defined
- aws_public_key is defined - aws_public_key is defined
- aws_keypair_owner is defined - aws_keypair_owner is defined
fail_msg: "Required variables not set" fail_msg: "Required variables not set"
@@ -18,7 +18,7 @@
- name: Create AWS keypair - name: Create AWS keypair
amazon.aws.ec2_key: amazon.aws.ec2_key:
name: "{{ aws_key_name }}" name: "{{ aws_key_name }}"
region: "{{ create_vm_aws_region }}" region: "{{ aws_region }}"
key_material: "{{ aws_public_key }}" key_material: "{{ aws_public_key }}"
state: present state: present
tags: tags:

View File

@@ -1,6 +0,0 @@
---
vm_providers:
- aws
aws_instance_size: t3.micro
aws_image_architecture: x86_64
aws_image_filter: 'al2023-ami-2023*'

12
cloud/create_infra.yml Normal file
View File

@@ -0,0 +1,12 @@
---
- name: Create Cloud Infra
hosts: localhost
gather_facts: false
vars:
infra_provider: undef
aws_public_key: undef
tasks:
- name: Include provider role
ansible.builtin.include_role:
name: "demo.cloud.{{ infra_provider }}"
tasks_from: create_infra

25
cloud/create_vm.yml Normal file
View File

@@ -0,0 +1,25 @@
---
- name: Create Cloud Infra
hosts: localhost
gather_facts: false
vars:
vm_name: undef
vm_owner: undef
vm_provider: undef
vm_blueprint: undef
tasks:
- name: "Importing {{ vm_blueprint | upper }}"
ansible.builtin.include_vars:
file: "blueprints/{{ vm_blueprint }}.yml"
- name: "Check Provider Compatibility"
ansible.builtin.assert:
that: "'{{ vm_provider }}' in {{ vm_blueprint_providers }}"
fail_msg: "{{ vm_blueprint | upper }} is not available for {{ vm_provider | upper }}"
when: "vm_blueprint_providers is defined"
- name: "Building {{ vm_blueprint | upper }}"
ansible.builtin.include_role:
name: "demo.cloud.{{ vm_provider }}"
tasks_from: create_vm

View File

@@ -9,6 +9,7 @@
aws_tenancy: default aws_tenancy: default
aws_vpc_cidr_block: 10.0.0.0/16 aws_vpc_cidr_block: 10.0.0.0/16
aws_subnet_cidr: 10.0.1.0/24 aws_subnet_cidr: 10.0.1.0/24
aws_region: us-east-1
aws_sg_name: aws-test-sg aws_sg_name: aws-test-sg
aws_subnet_name: aws-test-subnet aws_subnet_name: aws-test-subnet
aws_rt_name: aws-test-rt aws_rt_name: aws-test-rt
@@ -20,7 +21,7 @@
name: "{{ aws_vpc_name }}" name: "{{ aws_vpc_name }}"
cidr_block: "{{ aws_vpc_cidr_block }}" cidr_block: "{{ aws_vpc_cidr_block }}"
tenancy: "{{ aws_tenancy }}" tenancy: "{{ aws_tenancy }}"
region: "{{ create_vm_aws_region }}" region: "{{ aws_region }}"
tags: tags:
owner: "{{ aws_owner_tag }}" owner: "{{ aws_owner_tag }}"
purpose: "{{ aws_purpose_tag }}" purpose: "{{ aws_purpose_tag }}"
@@ -30,7 +31,7 @@
amazon.aws.ec2_vpc_igw: amazon.aws.ec2_vpc_igw:
state: present state: present
vpc_id: "{{ aws_vpc.vpc.id }}" vpc_id: "{{ aws_vpc.vpc.id }}"
region: "{{ create_vm_aws_region }}" region: "{{ aws_region }}"
tags: tags:
Name: "{{ aws_vpc_name }}" Name: "{{ aws_vpc_name }}"
owner: "{{ aws_owner_tag }}" owner: "{{ aws_owner_tag }}"
@@ -41,7 +42,7 @@
amazon.aws.ec2_security_group: amazon.aws.ec2_security_group:
state: present state: present
name: "{{ aws_sg_name }}" name: "{{ aws_sg_name }}"
region: "{{ create_vm_aws_region }}" region: "{{ aws_region }}"
description: Inbound WinRM and RDP, http for demo servers and internal AD ports description: Inbound WinRM and RDP, http for demo servers and internal AD ports
rules: rules:
- proto: tcp - proto: tcp
@@ -100,7 +101,7 @@
state: present state: present
vpc_id: "{{ aws_vpc.vpc.id }}" vpc_id: "{{ aws_vpc.vpc.id }}"
cidr: "{{ aws_subnet_cidr }}" cidr: "{{ aws_subnet_cidr }}"
region: "{{ create_vm_aws_region }}" region: "{{ aws_region }}"
map_public: true map_public: true
tags: tags:
Name: "{{ aws_subnet_name }}" Name: "{{ aws_subnet_name }}"
@@ -112,7 +113,7 @@
amazon.aws.ec2_vpc_route_table: amazon.aws.ec2_vpc_route_table:
state: present state: present
vpc_id: "{{ aws_vpc.vpc.id }}" vpc_id: "{{ aws_vpc.vpc.id }}"
region: "{{ create_vm_aws_region }}" region: "{{ aws_region }}"
subnets: subnets:
- "{{ aws_subnet.subnet.id }}" - "{{ aws_subnet.subnet.id }}"
routes: routes:

View File

@@ -19,7 +19,8 @@ controller_projects:
organization: Default organization: Default
scm_type: git scm_type: git
wait: true wait: true
scm_url: https://github.com/ansible-content-lab/aws.infrastructure_config_demos.git # scm_url: https://github.com/ansible-content-lab/aws.infrastructure_config_demos.git
scm_url: https://github.com/willtome/aws.infrastructure_config_demos.git
default_environment: Cloud Services Execution Environment default_environment: Cloud Services Execution Environment
controller_credentials: controller_credentials:
@@ -42,7 +43,7 @@ controller_inventory_sources:
- name: AWS Inventory - name: AWS Inventory
organization: Default organization: Default
source: ec2 source: ec2
inventory: Demo Inventory inventory: Workshop Inventory
credential: AWS credential: AWS
overwrite: true overwrite: true
source_vars: source_vars:
@@ -65,7 +66,7 @@ controller_inventory_sources:
# - name: Azure Inventory # - name: Azure Inventory
# organization: Default # organization: Default
# source: azure_rm # source: azure_rm
# inventory: Demo Inventory # inventory: Workshop Inventory
# credential: Azure # credential: Azure
# execution_environment: Ansible Engine 2.9 execution environment # execution_environment: Ansible Engine 2.9 execution environment
# overwrite: true # overwrite: true
@@ -81,7 +82,7 @@ controller_inventory_sources:
controller_groups: controller_groups:
- name: cloud_aws - name: cloud_aws
inventory: Demo Inventory inventory: Workshop Inventory
variables: variables:
ansible_user: ec2-user ansible_user: ec2-user
@@ -93,7 +94,7 @@ controller_templates:
- AWS - AWS
project: Ansible Cloud Content Lab - AWS project: Ansible Cloud Content Lab - AWS
playbook: playbook_create_peer_network.yml playbook: playbook_create_peer_network.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
@@ -109,7 +110,7 @@ controller_templates:
- AWS - AWS
project: Ansible Cloud Content Lab - AWS project: Ansible Cloud Content Lab - AWS
playbook: playbook_delete_peer_network.yml playbook: playbook_delete_peer_network.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
@@ -123,7 +124,7 @@ controller_templates:
- AWS - AWS
project: Ansible Cloud Content Lab - AWS project: Ansible Cloud Content Lab - AWS
playbook: playbook_create_transit_network.yml playbook: playbook_create_transit_network.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
@@ -139,7 +140,7 @@ controller_templates:
- AWS - AWS
project: Ansible Cloud Content Lab - AWS project: Ansible Cloud Content Lab - AWS
playbook: playbook_delete_transit_network.yml playbook: playbook_delete_transit_network.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
@@ -153,7 +154,7 @@ controller_templates:
- AWS - AWS
project: Ansible official demo project project: Ansible official demo project
playbook: cloud/create_vpc.yml playbook: cloud/create_vpc.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
@@ -164,7 +165,7 @@ controller_templates:
spec: spec:
- question_name: AWS Region - question_name: AWS Region
type: multiplechoice type: multiplechoice
variable: create_vm_aws_region variable: aws_region
required: true required: true
choices: choices:
- us-east-1 - us-east-1
@@ -181,22 +182,25 @@ controller_templates:
organization: Default organization: Default
credentials: credentials:
- AWS - AWS
- Demo Credential - Workshop Credential
project: Ansible Cloud Content Lab - AWS project: Ansible Cloud Content Lab - AWS
playbook: playbook_create_vm.yml playbook: playbook_create_vm.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
survey_enabled: true survey_enabled: true
allow_simultaneous: true allow_simultaneous: true
extra_vars:
aws_region: us-east-1
aws_keypair_name: aws-test-key
survey: survey:
name: '' name: ''
description: '' description: ''
spec: spec:
- question_name: AWS Region - question_name: AWS Region
type: multiplechoice type: multiplechoice
variable: create_vm_aws_region variable: aws_region
required: true required: true
choices: choices:
- us-east-1 - us-east-1
@@ -205,19 +209,19 @@ controller_templates:
- us-west-2 - us-west-2
- question_name: Name - question_name: Name
type: text type: text
variable: create_vm_vm_name variable: vm_name
required: true required: true
- question_name: Owner - question_name: Owner
type: text type: text
variable: create_vm_vm_owner variable: vm_owner
required: true required: true
- question_name: Deployment - question_name: Deployment
type: text type: text
variable: create_vm_vm_deployment variable: vm_deployment
required: true required: true
- question_name: Environment - question_name: Environment
type: multiplechoice type: multiplechoice
variable: create_vm_vm_environment variable: vm_environment
required: true required: true
choices: choices:
- Dev - Dev
@@ -233,36 +237,32 @@ controller_templates:
- rhel9 - rhel9
- rhel8 - rhel8
- rhel7 - rhel7
- al2023
- question_name: Subnet - question_name: Subnet
type: text type: text
variable: create_vm_aws_vpc_subnet_name variable: aws_vpc_subnet_name
required: true required: true
default: aws-test-subnet default: aws-test-subnet
- question_name: Security Group - question_name: Security Group
type: text type: text
variable: create_vm_aws_securitygroup_name variable: aws_securitygroup_name
required: true required: true
default: aws-test-sg default: aws-test-sg
- question_name: SSH Keypair
type: text
variable: create_vm_aws_keypair_name
required: true
default: aws-test-key
- name: Cloud / AWS / Delete VM - name: Cloud / AWS / Delete VM
job_type: run job_type: run
organization: Default organization: Default
credentials: credentials:
- AWS - AWS
- Demo Credential - Workshop Credential
project: Ansible Cloud Content Lab - AWS project: Ansible Cloud Content Lab - AWS
playbook: playbook_delete_inventory_vm.yml playbook: playbook_delete_inventory_vm.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
survey_enabled: true survey_enabled: true
extra_vars:
aws_region: us-east-1
survey: survey:
name: '' name: ''
description: '' description: ''
@@ -279,26 +279,13 @@ controller_templates:
- AWS - AWS
project: Ansible Cloud Content Lab - AWS project: Ansible Cloud Content Lab - AWS
playbook: playbook_create_reports.yml playbook: playbook_create_reports.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
extra_vars: extra_vars:
aws_region: us-east-1
aws_report: vpc aws_report: vpc
survey_enabled: true
survey:
name: ''
description: ''
spec:
- question_name: AWS Region
type: multiplechoice
variable: create_vm_aws_region
required: true
choices:
- us-east-1
- us-east-2
- us-west-1
- us-west-2
- name: Cloud / AWS / Tags Report - name: Cloud / AWS / Tags Report
job_type: run job_type: run
@@ -307,7 +294,7 @@ controller_templates:
- AWS - AWS
project: Ansible Cloud Content Lab - AWS project: Ansible Cloud Content Lab - AWS
playbook: playbook_create_reports.yml playbook: playbook_create_reports.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
@@ -320,7 +307,7 @@ controller_templates:
spec: spec:
- question_name: AWS Region - question_name: AWS Region
type: multiplechoice type: multiplechoice
variable: create_vm_aws_region variable: aws_region
required: true required: true
choices: choices:
- us-east-1 - us-east-1
@@ -335,7 +322,7 @@ controller_templates:
- AWS - AWS
project: Ansible official demo project project: Ansible official demo project
playbook: cloud/aws_key.yml playbook: cloud/aws_key.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
@@ -346,7 +333,7 @@ controller_templates:
spec: spec:
- question_name: AWS Region - question_name: AWS Region
type: multiplechoice type: multiplechoice
variable: create_vm_aws_region variable: aws_region
required: true required: true
choices: choices:
- us-east-1 - us-east-1
@@ -383,7 +370,7 @@ controller_workflows:
spec: spec:
- question_name: AWS Region - question_name: AWS Region
type: multiplechoice type: multiplechoice
variable: create_vm_aws_region variable: aws_region
required: true required: true
choices: choices:
- us-east-1 - us-east-1
@@ -392,7 +379,7 @@ controller_workflows:
- us-west-2 - us-west-2
- question_name: Owner - question_name: Owner
type: text type: text
variable: create_vm_aws_owner_tag variable: aws_owner_tag
required: true required: true
- question_name: Environment - question_name: Environment
type: multiplechoice type: multiplechoice
@@ -413,6 +400,8 @@ controller_workflows:
simplified_workflow_nodes: simplified_workflow_nodes:
- identifier: Create Keypair - identifier: Create Keypair
unified_job_template: Cloud / AWS / Create Keypair unified_job_template: Cloud / AWS / Create Keypair
extra_data:
aws_keypair_owner: !unsafe "{{ aws_owner_tag }}"
success_nodes: success_nodes:
- VPC Report - VPC Report
failure_nodes: failure_nodes:
@@ -437,8 +426,9 @@ controller_workflows:
- identifier: Deploy Windows Blueprint - identifier: Deploy Windows Blueprint
unified_job_template: Cloud / AWS / Create VM unified_job_template: Cloud / AWS / Create VM
extra_data: extra_data:
create_vm_vm_name: aws_win vm_name: aws_win
vm_blueprint: windows_full vm_blueprint: windows_full
vm_owner: !unsafe "{{ aws_owner_tag }}"
success_nodes: success_nodes:
- Update Inventory - Update Inventory
failure_nodes: failure_nodes:
@@ -446,8 +436,9 @@ controller_workflows:
- identifier: Deploy RHEL8 Blueprint - identifier: Deploy RHEL8 Blueprint
unified_job_template: Cloud / AWS / Create VM unified_job_template: Cloud / AWS / Create VM
extra_data: extra_data:
create_vm_vm_name: aws_rhel8 vm_name: aws_rhel8
vm_blueprint: rhel8 vm_blueprint: rhel8
vm_owner: !unsafe "{{ aws_owner_tag }}"
success_nodes: success_nodes:
- Update Inventory - Update Inventory
failure_nodes: failure_nodes:
@@ -455,8 +446,9 @@ controller_workflows:
- identifier: Deploy RHEL9 Blueprint - identifier: Deploy RHEL9 Blueprint
unified_job_template: Cloud / AWS / Create VM unified_job_template: Cloud / AWS / Create VM
extra_data: extra_data:
create_vm_vm_name: aws_rhel9 vm_name: aws_rhel9
vm_blueprint: rhel9 vm_blueprint: rhel9
vm_owner: !unsafe "{{ aws_owner_tag }}"
success_nodes: success_nodes:
- Update Inventory - Update Inventory
failure_nodes: failure_nodes:

View File

@@ -15,7 +15,7 @@
- name: Copy logos over - name: Copy logos over
ansible.builtin.copy: ansible.builtin.copy:
src: "{{ logo }}" src: "{{ item }}"
dest: "{{ file_path }}" dest: "{{ file_path }}"
directory_mode: true directory_mode: true
mode: "0644" mode: "0644"
@@ -24,8 +24,6 @@
- "redhat-ansible-logo.svg" - "redhat-ansible-logo.svg"
- "server.png" - "server.png"
check_mode: false check_mode: false
loop_control:
loop_var: logo
- name: Display link to inventory report - name: Display link to inventory report
ansible.builtin.debug: ansible.builtin.debug:

View File

@@ -14,7 +14,7 @@
- name: Copy logos over - name: Copy logos over
ansible.windows.win_copy: ansible.windows.win_copy:
src: "{{ logo }}" src: "{{ item }}"
dest: "{{ file_path }}" dest: "{{ file_path }}"
directory_mode: true directory_mode: true
loop: loop:
@@ -22,8 +22,6 @@
- "redhat-ansible-logo.svg" - "redhat-ansible-logo.svg"
- "server.png" - "server.png"
check_mode: false check_mode: false
loop_control:
loop_var: logo
# - name: display link to inventory report # - name: display link to inventory report
# ansible.builtin.debug: # ansible.builtin.debug:

View File

@@ -1,14 +1,14 @@
--- ---
collections: collections:
- name: ansible.controller - name: ansible.controller
version: 4.4.0 version: 4.3.0
- name: redhat_cop.controller_configuration - name: redhat_cop.controller_configuration
version: 2.3.1 version: 2.2.5
# linux # linux
- name: redhat.insights - name: redhat.insights
version: 1.0.7 version: 1.0.7
- name: redhat.rhel_system_roles - name: redhat.rhel_system_roles
version: 1.20.0 version: 1.21.1
- name: community.general - name: community.general
version: 6.3.0 version: 6.3.0
- name: containers.podman - name: containers.podman

View File

@@ -2,9 +2,12 @@
- name: Register ec2 instance with subscription mangler - name: Register ec2 instance with subscription mangler
hosts: "{{ _hosts | default(omit) }}" hosts: "{{ _hosts | default(omit) }}"
become: true become: true
vars:
registration_state: present
insights_state: present
tasks: tasks:
- name: Check for vars - name: Check for org_id and activation_key
ansible.builtin.assert: ansible.builtin.assert:
that: that:
- org_id is defined - org_id is defined
@@ -56,18 +59,19 @@
regexp: '^manage_repos' regexp: '^manage_repos'
line: 'manage_repos = 1' line: 'manage_repos = 1'
- name: Register subscription mangler - name: Register with subscription mangler
community.general.redhat_subscription: ansible.builtin.include_role:
state: present name: redhat.rhel_system_roles.rhc
activationkey: "{{ activation_key }}"
org_id: "{{ org_id }}"
- name: Configure Red Hat insights
ansible.builtin.import_role:
name: redhat.insights.insights_client
vars: vars:
insights_display_name: "{{ inventory_hostname }}" rhc_state: "{{ registration_state }}"
insights_tags: rhc_organization: "{{ org_id }}"
env: "{{ env }}" rhc_auth:
purpose: demo activation_keys:
group: "{{ insights_tag }}" keys:
- "{{ activation_key }}"
rhc_insights:
state: "{{ insights_state }}"
tags:
env: "{{ env }}"
purpose: demo
group: "{{ insights_tag }}"

View File

@@ -37,7 +37,7 @@ controller_credentials:
controller_inventory_sources: controller_inventory_sources:
- name: Insights Inventory - name: Insights Inventory
inventory: Demo Inventory inventory: Workshop Inventory
source: scm source: scm
source_project: Ansible official demo project source_project: Ansible official demo project
source_path: linux/inventory.insights.yml source_path: linux/inventory.insights.yml
@@ -46,14 +46,14 @@ controller_inventory_sources:
controller_templates: controller_templates:
- name: "LINUX / Register with Insights" - name: "LINUX / Register with Insights"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/ec2_register.yml" playbook: "linux/ec2_register.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
extra_vars: extra_vars:
activation_key: !unsafe "RHEL{{ ansible_distribution_major_version }}_{{ env }}" activation_key: !unsafe "RHEL{{ ansible_distribution_major_version }}_{{ env }}"
@@ -85,7 +85,7 @@ controller_templates:
- name: "LINUX / Troubleshoot" - name: "LINUX / Troubleshoot"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/tshoot.yml" playbook: "linux/tshoot.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
@@ -93,7 +93,7 @@ controller_templates:
notification_templates_error: Telemetry notification_templates_error: Telemetry
use_fact_cache: true use_fact_cache: true
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -106,14 +106,14 @@ controller_templates:
- name: "LINUX / Temporary Sudo" - name: "LINUX / Temporary Sudo"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/temp_sudo.yml" playbook: "linux/temp_sudo.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -135,7 +135,7 @@ controller_templates:
- name: "LINUX / Patching" - name: "LINUX / Patching"
job_type: check job_type: check
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/patching.yml" playbook: "linux/patching.yml"
execution_environment: Default execution environment execution_environment: Default execution environment
@@ -145,7 +145,7 @@ controller_templates:
use_fact_cache: true use_fact_cache: true
ask_job_type_on_launch: true ask_job_type_on_launch: true
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -158,7 +158,7 @@ controller_templates:
- name: "LINUX / Start Service" - name: "LINUX / Start Service"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/service_start.yml" playbook: "linux/service_start.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
@@ -166,7 +166,7 @@ controller_templates:
notification_templates_error: Telemetry notification_templates_error: Telemetry
use_fact_cache: true use_fact_cache: true
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -183,7 +183,7 @@ controller_templates:
- name: "LINUX / Stop Service" - name: "LINUX / Stop Service"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/service_stop.yml" playbook: "linux/service_stop.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
@@ -191,7 +191,7 @@ controller_templates:
notification_templates_error: Telemetry notification_templates_error: Telemetry
use_fact_cache: true use_fact_cache: true
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -208,14 +208,14 @@ controller_templates:
- name: "LINUX / Run Shell Script" - name: "LINUX / Run Shell Script"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/run_script.yml" playbook: "linux/run_script.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -233,14 +233,14 @@ controller_templates:
- name: "LINUX / Fact Scan" - name: "LINUX / Fact Scan"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: linux/fact_scan.yml playbook: linux/fact_scan.yml
inventory: Demo Inventory inventory: Workshop Inventory
execution_environment: Default execution environment execution_environment: Default execution environment
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
use_fact_cache: true use_fact_cache: true
credentials: credentials:
- Demo Credential - Workshop Credential
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -253,14 +253,14 @@ controller_templates:
- name: "LINUX / Podman Webserver" - name: "LINUX / Podman Webserver"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/podman.yml" playbook: "linux/podman.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -278,7 +278,7 @@ controller_templates:
- name: "LINUX / System Roles" - name: "LINUX / System Roles"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/system_roles.yml" playbook: "linux/system_roles.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
@@ -292,7 +292,7 @@ controller_templates:
selinux_policy: targeted selinux_policy: targeted
selinux_state: enforcing selinux_state: enforcing
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -305,7 +305,7 @@ controller_templates:
- name: "LINUX / Install Web Console (cockpit)" - name: "LINUX / Install Web Console (cockpit)"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/system_roles.yml" playbook: "linux/system_roles.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
@@ -317,7 +317,7 @@ controller_templates:
system_roles: system_roles:
- cockpit - cockpit
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -339,14 +339,14 @@ controller_templates:
- name: "LINUX / DISA STIG" - name: "LINUX / DISA STIG"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/compliance.yml" playbook: "linux/compliance.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
extra_vars: extra_vars:
sudo_remove_nopasswd: false sudo_remove_nopasswd: false
survey_enabled: true survey_enabled: true
@@ -361,11 +361,11 @@ controller_templates:
- name: "LINUX / Insights Compliance Scan" - name: "LINUX / Insights Compliance Scan"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/insights_compliance_scan.yml" playbook: "linux/insights_compliance_scan.yml"
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -386,7 +386,7 @@ controller_templates:
- name: "LINUX / Deploy Application" - name: "LINUX / Deploy Application"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "linux/deploy_application.yml" playbook: "linux/deploy_application.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
@@ -394,7 +394,7 @@ controller_templates:
notification_templates_error: Telemetry notification_templates_error: Telemetry
use_fact_cache: true use_fact_cache: true
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''

View File

@@ -88,7 +88,7 @@ controller_templates:
execution_environment: Networking Execution Environment execution_environment: Networking Execution Environment
use_fact_cache: true use_fact_cache: true
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''

View File

@@ -52,7 +52,7 @@ controller_credentials:
controller_inventory_sources: controller_inventory_sources:
- name: Satellite Inventory - name: Satellite Inventory
inventory: Demo Inventory inventory: Workshop Inventory
credential: Satellite Inventory credential: Satellite Inventory
source: satellite6 source: satellite6
update_on_launch: false update_on_launch: false
@@ -81,12 +81,12 @@ controller_templates:
- name: LINUX / Register with Satellite - name: LINUX / Register with Satellite
project: Ansible official demo project project: Ansible official demo project
playbook: satellite/server_register.yml playbook: satellite/server_register.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- Demo Credential - Workshop Credential
- Satellite Credential - Satellite Credential
extra_vars: extra_vars:
org_id: "Default_Organization" org_id: "Default_Organization"
@@ -111,14 +111,14 @@ controller_templates:
- name: LINUX / Compliance Scan with Satellite - name: LINUX / Compliance Scan with Satellite
project: Ansible official demo project project: Ansible official demo project
playbook: satellite/server_openscap.yml playbook: satellite/server_openscap.yml
inventory: Demo Inventory inventory: Workshop Inventory
# execution_environment: Ansible Engine 2.9 execution environment execution_environment: Ansible Engine 2.9 execution environment
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- Satellite Credential - Satellite Credential
- Demo Credential - Workshop Credential
extra_vars: extra_vars:
policy_scan: all policy_scan: all
survey_enabled: true survey_enabled: true
@@ -134,7 +134,7 @@ controller_templates:
- name: SATELLITE / Publish Content View Version - name: SATELLITE / Publish Content View Version
project: Ansible official demo project project: Ansible official demo project
playbook: satellite/satellite_publish.yml playbook: satellite/satellite_publish.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
@@ -156,7 +156,7 @@ controller_templates:
- name: SATELLITE / Promote Content View Version - name: SATELLITE / Promote Content View Version
project: Ansible official demo project project: Ansible official demo project
playbook: satellite/satellite_promote.yml playbook: satellite/satellite_promote.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
@@ -186,7 +186,7 @@ controller_templates:
- name: SETUP / Satellite - name: SETUP / Satellite
project: Ansible official demo project project: Ansible official demo project
playbook: satellite/setup_satellite.yml playbook: satellite/setup_satellite.yml
inventory: Demo Inventory inventory: Workshop Inventory
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry

View File

@@ -30,7 +30,7 @@
controller_templates: controller_templates:
- name: "SUBMIT FEEDBACK" - name: "SUBMIT FEEDBACK"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "feedback.yml" playbook: "feedback.yml"
execution_environment: Default execution environment execution_environment: Default execution environment

View File

@@ -19,14 +19,11 @@ This category of demos shows examples of Windows Server operations and managemen
- [**WINDOWS / Arbitrary Powershell**](arbitrary_powershell.yml) - Run given Powershell script (default: retrieve cat fact from API) - [**WINDOWS / Arbitrary Powershell**](arbitrary_powershell.yml) - Run given Powershell script (default: retrieve cat fact from API)
- [**WINDOWS / Powershell Script**](powershell_script.yml) - Run a Powershell script stored in source control to query services - [**WINDOWS / Powershell Script**](powershell_script.yml) - Run a Powershell script stored in source control to query services
- [**WINDOWS / Powershell DSC configuring password requirements**](powershell_dsc.yml) - Configure password complexity with Powershell desired state config - [**WINDOWS / Powershell DSC configuring password requirements**](powershell_dsc.yml) - Configure password complexity with Powershell desired state config
- [**WINDOWS / Create Active Directory Domain**](create_ad_domain.yml) - Create a new AD Domain - [**WINDOWS / Create Active Directory Domain**](active_directory/create_ad_domain.yml) - Create a new AD Domain
- [**WINDOWS / Helpdesk new user portal**](helpdesk_new_user_portal.yml) - Create user in AD Domain - [**WINDOWS / Helpdesk new user portal**](active_directory/helpdesk_new_user_portal.yml) - Create user in AD Domain
- [**WINDOWS / Join Active Directory Domain**](join_ad_domain.yml) - Join computer to AD Domain
## Suggested Usage ## Suggested Usage
**WINDOWS / Create Active Directory Domain** - This job can take some to complete. It is recommended to run ahead of time if you would like to demo creating a helpdesk user. **WINDOWS / Create Active Directory Domain** - This job can take some to complete. It is recommended to run ahead of time if you would like to demo creating a helpdesk user.
**WINDOWS / Helpdesk new user portal** - This job is dependant on the Create Active Directory Domain completing before users can be created. **WINDOWS / Helpdesk new user portal** - This job is dependant on the Create Active Directory Domain completing before users can be created.
**WINDOWS / Join Active Directory Domain** - This job is dependant on the Create Active Directory Domain completing before computers can be joined.

View File

@@ -1,30 +0,0 @@
---
- name: Join Active Directory domain
hosts: "{{ _hosts | default(omit) }}"
gather_facts: false
tasks:
- name: Set a single address on the adapter named Ethernet
ansible.windows.win_dns_client:
adapter_names: 'Ethernet*'
dns_servers: "{{ hostvars[domain_controller]['private_ip_address'] }}"
- name: Ensure Demo OU exists
delegate_to: "{{ domain_controller }}"
community.windows.win_domain_ou:
name: Demo
state: present
- name: Join ansible.local domain
register: r_domain_membership
ansible.windows.win_domain_membership:
dns_domain_name: ansible.local
hostname: "{{ inventory_hostname }}"
domain_admin_user: "{{ ansible_user }}@ansible.local"
domain_admin_password: "{{ ansible_password }}"
domain_ou_path: "OU=Demo,DC=ansible,DC=local"
state: domain
- name: Reboot windows machine
when: r_domain_membership.reboot_required
ansible.windows.win_reboot:

View File

@@ -15,14 +15,14 @@ controller_projects:
controller_templates: controller_templates:
- name: "WINDOWS / Install IIS" - name: "WINDOWS / Install IIS"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "windows/install_iis.yml" playbook: "windows/install_iis.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -41,7 +41,7 @@ controller_templates:
use_fact_cache: true use_fact_cache: true
job_type: check job_type: check
ask_job_type_on_launch: true ask_job_type_on_launch: true
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "windows/patching.yml" playbook: "windows/patching.yml"
execution_environment: Default execution environment execution_environment: Default execution environment
@@ -49,7 +49,7 @@ controller_templates:
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -87,14 +87,14 @@ controller_templates:
- name: "WINDOWS / Chocolatey install multiple" - name: "WINDOWS / Chocolatey install multiple"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "windows/windows_choco_multiple.yml" playbook: "windows/windows_choco_multiple.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -107,14 +107,14 @@ controller_templates:
- name: "WINDOWS / Chocolatey install specific" - name: "WINDOWS / Chocolatey install specific"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "windows/windows_choco_specific.yml" playbook: "windows/windows_choco_specific.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -131,14 +131,14 @@ controller_templates:
- name: "WINDOWS / Run PowerShell" - name: "WINDOWS / Run PowerShell"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "windows/powershell.yml" playbook: "windows/powershell.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -156,14 +156,14 @@ controller_templates:
- name: "WINDOWS / Query Services" - name: "WINDOWS / Query Services"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "windows/powershell_script.yml" playbook: "windows/powershell_script.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -184,14 +184,14 @@ controller_templates:
- name: "WINDOWS / Configuring Password Requirements" - name: "WINDOWS / Configuring Password Requirements"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "windows/powershell_dsc.yml" playbook: "windows/powershell_dsc.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -202,16 +202,16 @@ controller_templates:
variable: _hosts variable: _hosts
required: false required: false
- name: "WINDOWS / AD / Create Domain" - name: "WINDOWS / AD /Create Domain"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "windows/create_ad_domain.yml" playbook: "windows/create_ad_domain.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -222,41 +222,16 @@ controller_templates:
variable: _hosts variable: _hosts
required: false required: false
- name: "WINDOWS / AD / Join Domain"
job_type: run
inventory: "Demo Inventory"
project: "Ansible official demo project"
playbook: "windows/join_ad_domain.yml"
notification_templates_started: Telemetry
notification_templates_success: Telemetry
notification_templates_error: Telemetry
credentials:
- "Demo Credential"
survey_enabled: true
survey:
name: ''
description: ''
spec:
- question_name: Server Name or Pattern
type: text
variable: _hosts
required: true
- question_name: Domain Controller Inventory Hostname
type: text
variable: domain_controller
required: true
description: Inventory hostname for domain controller previously established using the Create Domain template
- name: "WINDOWS / AD / New User" - name: "WINDOWS / AD / New User"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "windows/helpdesk_new_user_portal.yml" playbook: "windows/helpdesk_new_user_portal.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''
@@ -293,14 +268,14 @@ controller_templates:
- name: "WINDOWS / DISA STIG" - name: "WINDOWS / DISA STIG"
job_type: run job_type: run
inventory: "Demo Inventory" inventory: "Workshop Inventory"
project: "Ansible official demo project" project: "Ansible official demo project"
playbook: "windows/compliance.yml" playbook: "windows/compliance.yml"
notification_templates_started: Telemetry notification_templates_started: Telemetry
notification_templates_success: Telemetry notification_templates_success: Telemetry
notification_templates_error: Telemetry notification_templates_error: Telemetry
credentials: credentials:
- "Demo Credential" - "Workshop Credential"
survey_enabled: true survey_enabled: true
survey: survey:
name: '' name: ''