Ansible collection for managing Perun systems, developed as a part of a bachelor's thesis.
This collection contains Python modules generated from Perun's API in the folder plugins/module_utils/perun_openapi/. The imports are downloaded and modified by the script generate_perun_openapi_modules.sh to make the modules accessible to Ansible.
The file plugins/module_utils/oidc/__init__.py is directly copied from the Perun GitLab repository and modified to work better with Ansible and to remove unnecessary dependencies.
The collection depends on the dependencies of the previously mentioned generated modules, with the exceptions of openjdk-17-jdk-headless, qrencode, and python3-typer.
Every module needs to contain either parameter oauth or ba for authentication. Subparameters of these options are listed in plugins/module_utils/api_client.py.
A file with variables and a playbook composed of examples from modules are available in the example/ directory.