From e419c0b88d9836ba30dae571c18a9a2d1212c292 Mon Sep 17 00:00:00 2001 From: willtome Date: Wed, 3 Aug 2022 15:39:39 -0400 Subject: [PATCH] cleaning up docs --- CONTRIBUTING.md | 28 ++++++++++++++++++++-------- README.md | 23 ++++++++--------------- windows/README.md | 25 +++++++++++++++++++++++++ 3 files changed, 53 insertions(+), 23 deletions(-) create mode 100644 windows/README.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ffa5141..ba6ee68 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -3,32 +3,44 @@ This document aims to outline the requirements for the various forms of contribu **ALL** contributions are subject to review via pull request -## Pull requests +## Pull Requests 1) Ensure the "base repository" is set to "RedHatGov/product-demos" since this is a fork it defaults to it's parent "ansible/product-demos". -## New playbooks -1) Create a new branch based on main -2) Add your playbook to the appropriate OS/System subdirectory -3) Make any changes needed to match the existing standards in the direcotory. +### Pull Request Guidelines +- PRs should include the playbook/demo and required entry in corresponding `/setup.yml`. +- PRs should include documentation in corresponding `/README.md`. +- PRs should be rebased against the `main` branch to avoid conflicts. +- PRs should not impact more than a single directory/demo section. +- PRs should not rely on external infrastructure or configuration unless the dependency is automated or specified in the `user_message` of `setup.yml`. + +## Adding a New Demo +1) Create a new branch based on main. (eg. `git checkout -b `) +2) Add your playbook to the appropriate demo/section subdirectory. +3) Make any changes needed to match the existing standards in the directory. 1) Ex: Parameterized hosts ```ansible hosts: "{{ HOSTS | default('windows') }}" ``` -4) Create an entry for your playbook in your subdirectories setup.yml +4) Create an entry for your playbook in your subdirectories `setup.yml` 1) You can copy paste an existing one and edit it. 2) Ensure you edit the name, playbook path, survey etc. 5) Add any needed roles/collections to the [requirements.yml](/collections/requirements.yml) 6) Test via RHPDS, specify your branch name within the project configuration. -## New OS/Systems +## New Demo Section/Category 1) Create a new subdirectory with no spaces 2) Create a new setup.yml copying appropriate elements from another - 1) These should all be mostly the same at the top + - Below is a sample skeleton for a new setup.yml ```ansible --- + user_message: '' + controller_components: - job_templates controller_templates: ... ``` + - `controller_components` can be any of the roles defined [here](https://github.com/redhat-cop/controller_configuration/tree/devel/roles) + - Add variables for each component listed +3) Include a README.md in the subdirectory diff --git a/README.md b/README.md index d490a3b..b6d08c4 100644 --- a/README.md +++ b/README.md @@ -2,24 +2,19 @@ This is a centralized location for all Ansible Product Demos going forward. -| Demo Name | Description | -|------------------------------------------------------------------|---------------------------------------------------------------------------------------------| -| [AAP on CodeReady](aap-on-crc/README.md) | Repository and video of how to install Ansible Automation Platform on Code Ready Containers | -| [Infrastructure Demos](old-demo-repository#infrastructure-demos) | Azure, AWS, Chocolatey, Linux and Windows Demos | -| [Network Demos](old-demo-repository#network-demos) | Cisco IOS and F5 Demos | -| [Security Demos](old-demo-repository#security-demos) | OSCAP and hardening demos | -| [Developer Demos](old-demo-repository#developer-demos) | Create Reports with Ansible | +| Demo Name | Description | +|-----------|-------------| +| [Linux](linux/README.md) | Repository of demos for RHEL and Linux automation | +| [Windows](windows/README.md) | Repository of demos for Windows Server automation | +| [Cloud](cloud/README.md) | Demo for infrastructure and cloud provisioning automation | ## Contributions -Please push contributions via a pull request following the naming convention of name-of-demo. - -[![GitHub Super-Linter](https://github.com/ansible/ansible-demos/workflows/Lint%20Code%20Base/badge.svg)](https://github.com/marketplace/actions/super-linter) - +If you would like to contribute to this project please refer to [contribution guide](CONTRIBUTING.md) for best practices. ## Using this project - > This project is tested for compatibility with AAP2 Linux Automation Workshop available to Red Hat Employees and Partners. + > This project is tested for compatibility with AAP2 Linux Automation Workshop available to Red Hat Employees and Partners. To use with other Ansible Controller installations, review the [pre-requisite documentation](https://github.com/RedHatGov/ansible-tower-samples/tree/product-demos). 1. First you must create a credential for [Automation Hub](https://console.redhat.com/ansible/automation-hub/) to successfully sync collections used by this project. @@ -40,6 +35,4 @@ Please push contributions via a pull request following the naming convention of - Name: Controller Credential - Extra vars: - demo: - -4. If you require a Windows Active Directory domain you will need to run the "ACTIVE DIRECTORY / Create Active Directory domain" template after the Windows setup completes. This will create the "ansible.local" domain as well as a few generic users and groups. \ No newline at end of file + demo: diff --git a/windows/README.md b/windows/README.md new file mode 100644 index 0000000..518f4c7 --- /dev/null +++ b/windows/README.md @@ -0,0 +1,25 @@ +# Windows Demos + +## Table of Contents +- [Windows Demos](#windows-demos) + - [Table of Contents](#table-of-contents) + - [About These Demos](#about-these-demos) + - [Jobs](#jobs) + - [Suggested Usage](#suggested-usage) + +## About These Demos +This category of demos shows examples of Windows Server operations and management with Ansible Automation Platform. The list of demos can be found below. See the [Suggested Usage](#suggested-usage) section of this document for recommendations on how to best use these demos. + +### Jobs + +- [**WINDOWS / Install IIS**](install_iis.yml) - Install IIS feature with a configurable index.html +- [**WINDOWS / Patching**](patching.yml) - Apply Windows updates by category and create report +- [**WINDOWS / Chocolatey install multiple**](windows_choco_multiple.yml) - Install multiple packages using Chocolatey and check versions +- [**WINDOWS / Chocolatey install specific**](windows_choco_specific.yml) - Install a single given package using Chocolatey +- [**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 DSC configuring password requirements**](powershell_dsc.yml) - Configure password complexity with Powershell desired state config +- [**WINDOWS / Create Active Directory Domain**](active_directory/create_ad_domain.yml) - Create a new AD Domain +- [**WINDOWS / Helpdesk new user portal**](active_directory/helpdesk_new_user_portal.yml) - Create user in AD Domain + +## Suggested Usage