Skip to content

Developer Manual

This manual describes, how you can support the development, change code and make it convenient to merge your desired changes.

Architecture

Before starting development, it is strongly recommended to check out the architecture of the software in the Architecture Manual beforehand.

Requirements

It is not strictly required, but a good idea to have the following tools at hand for validation and testing.

You should test all changes in the script files and Yaml files before adding content.

Tests

The shell scripts in the repository are tested with bats-core. You can find all defined tests in the tests/ folder. After each change, you should check if you can add tests and if all tests pass successfully. This can be done like so:

$ bats tests/test_peep.bats
test_peep.bats
 ✓ run entire script
 ✓ print_with_icon with icon
 ....
 ✓ print_os_version with SHOW_OS_VERSION=true
 ✓ print_os_version with SHOW_OS_VERSION=false

30 tests, 0 failures

You can also consult the included gitlab-ci.yml file for more tests that might be useful for your workflow.

Documentation

For documentation, we rely on Markdown and MkDocs. You can run the generated documentation locally with:

mkdocs serve --strict --livereload