|
| 1 | +# FIXME/TODO (you should delete this file after reading / completing the tasks) |
| 2 | + |
| 3 | +A (maybe incomplete but hopefully useful) list of things to do after creating a |
| 4 | +new role based on the skeleton, especially before releasing anything: |
| 5 | + |
| 6 | +1. **Update author information** (and/or company and/or year) in |
| 7 | + * [`LICENSE`](./LICENSE) → First line |
| 8 | + * [`meta/main.yml`](./meta/main.yml) → `galaxy_info:` → `author`, `company` |
| 9 | + and URLs if fitting |
| 10 | + * The "[`README.md`: Author Information](./README.md#author-information)" section |
| 11 | +2. **Update requirements information** in the "[`README.md`: Requirements](./README.md#requirements)" |
| 12 | + section and list any pre-requisites that may not be covered by Ansible |
| 13 | + itself, e.g.: |
| 14 | + * DNS names to configure, firewall ports to open |
| 15 | + * [SELinux](https://en.wikipedia.org/wiki/Security-Enhanced_Linux) |
| 16 | + * has to be disabled. |
| 17 | + * is supported in "Permissive" mode only. |
| 18 | + * is supported in "Enforcing" as well as in "Permissive" mode. |
| 19 | +3. **Update dependency information**: |
| 20 | + * In the "[`README.md`: Dependencies](./README.md#dependencies)" section: |
| 21 | + * A list of other roles hosted on Galaxy should go here |
| 22 | + * Plus any details in regards to parameters that may need to be set for |
| 23 | + other roles or variables that are used from other roles. |
| 24 | + * [`meta/main.yml`](./meta/main.yml) -> `dependencies:` |
| 25 | +4. **Update compatibility information**: |
| 26 | + * In the "[`README.md`: Compatibility](./README.md#compatibility)" section: |
| 27 | + * maybe you want to mention the main platform / first class citizens. |
| 28 | + * or if things where tested on container / VM / bare metal |
| 29 | + * [`meta/main.yml`](./meta/main.yml) -> `platforms:` |
| 30 | + * There is [a list of platforms](https://galaxy.ansible.com/api/v1/platforms/) |
| 31 | + * The list is paginated. You can also search for e.g. Fedora by adding |
| 32 | + `?name__icontains=fedora`. |
| 33 | +5. **Tests / [Molecule](https://molecule.readthedocs.io/en/latest/)**: delete the |
| 34 | + whole `./molecule` directory if you do not want to provide tests at this point |
| 35 | + in time or: |
| 36 | + * [`molecule/default/molecule.yml`](./molecule/default/molecule.yml): Define `driver` and `platforms` for your tests |
| 37 | + * [`molecule/default/tests/`](./molecule/default/tests/): Write test cases (Example: [`molecule/default/tests/test_default.py`](./molecule/default/tests/test_default.py)) |
| 38 | +6. **Misc things** |
| 39 | + * [`meta/main.yml`](./meta/main.yml): Remove unneeded, commented keys. See |
| 40 | + the following for more information if you are unsure what they do or if |
| 41 | + you even need more: |
| 42 | + * <https://galaxy.ansible.com/docs/contributing/creating_role.html#role-metadata> |
| 43 | + * <https://github.com/ansible/ansible/blob/devel/lib/ansible/playbook/role/metadata.py> |
| 44 | + * <https://github.com/ansible/ansible/blob/devel/lib/ansible/cli/galaxy.py> |
| 45 | + * You may want to add a section with useful weblinks to describe what the |
| 46 | + role is managing or other useful resources: |
| 47 | + ```markdown |
| 48 | + ## Further reading |
| 49 | + |
| 50 | + * [Official Example website](http://example.com/] |
| 51 | + * [Wikipedia: Example](http://en.wikipedia.org/wiki/Example) |
| 52 | + ``` |
| 53 | + * Add example playbook(s) to the "[`README.md`: Example Playbook](./README.md#example-playbook)" section |
0 commit comments