ansible-role-kojid/README.md

39 lines
1.9 KiB
Markdown
Raw Permalink Normal View History

2020-12-18 22:55:55 +00:00
CI Badge
2021-01-04 08:17:40 +00:00
# Kojid Role
This role prepares a system to be a koji builder. This requires kerberos keytabs.
2020-12-18 22:55:55 +00:00
## Getting started
Ensure all dependencies are installed and then follow the below process
1. `git clone repo` Get the development repository
2. `pre-commit install` Install the pre-commit hooks
3. Make edits as explained in the customization section
4. `pre-commit` Make sure existing code is good
5. `do development` Dont ask me :D
6. `pre-commit` Make sure the edits are good to go
7. `molecule converge`
## Dependencies
This repo expects 3 things installed on the local machine
1. [pre-commit](https://pre-commit.com/) Methodology to test yaml style
2. [ansible-lint](https://github.com/ansible-community/ansible-lint) lint ansible code for best practices
3. [yamllint](https://github.com/adrienverge/yamllint) Ensures all yaml is well formed
### Customization
There are a few files that are required to be updated when using this template
1. [molecule/requirements.yml](molecule/requirements.yml) - Update with any required roles or collections
2. [molecule/default/converge.yml](molecule/default/converge.yml) - update with new role name
3. [molecule/default/molecule.yml](molecule/default/molecule.yml) - update with desired distributions and extra playbooks
4. [github](github) - Rename to `.github` and push, this will set up yamllint, ansible-lint and a CI check job for the `main` branch
1. NOTE: If you are using a SAML token this may fail. You can created the files within the Github web app
### Optional
The github actions are configured to automatically run the molecule tests but if you want to load them locally you will also need molecule installed on the development machine
## Advanced
There are numerous other options within the [defaults/main.yml](./defaults/main.yml) that can change other parts of the behavior of the system
## Changelog
The [changelog](./CHANGELOG.md) is stored externally