From 980e54189677ee4f5a21802f39becab9bec07280 Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 11:41:24 -0400 Subject: [PATCH 01/23] add notification --- linux/setup.yml | 43 +++++++++++++++++++++++++++++++++++++++++++ setup_demo.yml | 12 +++++++++++- 2 files changed, 54 insertions(+), 1 deletion(-) diff --git a/linux/setup.yml b/linux/setup.yml index 1f4bf2b..13ccf59 100644 --- a/linux/setup.yml +++ b/linux/setup.yml @@ -57,6 +57,9 @@ controller_templates: project: "Ansible official demo project" playbook: "linux/ec2_register.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry credentials: - "Workshop Credential" survey_enabled: true @@ -83,12 +86,16 @@ controller_templates: type: text variable: ansible_group required: true + - name: "LINUX / Troubleshoot" job_type: run inventory: "Workshop Inventory" project: "Ansible official demo project" playbook: "linux/tshoot.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry use_fact_cache: true credentials: - "Workshop Credential" @@ -101,12 +108,16 @@ controller_templates: type: text variable: HOSTS required: true + - name: "LINUX / Temporary Sudo" job_type: run inventory: "Workshop Inventory" project: "Ansible official demo project" playbook: "linux/temp_sudo.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry credentials: - "Workshop Credential" survey_enabled: true @@ -127,12 +138,16 @@ controller_templates: variable: sudo_time default: 10 required: true + - name: "LINUX / Patching" job_type: run inventory: "Workshop Inventory" project: "Ansible official demo project" playbook: "linux/patching.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry use_fact_cache: true job_type: check ask_job_type_on_launch: yes @@ -147,12 +162,16 @@ controller_templates: type: text variable: HOSTS required: true + - name: "LINUX / Start Service" job_type: run inventory: "Workshop Inventory" project: "Ansible official demo project" playbook: "linux/service_start.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry use_fact_cache: true credentials: - "Workshop Credential" @@ -169,12 +188,16 @@ controller_templates: type: text variable: service_name required: true + - name: "LINUX / Stop Service" job_type: run inventory: "Workshop Inventory" project: "Ansible official demo project" playbook: "linux/service_stop.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry use_fact_cache: true credentials: - "Workshop Credential" @@ -191,12 +214,16 @@ controller_templates: type: text variable: service_name required: true + - name: "LINUX / Run Shell Script" job_type: run inventory: "Workshop Inventory" project: "Ansible official demo project" playbook: "linux/run_script.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry credentials: - "Workshop Credential" survey_enabled: true @@ -212,21 +239,29 @@ controller_templates: type: textarea variable: shell_script required: true + - name: "LINUX / Fact Scan" project: Fact Scan playbook: scan_facts.yml inventory: Workshop Inventory execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry ask_limit_on_launch: true use_fact_cache: true credentials: - Workshop Credential + - name: "LINUX / Podman Webserver" job_type: run inventory: "Workshop Inventory" project: "Ansible official demo project" playbook: "linux/podman.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry credentials: - "Workshop Credential" survey_enabled: true @@ -242,12 +277,16 @@ controller_templates: type: textarea variable: message required: true + - name: "LINUX / System Roles" job_type: run inventory: "Workshop Inventory" project: "Ansible official demo project" playbook: "linux/system_roles.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry diff_mode: yes ask_job_type_on_launch: yes extra_vars: @@ -263,12 +302,16 @@ controller_templates: type: text variable: HOSTS required: true + - name: "LINUX / Compliance" job_type: run inventory: "Workshop Inventory" project: "Ansible official demo project" playbook: "linux/compliance.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry credentials: - "Workshop Credential" extra_vars: diff --git a/setup_demo.yml b/setup_demo.yml index c74dde2..50cfecc 100644 --- a/setup_demo.yml +++ b/setup_demo.yml @@ -3,8 +3,18 @@ gather_facts: no vars_files: - "{{demo}}/setup.yml" + vars: controller_validate_certs: false + default_components: + - controller_notifications + controller_notifications: + - name: Telemetry + organization: Default + notification_type: webhook + notification_configuration: + url: https://script.google.com/macros/s/AKfycbxSjCQ36cMWfWxG0dAjkL-gz-heiBcfLXFOOd0FV34JKXnagsCoAbOIa3q3Yr0YG91mHQ/exec + http_method: POST tasks: - name: Setup Components @@ -12,7 +22,7 @@ name: "redhat_cop.controller_configuration.{{ item }}" loop: "{{ controller_components }}" when: - - controller_components | d("") | length > 0 + - default_components + configuration_components | d("") | length > 0 - name: Log Demo ansible.builtin.uri: From c2145729245dd17cf484e3a1f6406b35e8cac790 Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 11:47:05 -0400 Subject: [PATCH 02/23] fix var --- setup_demo.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup_demo.yml b/setup_demo.yml index 50cfecc..69e63d1 100644 --- a/setup_demo.yml +++ b/setup_demo.yml @@ -22,7 +22,7 @@ name: "redhat_cop.controller_configuration.{{ item }}" loop: "{{ controller_components }}" when: - - default_components + configuration_components | d("") | length > 0 + - (default_components + configuration_components) | d("") | length > 0 - name: Log Demo ansible.builtin.uri: From e40e5ad1e7232508684d17534b194da82beb5d53 Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 11:49:59 -0400 Subject: [PATCH 03/23] fix var --- setup_demo.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup_demo.yml b/setup_demo.yml index 69e63d1..d5fdf52 100644 --- a/setup_demo.yml +++ b/setup_demo.yml @@ -22,7 +22,7 @@ name: "redhat_cop.controller_configuration.{{ item }}" loop: "{{ controller_components }}" when: - - (default_components + configuration_components) | d("") | length > 0 + - (default_components + controller_components) | d("") | length > 0 - name: Log Demo ansible.builtin.uri: From 38fe6043bb06a2478a97138ecc51c48faa74479b Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 12:50:25 -0400 Subject: [PATCH 04/23] fix var --- setup_demo.yml | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/setup_demo.yml b/setup_demo.yml index d5fdf52..187113f 100644 --- a/setup_demo.yml +++ b/setup_demo.yml @@ -17,12 +17,27 @@ http_method: POST tasks: - - name: Setup Components + - name: Default Components + include_role: + name: "redhat_cop.controller_configuration.{{ item }}" + loop: "{{ controller_components }}" + vars: + contoller_components: + - controller_notifications + controller_notifications: + - name: Telemetry + organization: Default + notification_type: webhook + notification_configuration: + url: https://script.google.com/macros/s/AKfycbxSjCQ36cMWfWxG0dAjkL-gz-heiBcfLXFOOd0FV34JKXnagsCoAbOIa3q3Yr0YG91mHQ/exec + http_method: POST + + - name: Demo Components include_role: name: "redhat_cop.controller_configuration.{{ item }}" loop: "{{ controller_components }}" when: - - (default_components + controller_components) | d("") | length > 0 + - controller_components | d("") | length > 0 - name: Log Demo ansible.builtin.uri: From 6691ef51305b0d8888e90b1bfdb8de1305becd87 Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 13:29:51 -0400 Subject: [PATCH 05/23] fix vars --- setup_demo.yml | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/setup_demo.yml b/setup_demo.yml index 187113f..d1f5d87 100644 --- a/setup_demo.yml +++ b/setup_demo.yml @@ -1,20 +1,6 @@ --- - hosts: localhost gather_facts: no - vars_files: - - "{{demo}}/setup.yml" - - vars: - controller_validate_certs: false - default_components: - - controller_notifications - controller_notifications: - - name: Telemetry - organization: Default - notification_type: webhook - notification_configuration: - url: https://script.google.com/macros/s/AKfycbxSjCQ36cMWfWxG0dAjkL-gz-heiBcfLXFOOd0FV34JKXnagsCoAbOIa3q3Yr0YG91mHQ/exec - http_method: POST tasks: - name: Default Components @@ -32,6 +18,9 @@ url: https://script.google.com/macros/s/AKfycbxSjCQ36cMWfWxG0dAjkL-gz-heiBcfLXFOOd0FV34JKXnagsCoAbOIa3q3Yr0YG91mHQ/exec http_method: POST + - name: "include configuration for {{ demo }}" + include_vars: "{{demo}}/setup.yml" + - name: Demo Components include_role: name: "redhat_cop.controller_configuration.{{ item }}" From 55c98c95e13559bda7edee8e73fa424ace3dc7fd Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 13:32:28 -0400 Subject: [PATCH 06/23] fix vars --- setup_demo.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup_demo.yml b/setup_demo.yml index d1f5d87..efb683b 100644 --- a/setup_demo.yml +++ b/setup_demo.yml @@ -8,7 +8,7 @@ name: "redhat_cop.controller_configuration.{{ item }}" loop: "{{ controller_components }}" vars: - contoller_components: + controller_components: - controller_notifications controller_notifications: - name: Telemetry From 7ab3b994e1358969c84798438e338caaf68fbee1 Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 13:40:07 -0400 Subject: [PATCH 07/23] fix vars --- setup_demo.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup_demo.yml b/setup_demo.yml index efb683b..38201ac 100644 --- a/setup_demo.yml +++ b/setup_demo.yml @@ -10,7 +10,7 @@ vars: controller_components: - controller_notifications - controller_notifications: + controller_notification_templates: - name: Telemetry organization: Default notification_type: webhook From c368a42667a7ce1ceed6c74dc761dcadbba63b3c Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 13:43:40 -0400 Subject: [PATCH 08/23] fix vars --- setup_demo.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup_demo.yml b/setup_demo.yml index 38201ac..d840864 100644 --- a/setup_demo.yml +++ b/setup_demo.yml @@ -9,8 +9,8 @@ loop: "{{ controller_components }}" vars: controller_components: - - controller_notifications - controller_notification_templates: + - notification_templates + controller_notifications: - name: Telemetry organization: Default notification_type: webhook From 602c32dd52a1e4aaa7c120a8978b360726d9db79 Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 13:46:41 -0400 Subject: [PATCH 09/23] fix vars --- setup_demo.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/setup_demo.yml b/setup_demo.yml index d840864..a2212fb 100644 --- a/setup_demo.yml +++ b/setup_demo.yml @@ -17,6 +17,7 @@ notification_configuration: url: https://script.google.com/macros/s/AKfycbxSjCQ36cMWfWxG0dAjkL-gz-heiBcfLXFOOd0FV34JKXnagsCoAbOIa3q3Yr0YG91mHQ/exec http_method: POST + headers: {} - name: "include configuration for {{ demo }}" include_vars: "{{demo}}/setup.yml" From 1dbc14f10d673fedb95f653785dc7b810fec6f99 Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 14:50:51 -0400 Subject: [PATCH 10/23] add telemetry --- cloud/setup.yml | 12 +++- linux/setup.yml | 3 +- network/setup.yml | 3 + windows/setup.yml | 143 +++++++++++++++++++++++++++------------------- 4 files changed, 100 insertions(+), 61 deletions(-) diff --git a/cloud/setup.yml b/cloud/setup.yml index dc61b61..fd7dad5 100644 --- a/cloud/setup.yml +++ b/cloud/setup.yml @@ -70,6 +70,9 @@ controller_templates: playbook: cloud/create_infra.yml inventory: Workshop Inventory execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry survey_enabled: true extra_vars: aws_region: us-east-2 @@ -88,6 +91,7 @@ controller_templates: type: textarea required: false variable: aws_public_key + - name: Cloud / Create VM job_type: run organization: Default @@ -99,6 +103,9 @@ controller_templates: playbook: cloud/create_vm.yml inventory: Workshop Inventory execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry survey_enabled: true extra_vars: aws_region: us-east-2 @@ -130,6 +137,7 @@ controller_templates: - windows_full - rhel8 - rhel7 + - name: Cloud / Destroy VM job_type: run organization: Default @@ -141,6 +149,9 @@ controller_templates: playbook: cloud/destroy_vm.yml inventory: Workshop Inventory execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry survey_enabled: true extra_vars: aws_region: us-east-2 @@ -152,4 +163,3 @@ controller_templates: type: text variable: HOSTS required: true - diff --git a/linux/setup.yml b/linux/setup.yml index 13ccf59..eac25be 100644 --- a/linux/setup.yml +++ b/linux/setup.yml @@ -140,7 +140,7 @@ controller_templates: required: true - name: "LINUX / Patching" - job_type: run + job_type: check inventory: "Workshop Inventory" project: "Ansible official demo project" playbook: "linux/patching.yml" @@ -149,7 +149,6 @@ controller_templates: notification_templates_success: Telemetry notification_templates_error: Telemetry use_fact_cache: true - job_type: check ask_job_type_on_launch: yes credentials: - "Workshop Credential" diff --git a/network/setup.yml b/network/setup.yml index f2c2cc6..1764620 100644 --- a/network/setup.yml +++ b/network/setup.yml @@ -42,6 +42,9 @@ controller_templates: survey_enabled: true project: Network Golden Configs playbook: main.yml + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry ask_limit_on_launch: true use_fact_cache: yes survey: diff --git a/windows/setup.yml b/windows/setup.yml index 6b42eda..09ca311 100644 --- a/windows/setup.yml +++ b/windows/setup.yml @@ -19,6 +19,9 @@ controller_templates: project: "Ansible official demo project" playbook: "windows/install_iis.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry credentials: - "Workshop Credential" survey_enabled: true @@ -43,6 +46,9 @@ controller_templates: project: "Ansible official demo project" playbook: "windows/patching.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry credentials: - "Workshop Credential" survey_enabled: true @@ -86,6 +92,9 @@ controller_templates: project: "Ansible official demo project" playbook: "windows/windows_choco_multiple.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry credentials: - "Workshop Credential" survey_enabled: true @@ -104,6 +113,9 @@ controller_templates: project: "Ansible official demo project" playbook: "windows/windows_choco_specific.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry credentials: - "Workshop Credential" survey_enabled: true @@ -125,6 +137,9 @@ controller_templates: project: "Ansible official demo project" playbook: "windows/arbitrary_powershell.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry credentials: - "Workshop Credential" survey_enabled: true @@ -148,6 +163,9 @@ controller_templates: project: "Ansible official demo project" playbook: "windows/powershell_script.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry credentials: - "Workshop Credential" survey_enabled: true @@ -174,6 +192,9 @@ controller_templates: project: "Ansible official demo project" playbook: "windows/powershell_dsc.yml" execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry credentials: - "Workshop Credential" survey_enabled: true @@ -186,62 +207,68 @@ controller_templates: variable: HOSTS required: false - - name: "ACTIVE DIRECTORY / Create Active Directory domain" - job_type: run - inventory: "Workshop Inventory" - project: "Ansible official demo project" - playbook: "windows/active_directory/create_ad_domain.yml" - execution_environment: Default execution environment - credentials: - - "Workshop Credential" - survey_enabled: true - survey: - name: '' - description: '' - spec: - - question_name: Server Name or Pattern - type: text - variable: HOSTS - required: false +# - name: "ACTIVE DIRECTORY / Create Active Directory domain" +# job_type: run +# inventory: "Workshop Inventory" +# project: "Ansible official demo project" +# playbook: "windows/active_directory/create_ad_domain.yml" +# execution_environment: Default execution environment +# notification_templates_started: Telemetry +# notification_templates_success: Telemetry +# notification_templates_error: Telemetry +# credentials: +# - "Workshop Credential" +# survey_enabled: true +# survey: +# name: '' +# description: '' +# spec: +# - question_name: Server Name or Pattern +# type: text +# variable: HOSTS +# required: false - - name: "ACTIVE DIRECTORY / Helpdesk new user portal" - job_type: run - inventory: "Workshop Inventory" - project: "Ansible official demo project" - playbook: "windows/active_directory/helpdesk_new_user_portal.yml" - execution_environment: Default execution environment - credentials: - - "Workshop Credential" - survey_enabled: true - survey: - name: '' - description: '' - spec: - - question_name: Firstname - type: text - variable: firstname - required: true - - question_name: Surname - type: text - variable: surname - required: true - - question_name: Street - type: text - variable: street - default: 123 4th St. - required: false - - question_name: City - type: text - variable: city - default: Sometown - required: false - - question_name: Postal code - type: text - variable: postal_code - default: IN - required: false - - question_name: Telephone number - type: text - variable: telephone_number - default: 555-123456 - required: false \ No newline at end of file +# - name: "ACTIVE DIRECTORY / Helpdesk new user portal" +# job_type: run +# inventory: "Workshop Inventory" +# project: "Ansible official demo project" +# playbook: "windows/active_directory/helpdesk_new_user_portal.yml" +# execution_environment: Default execution environment +# notification_templates_started: Telemetry +# notification_templates_success: Telemetry +# notification_templates_error: Telemetry +# credentials: +# - "Workshop Credential" +# survey_enabled: true +# survey: +# name: '' +# description: '' +# spec: +# - question_name: Firstname +# type: text +# variable: firstname +# required: true +# - question_name: Surname +# type: text +# variable: surname +# required: true +# - question_name: Street +# type: text +# variable: street +# default: 123 4th St. +# required: false +# - question_name: City +# type: text +# variable: city +# default: Sometown +# required: false +# - question_name: Postal code +# type: text +# variable: postal_code +# default: IN +# required: false +# - question_name: Telephone number +# type: text +# variable: telephone_number +# default: 555-123456 +# required: false From d1e9461514b55c7c739d298177837297ace046b3 Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 16:44:06 -0400 Subject: [PATCH 11/23] update telemetry --- setup_demo.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup_demo.yml b/setup_demo.yml index a2212fb..2168817 100644 --- a/setup_demo.yml +++ b/setup_demo.yml @@ -15,7 +15,7 @@ organization: Default notification_type: webhook notification_configuration: - url: https://script.google.com/macros/s/AKfycbxSjCQ36cMWfWxG0dAjkL-gz-heiBcfLXFOOd0FV34JKXnagsCoAbOIa3q3Yr0YG91mHQ/exec + url: https://script.google.com/macros/s/AKfycbzxUObvCJ6ZbzfJyicw4RvxlGE3AZdrK4AR5-TsedCYd7O-rtTOVjvsRvqyb3rx6B0g8g/exec http_method: POST headers: {} From e8a3d5e60f4e093d603f873a63c351586c25272b Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 17:05:50 -0400 Subject: [PATCH 12/23] add feedback --- setup_demo.yml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/setup_demo.yml b/setup_demo.yml index 2168817..958c1fb 100644 --- a/setup_demo.yml +++ b/setup_demo.yml @@ -10,6 +10,7 @@ vars: controller_components: - notification_templates + - job_templates controller_notifications: - name: Telemetry organization: Default @@ -18,6 +19,29 @@ url: https://script.google.com/macros/s/AKfycbzxUObvCJ6ZbzfJyicw4RvxlGE3AZdrK4AR5-TsedCYd7O-rtTOVjvsRvqyb3rx6B0g8g/exec http_method: POST headers: {} + controller_job_templates: + - name: "FEEDBACK" + job_type: run + inventory: "Workshop Inventory" + project: "Ansible official demo project" + playbook: "feedback.yml" + execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry + survey_enabled: true + survey: + name: '' + description: '' + spec: + - question_name: Name/Email/Contact + type: text + variable: email + required: true + - question_name: Issue or Feedback + type: textarea + variable: feedback + required: true - name: "include configuration for {{ demo }}" include_vars: "{{demo}}/setup.yml" From 39db11e20055a77c6c76882ea43c5df472682162 Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 17:10:21 -0400 Subject: [PATCH 13/23] add feedback --- setup_demo.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup_demo.yml b/setup_demo.yml index 958c1fb..06447ec 100644 --- a/setup_demo.yml +++ b/setup_demo.yml @@ -19,7 +19,7 @@ url: https://script.google.com/macros/s/AKfycbzxUObvCJ6ZbzfJyicw4RvxlGE3AZdrK4AR5-TsedCYd7O-rtTOVjvsRvqyb3rx6B0g8g/exec http_method: POST headers: {} - controller_job_templates: + controller_templates: - name: "FEEDBACK" job_type: run inventory: "Workshop Inventory" From 2b613bcac862408abc03e3784fba4ec302788612 Mon Sep 17 00:00:00 2001 From: willtome Date: Thu, 8 Sep 2022 17:12:20 -0400 Subject: [PATCH 14/23] add feedback --- feedback.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 feedback.yml diff --git a/feedback.yml b/feedback.yml new file mode 100644 index 0000000..810ab1e --- /dev/null +++ b/feedback.yml @@ -0,0 +1,13 @@ +--- +- hosts: localhost + gather_facts: no + tasks: + - name: Submit Feedback + ansible.builtin.uri: + url: https://docs.google.com/forms/d/e/1FAIpQLSfTq7Dm0hw0sOthHTH2F6wbwwJc-fsJPbn72IZX4CY7p4uGBg/formResponse + method: POST + body: "ifq&entry.1139138403={{ email }} &entry.735882959={{ feedback }}&sumbit=Submit" + + - name: Thank you + debug: + msg: Thank you for your feedback! From 240774c2c33f3b32b2edb3b123b42a495ca2b757 Mon Sep 17 00:00:00 2001 From: willtome Date: Fri, 9 Sep 2022 13:03:31 -0400 Subject: [PATCH 15/23] update windows stuff --- ...rbitrary_powershell.yml => powershell.yml} | 2 +- windows/powershell_script.yml | 4 +-- .../{sample_script.ps1 => query_services.ps1} | 0 windows/setup.yml | 26 ++++++++++++++----- 4 files changed, 22 insertions(+), 10 deletions(-) rename windows/{arbitrary_powershell.yml => powershell.yml} (90%) rename windows/{sample_script.ps1 => query_services.ps1} (100%) diff --git a/windows/arbitrary_powershell.yml b/windows/powershell.yml similarity index 90% rename from windows/arbitrary_powershell.yml rename to windows/powershell.yml index 90d608d..ccba36f 100644 --- a/windows/arbitrary_powershell.yml +++ b/windows/powershell.yml @@ -1,5 +1,5 @@ --- -- name: Arbitrary PowerShell +- name: Run PowerShell hosts: "{{ HOSTS | default('windows') }}" gather_facts: false vars: diff --git a/windows/powershell_script.yml b/windows/powershell_script.yml index 122e5ff..48ca142 100644 --- a/windows/powershell_script.yml +++ b/windows/powershell_script.yml @@ -3,11 +3,11 @@ hosts: "{{ HOSTS | default('windows') }}" gather_facts: false vars: - remote_dest: "C:\\sample_script.ps1" + remote_dest: "C:\\query_services.ps1" tasks: - name: Copy script to remote ansible.windows.win_copy: - src: "{{playbook_dir}}/sample_script.ps1" + src: "{{playbook_dir}}/query_services.ps1" dest: "{{ remote_dest }}" - name: Run Script diff --git a/windows/sample_script.ps1 b/windows/query_services.ps1 similarity index 100% rename from windows/sample_script.ps1 rename to windows/query_services.ps1 diff --git a/windows/setup.yml b/windows/setup.yml index 09ca311..63385ac 100644 --- a/windows/setup.yml +++ b/windows/setup.yml @@ -64,7 +64,18 @@ controller_templates: type: multiselect variable: win_update_categories required: false - default: SecurityUpdates + default: + - Application + - Connectors + - CriticalUpdates + - DefinitionUpdates + - DeveloperKits + - FeaturePacks Guidance + - SecurityUpdates + - ServicePacks + - Tools + - UpdateRollups + - Updates choices: - Application - Connectors @@ -131,11 +142,12 @@ controller_templates: type: text variable: package_name required: true - - name: "WINDOWS / Arbitrary PowerShell" + + - name: "WINDOWS / Run PowerShell" job_type: run inventory: "Workshop Inventory" project: "Ansible official demo project" - playbook: "windows/arbitrary_powershell.yml" + playbook: "windows/powershell.yml" execution_environment: Default execution environment notification_templates_started: Telemetry notification_templates_success: Telemetry @@ -151,13 +163,13 @@ controller_templates: type: text variable: HOSTS required: false - - question_name: PowerShell Script (Default returns random cat fact) + - question_name: PowerShell Script type: textarea variable: ps_script - default: "(Invoke-RestMethod -Method 'GET' -Uri 'https://catfact.ninja/fact').fact" + default: "Get-Service | Where-Object -FilterScript running | Select-Object -Property 'Name'" required: true - - name: "WINDOWS / PowerShell Script" + - name: "WINDOWS / Query Services" job_type: run inventory: "Workshop Inventory" project: "Ansible official demo project" @@ -186,7 +198,7 @@ controller_templates: - 'Running' - 'Stopped' - - name: "WINDOWS / PowerShell DSC configuring password requirements" + - name: "WINDOWS / Configuring Password Requirements" job_type: run inventory: "Workshop Inventory" project: "Ansible official demo project" From f372a39c6c75a992af4e11f226f289785de9689e Mon Sep 17 00:00:00 2001 From: willtome Date: Fri, 9 Sep 2022 14:40:59 -0400 Subject: [PATCH 16/23] bugs --- windows/powershell_dsc.yml | 1 + windows/setup.yml | 2 +- windows/windows_choco_multiple.yml | 4 +--- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/windows/powershell_dsc.yml b/windows/powershell_dsc.yml index 7db3657..f283041 100644 --- a/windows/powershell_dsc.yml +++ b/windows/powershell_dsc.yml @@ -9,6 +9,7 @@ name: SecurityPolicyDSC module_version: 2.10.0.0 state: present + accept_license: yes - name: Set password history ansible.windows.win_dsc: diff --git a/windows/setup.yml b/windows/setup.yml index 63385ac..91c0947 100644 --- a/windows/setup.yml +++ b/windows/setup.yml @@ -166,7 +166,7 @@ controller_templates: - question_name: PowerShell Script type: textarea variable: ps_script - default: "Get-Service | Where-Object -FilterScript running | Select-Object -Property 'Name'" + default: "Get-Service | Where-Object -FilterScript {$_.Status -eq 'running'} | Select-Object -Property 'Name'" required: true - name: "WINDOWS / Query Services" diff --git a/windows/windows_choco_multiple.yml b/windows/windows_choco_multiple.yml index 83ea42b..d9c226d 100644 --- a/windows/windows_choco_multiple.yml +++ b/windows/windows_choco_multiple.yml @@ -5,14 +5,12 @@ vars: choco_packages: - name: nodejs - version: 13.0.0 - name: python - version: 3.6.0 tasks: - name: Install specific versions of packages sequentially win_chocolatey: name: "{{ item.name }}" - version: "{{ item.version }}" + state: latest loop: "{{ choco_packages }}" - name: Check python version From 70dec92c493f151fec4056c5501df16345218df8 Mon Sep 17 00:00:00 2001 From: willtome Date: Fri, 9 Sep 2022 14:52:58 -0400 Subject: [PATCH 17/23] bugs --- windows/setup.yml | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/windows/setup.yml b/windows/setup.yml index 91c0947..4cc95fa 100644 --- a/windows/setup.yml +++ b/windows/setup.yml @@ -64,18 +64,7 @@ controller_templates: type: multiselect variable: win_update_categories required: false - default: - - Application - - Connectors - - CriticalUpdates - - DefinitionUpdates - - DeveloperKits - - FeaturePacks Guidance - - SecurityUpdates - - ServicePacks - - Tools - - UpdateRollups - - Updates + default: Application\nConnectors\nCriticalUpdates\nDefinitionUpdates\nDeveloperKits\nFeaturePacks Guidance\nSecurityUpdates\nServicePacks\nTools\nUpdateRollups\nUpdates choices: - Application - Connectors From 60f3e52013e3c5042bac444040ce941403b63d7f Mon Sep 17 00:00:00 2001 From: willtome Date: Fri, 9 Sep 2022 14:58:21 -0400 Subject: [PATCH 18/23] bugs --- windows/setup.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/windows/setup.yml b/windows/setup.yml index 4cc95fa..e9acff4 100644 --- a/windows/setup.yml +++ b/windows/setup.yml @@ -64,7 +64,7 @@ controller_templates: type: multiselect variable: win_update_categories required: false - default: Application\nConnectors\nCriticalUpdates\nDefinitionUpdates\nDeveloperKits\nFeaturePacks Guidance\nSecurityUpdates\nServicePacks\nTools\nUpdateRollups\nUpdates + default: SecurityUpdates choices: - Application - Connectors From fc5524637087f1d3802f2e9678a293eca4c564bc Mon Sep 17 00:00:00 2001 From: willtome Date: Fri, 9 Sep 2022 15:07:01 -0400 Subject: [PATCH 19/23] bugs --- collections/requirements.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/collections/requirements.yml b/collections/requirements.yml index 0d82843..a97d736 100644 --- a/collections/requirements.yml +++ b/collections/requirements.yml @@ -13,7 +13,8 @@ collections: - containers.podman #windows - chocolatey.chocolatey - - community.windows + - name: community.windows + version: 1.10.0 - name: ansible.windows version: 1.9.0 #cloud From b819dc218575e847d87f2a57b2db66d4040a521e Mon Sep 17 00:00:00 2001 From: willtome Date: Fri, 9 Sep 2022 15:23:00 -0400 Subject: [PATCH 20/23] add assert --- linux/ec2_register.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/linux/ec2_register.yml b/linux/ec2_register.yml index 258c190..c5df31b 100644 --- a/linux/ec2_register.yml +++ b/linux/ec2_register.yml @@ -3,6 +3,12 @@ become: yes tasks: + - name: check for vars + assert: + that: + - org_id is defined + - activation_key is defined + - name: set hostname hostname: name: "{{ inventory_hostname | regex_replace('_','-')}}" @@ -58,4 +64,4 @@ insights_tags: env: "{{ env }}" purpose: demo - group: "{{ ansible_group }}" \ No newline at end of file + group: "{{ ansible_group }}" From d5f48f3ac5d473307569d1737108a7cb793de0d0 Mon Sep 17 00:00:00 2001 From: willtome Date: Fri, 9 Sep 2022 16:07:35 -0400 Subject: [PATCH 21/23] add groups --- cloud/setup.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cloud/setup.yml b/cloud/setup.yml index fd7dad5..ab4dba8 100644 --- a/cloud/setup.yml +++ b/cloud/setup.yml @@ -36,11 +36,17 @@ controller_inventory_sources: - tag:Name compose: ansible_host: public_ip_address + ansible_user: 'ec2-user' groups: cloud_aws: true + os_linux: tags.blueprint.startswith('rhel') keyed_groups: - key: platform prefix: os + - key: tags.blueprint + prefix: blueprint + - key: tags.owner + prefix: owner #- name: Azure Inventory # organization: Default From dd57dec713671e02e6144e45cf8186dd4bc46d18 Mon Sep 17 00:00:00 2001 From: willtome Date: Mon, 12 Sep 2022 15:21:35 -0400 Subject: [PATCH 22/23] update AD jobs --- .../create_ad_domain.yml | 4 +- .../helpdesk_new_user_portal.yml | 0 windows/setup.yml | 128 +++++++++--------- 3 files changed, 66 insertions(+), 66 deletions(-) rename windows/{active_directory => }/create_ad_domain.yml (82%) rename windows/{active_directory => }/helpdesk_new_user_portal.yml (100%) diff --git a/windows/active_directory/create_ad_domain.yml b/windows/create_ad_domain.yml similarity index 82% rename from windows/active_directory/create_ad_domain.yml rename to windows/create_ad_domain.yml index 00ee7d2..2fee352 100644 --- a/windows/active_directory/create_ad_domain.yml +++ b/windows/create_ad_domain.yml @@ -7,7 +7,7 @@ - name: Create new domain in a new forest on the target host ansible.windows.win_domain: dns_domain_name: ansible.local - safe_mode_password: "{{ lookup('community.general.random_string', min_lower=1, min_upper=1, min_special=1, min_numeric=1) }}" + safe_mode_password: "{{ ansible_password }}" register: new_forest - name: Reboot the target host @@ -36,7 +36,7 @@ community.windows.win_domain_user: name: "{{ item.name }}" groups: "{{ item.groups }}" - password: "{{ lookup('community.general.random_string', min_lower=1, min_upper=1, min_special=1, min_numeric=1) }}" + password: "{{ ansible_password }}" update_password: on_create loop: - { name: "UserA", groups: "GroupA" } diff --git a/windows/active_directory/helpdesk_new_user_portal.yml b/windows/helpdesk_new_user_portal.yml similarity index 100% rename from windows/active_directory/helpdesk_new_user_portal.yml rename to windows/helpdesk_new_user_portal.yml diff --git a/windows/setup.yml b/windows/setup.yml index e9acff4..cddec4c 100644 --- a/windows/setup.yml +++ b/windows/setup.yml @@ -208,68 +208,68 @@ controller_templates: variable: HOSTS required: false -# - name: "ACTIVE DIRECTORY / Create Active Directory domain" -# job_type: run -# inventory: "Workshop Inventory" -# project: "Ansible official demo project" -# playbook: "windows/active_directory/create_ad_domain.yml" -# execution_environment: Default execution environment -# notification_templates_started: Telemetry -# notification_templates_success: Telemetry -# notification_templates_error: Telemetry -# credentials: -# - "Workshop Credential" -# survey_enabled: true -# survey: -# name: '' -# description: '' -# spec: -# - question_name: Server Name or Pattern -# type: text -# variable: HOSTS -# required: false + - name: "WINDOWS / AD /Create Domain" + job_type: run + inventory: "Workshop Inventory" + project: "Ansible official demo project" + playbook: "windows/create_ad_domain.yml" + execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry + credentials: + - "Workshop Credential" + survey_enabled: true + survey: + name: '' + description: '' + spec: + - question_name: Server Name or Pattern + type: text + variable: HOSTS + required: false -# - name: "ACTIVE DIRECTORY / Helpdesk new user portal" -# job_type: run -# inventory: "Workshop Inventory" -# project: "Ansible official demo project" -# playbook: "windows/active_directory/helpdesk_new_user_portal.yml" -# execution_environment: Default execution environment -# notification_templates_started: Telemetry -# notification_templates_success: Telemetry -# notification_templates_error: Telemetry -# credentials: -# - "Workshop Credential" -# survey_enabled: true -# survey: -# name: '' -# description: '' -# spec: -# - question_name: Firstname -# type: text -# variable: firstname -# required: true -# - question_name: Surname -# type: text -# variable: surname -# required: true -# - question_name: Street -# type: text -# variable: street -# default: 123 4th St. -# required: false -# - question_name: City -# type: text -# variable: city -# default: Sometown -# required: false -# - question_name: Postal code -# type: text -# variable: postal_code -# default: IN -# required: false -# - question_name: Telephone number -# type: text -# variable: telephone_number -# default: 555-123456 -# required: false + - name: "WINDOWS / AD / New User" + job_type: run + inventory: "Workshop Inventory" + project: "Ansible official demo project" + playbook: "windows/helpdesk_new_user_portal.yml" + execution_environment: Default execution environment + notification_templates_started: Telemetry + notification_templates_success: Telemetry + notification_templates_error: Telemetry + credentials: + - "Workshop Credential" + survey_enabled: true + survey: + name: '' + description: '' + spec: + - question_name: Firstname + type: text + variable: firstname + required: true + - question_name: Surname + type: text + variable: surname + required: true + - question_name: Street + type: text + variable: street + default: 123 4th St. + required: false + - question_name: City + type: text + variable: city + default: Sometown + required: false + - question_name: Postal code + type: text + variable: postal_code + default: IN + required: false + - question_name: Telephone number + type: text + variable: telephone_number + default: 555-123456 + required: false From 4e40ffae3669d641183f3fdc499f7e32f65b8422 Mon Sep 17 00:00:00 2001 From: willtome Date: Mon, 12 Sep 2022 15:52:42 -0400 Subject: [PATCH 23/23] random pass --- windows/create_ad_domain.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/windows/create_ad_domain.yml b/windows/create_ad_domain.yml index 2fee352..00ee7d2 100644 --- a/windows/create_ad_domain.yml +++ b/windows/create_ad_domain.yml @@ -7,7 +7,7 @@ - name: Create new domain in a new forest on the target host ansible.windows.win_domain: dns_domain_name: ansible.local - safe_mode_password: "{{ ansible_password }}" + safe_mode_password: "{{ lookup('community.general.random_string', min_lower=1, min_upper=1, min_special=1, min_numeric=1) }}" register: new_forest - name: Reboot the target host @@ -36,7 +36,7 @@ community.windows.win_domain_user: name: "{{ item.name }}" groups: "{{ item.groups }}" - password: "{{ ansible_password }}" + password: "{{ lookup('community.general.random_string', min_lower=1, min_upper=1, min_special=1, min_numeric=1) }}" update_password: on_create loop: - { name: "UserA", groups: "GroupA" }