diff --git a/.github/images/project-architecture.png b/.github/images/project-architecture.png new file mode 100644 index 000000000..79d60b68d Binary files /dev/null and b/.github/images/project-architecture.png differ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2789479fb..3a54deec7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,12 +1,18 @@ # Contribution Guidelines This document aims to outline the requirements for the various forms of contribution for this project. -**ALL** contributions are subject to review via pull request +## Project Architecture + +![project-architecture](.github/images/project-architecture.png) ## Pull Requests + +**ALL** contributions are subject to review via pull request + +### Pull Requests 1) Ensure the "base repository" is set to "ansible/product-demos". -### Pull Request Guidelines +#### 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. @@ -19,13 +25,15 @@ This document aims to outline the requirements for the various forms of contribu 3) Make any changes needed to match the existing standards in the directory. 1) Ex: Parameterized hosts ```ansible - hosts: "{{ HOSTS | default('windows') }}" + hosts: "{{ _hosts | default('windows') }}" ``` 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. +6) Test via [demo.redhat.com](https://demo.redhat.com/catalog?item=babylon-catalog-prod/sandboxes-gpte.aap-product-demos.prod&utm_source=webapp&utm_medium=share-link), specify your branch name within the project configuration. + +> NOTE: demo.redhat.com is available to Red Hat Associates and Partners with a valid account. ## New Demo Section/Category 1) Create a new subdirectory with no spaces diff --git a/README.md b/README.md index c601e4b15..376c9827a 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ # Official Ansible Product Demos -This is a centralized location for all Ansible Product Demos going forward. +This is a centralized location for Ansible Product Demos. This project is a collection of use cases implemented with Ansible for use with the Ansible Automation Platform. | Demo Name | Description | |-----------|-------------| @@ -11,6 +11,7 @@ This is a centralized location for all Ansible Product Demos going forward. | [Windows](windows/README.md) | Repository of demos for Windows Server automation | | [Cloud](cloud/README.md) | Demo for infrastructure and cloud provisioning automation | | [Network](network/README.md) | Ansible Network automation demos | +| [Satellite](satellite/README.md) | Demos of automation with Red Hat Satellite Server | ## Contributions @@ -18,15 +19,20 @@ If you would like to contribute to this project please refer to [contribution gu ## Using this project - > 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). +This project is tested for compatibility with the [demo.redhat.com Product Demos Sandbox]([red.ht/aap-product-demos](https://demo.redhat.com/catalog?item=babylon-catalog-prod/sandboxes-gpte.aap-product-demos.prod&utm_source=webapp&utm_medium=share-link)) lab environment. To use with other Ansible Controller installations, review the [prerequisite documentation](https://github.com/RedHatGov/ansible-tower-samples). + +> NOTE: demo.redhat.com is available to Red Hat Associates and Partners with a valid account. 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. 1. In the Credentials section of the Controller UI, add a new Credential called `Automation Hub` with the type `Ansible Galaxy/Automation Hub API Token` 2. You can obtain a token [here](https://console.redhat.com/ansible/automation-hub/token). This page will also provide the Server URL and Auth Server URL. - 3. Next, click on Organizations and edit the `Default` organization. Add your `Automation Hub` credential to the `Galaxy Credentials` section. Don't forget to click Save!! + 3. Next, click on Organizations and edit the `Default` organization. Add your `Automation Hub` credential to the `Galaxy Credentials` section. Don't forget to click **Save**!! + + > You can also use an execution environment for disconnected environments. To do this, you must disable collection downloads in the Controller. This can be done in `Settings` > `Job Settings`. This setting prevents the controller from downloading collections listed in the [collections/requirements.yml](collections/requirements.yml) file. + +2. If it is not already created for you, create a Project called `Ansible official demo project` with this repo as a source. NOTE: if you are using a fork, be sure that you have the correct URL. Update the project. -2. If it has not been created for you, add a Project called `Ansible official demo project` with this repo as a source. NOTE: if you are using a fork, be sure that you have the correct URL. Update the project. 3. Finally, Create a Job Template called `Setup` with the following configuration: - Name: Setup @@ -34,9 +40,22 @@ If you would like to contribute to this project please refer to [contribution gu - Exec Env: Control Plane EE - Playbook: setup_demo.yml - Credentials: - - Type: Red Hat Ansible Automation Platform - Name: Controller Credential - Extra vars: - + demo: + +## Bring Your Own Demo + +Can't find what you're looking for? Customize this repo to make it your own. + +1. Create a fork of this repo. +2. Update the URL of the `Ansible official demo project` in the Controller. +3. Make changes as needed and run the **Setup** job + +See the [contribution guide](CONTRIBUTING.md) for more details on how to customize the project. + +--- + +[Privacy statement](https://www.redhat.com/en/about/privacy-policy) | [Terms of use](https://www.redhat.com/en/about/terms-use) | [Security disclosure](https://www.ansible.com/security?hsLang=en-us) | [All policies and guidelines](https://www.redhat.com/en/about/all-policies-guidelines)