ansible-role-kojihub/README.md
nazunalika 0bccf61c87 koji!
2020-12-22 20:52:59 -07:00

45 lines
2.1 KiB
Markdown

CI Badge
# Kojihub Role
This role installs kojihub and kojiweb. Note that it does NOT install the database. The database must be installed from a different role or playbook method. This role also assumes you are using a Kerberos infrastructure, such as FreeIPA.
FAS is not yet implemented.
Ansible 2.10 users: You will need the community.general collection installed.
## 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