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
- Ensure the "base repository" is set to "RedHatGov/product-demos" since this is a fork it defaults to it's parent "ansible/product-demos".
- PRs should include the playbook/demo and required entry in corresponding
<demo>/setup.yml
. - PRs should include documentation in corresponding
<demo>/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
ofsetup.yml
.
- Create a new branch based on main. (eg.
git checkout -b <branch name>
) - Add your playbook to the appropriate demo/section subdirectory.
- Make any changes needed to match the existing standards in the directory.
- Ex: Parameterized hosts
hosts: "{{ HOSTS | default('windows') }}"
- Create an entry for your playbook in your subdirectories
setup.yml
- You can copy paste an existing one and edit it.
- Ensure you edit the name, playbook path, survey etc.
- Add any needed roles/collections to the requirements.yml
- Test via RHPDS, specify your branch name within the project configuration.
- Create a new subdirectory with no spaces
- Create a new setup.yml copying appropriate elements from another
- Below is a sample skeleton for a new setup.yml
--- user_message: '' controller_components: - job_templates controller_templates: ...
controller_components
can be any of the roles defined here- Add variables for each component listed
- Include a README.md in the subdirectory