This PR seeks to solve #2.
It adds a Makefile that can build, test, lint and package the code and the Forgejo workflows needed to automate the build. In addition, it resolves various issues highlighted by the linter.
Reviewed-on: #5
Co-authored-by: Emmanuel BENOÎT <tseeker@nocternity.net>
Co-committed-by: Emmanuel BENOÎT <tseeker@nocternity.net>
* Update runs have been refactored into self-contained structures.
* Running pre-commands, handlers and post-commands has been
implemented. While errors during pre-commands will stop updates for
the files they correspond to, a handler failures will interrupt *all*
updates for files that use that handler.
* The new configuration includes specific commands per file, as well
as handlers that can be triggered by updates but will only ever run
once.
* For now, commands from the pre_commands section are executed, the
rest is ignored
* The DN that is passed along with the update command is checked
against the list of DNs a certificate file uses. If it is not in the
list, then the file is skipped.