Merge pull request #52 from corvus-migratorius/fix-role-readmes

Enforce consistency across role READMEs
This commit is contained in:
Fogucoco
2025-12-19 13:44:15 +03:00
committed by GitHub
50 changed files with 112 additions and 236 deletions

View File

@@ -1,4 +1,4 @@
genlab.alertmanager
alertmanager
=========
The [Alertmanager](https://github.com/prometheus/alertmanager) handles alerts sent by client applications such as the Prometheus server. It takes care of deduplicating, grouping, and routing them to the correct receiver integration such as email, PagerDuty, or OpsGenie. It also takes care of silencing and inhibition of alerts.
@@ -34,13 +34,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.template
config_source_dir: alertmanager
alertmanager_version: 0.28.1
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,4 +1,4 @@
ansible-borgmatic
borgmatic
=========
This is a wrapper around the `borgmatic` role from the `maxhoesel.borgbackup` collection.
@@ -12,7 +12,7 @@ In the case of Borgmatic we are installing it via `pipx`, as recommended by thei
Requirements
------------
- `maxhoesel.borgbackup` collection installed (see `requirements.yml`);
- `maxhoesel.borgbackup` collection installed;
Role Variables
--------------
@@ -27,7 +27,7 @@ None
Example Playbook
----------------
See `molecule/default/converge.yml`
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,2 +0,0 @@
.vscode
.idea

View File

@@ -1,7 +1,7 @@
curl-scheduled
curl_scheduled
=========
Configure curl to run on schedule by deploying a systemd service + timer. Useful for sending heartbeats.
Configure `curl` to run on schedule by deploying a systemd service + timer. Useful for sending heartbeats.
Requirements
------------
@@ -12,9 +12,7 @@ Role Variables
--------------
- `args`: arguments to the curl command
- `url`: address to be accessed by curl
- `schedule`: string compatible with systemd timer `OnSchedule` option (default: `minutely`)
@@ -26,7 +24,7 @@ None
Example Playbook
----------------
See `molecule/default/converge.yml`.
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,7 +1,7 @@
ansible-dnsmasq
dnsmasq
=========
Deploy dnsmasq on the target node. For now, supports only DNS functionality (DHCP and TFTP are not configuratble).
Deploy `dnsmasq` on the target node. For now, supports only DNS functionality (DHCP and TFTP are not configurable).
Requirements
------------
@@ -21,10 +21,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.dnsmasq
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -3,10 +3,6 @@ docker_ubuntu
Install Docker ecosystem on Ubuntu.
[![lint](https://github.com/corvus-migratorius/ansible-docker-ubuntu/actions/workflows/lint.yaml/badge.svg)](https://github.com/corvus-migratorius/ansible-docker-ubuntu/actions/workflows/lint.yaml)
[![molecule](https://github.com/corvus-migratorius/ansible-docker-ubuntu/actions/workflows/molecule.yaml/badge.svg)](https://github.com/corvus-migratorius/ansible-docker-ubuntu/actions/workflows/molecule.yaml)
Requirements
------------
@@ -25,10 +21,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.common.docker_ubuntu
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: ["docker"]

View File

@@ -1,4 +1,4 @@
genlab.grafana
grafana
=========
This ansible role installs [Grafana](https://github.com/grafana/grafana) - the open-source platform for monitoring and observability. It can produce charts, graphs, and alerts for the web when connected to supported data sources.
@@ -59,42 +59,7 @@ None
Example Playbook
----------------
```yaml
---
- name: Converge
hosts: all
vars:
grafana_users:
- name: "test"
user_login: "test"
user_password: "test"
user_email: "test@mail.ru"
is_admin: false
grafana_plugins:
version: 2.1.8
- name: aceiot-svg-panel
version: 0.1.5
grafana_public_dashboards:
- name: Node Full Exporter
id: 1860
revision: 36
vars_files:
- secrets/admin_cred.yml
roles:
- role: genlab.grafana
grafana_version: 11.5.0
admin_api_username: "{{ grafana.admin_api_username }}"
admin_api_password: "{{ grafana.admin_api_password }}"
users: "{{ grafana_users }}"
plugins: "{{ grafana_plugins }}"
public_dashboards: "{{ grafana_public_dashboards }}"
dashboard_source_path: "molecule/default/dashboards"
datasource_source_path: "molecule/default/datasources"
grafana_log_dir: "/opt/grafana/data"
grafana_data_dir: "/opt/grafana/lib"
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,4 +1,4 @@
genlab.ipmi_exporter
ipmi_exporter
=========
This Ansible role installs ipmi_exporter on target host. This is a Prometheus exporter for Intelligent Platform Management Interface [metrics](https://github.com/prometheus-community/ipmi_exporter/blob/master/docs/metrics.md)
@@ -43,12 +43,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.ipmi_exporter
ipmi_exp_version: "1.10.1"
ipmi_exp_source_dir: "molecule/default/"
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,2 +0,0 @@
.vscode
.idea

View File

@@ -1,13 +1,8 @@
genlab.karma
karma
=========
This is the ansible role to install and configure Karma - alert dashboard for Prometheus Alertmanager (https://github.com/prymitive/karma)
------------
⚠️ Do not forget to update:
Install and configure Karma - an alert dashboard for Prometheus Alertmanager (https://github.com/prymitive/karma)
- `meta/main.yml`
- Conda/Mamba manifests
- this README =) including *the name at the top* and *maintainers*.
Requirements
------------
@@ -33,14 +28,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.karma
karma_version: "0.121"
config_source_dir: "karma/"
karma_dir: "/etc/karma"
karma_config_dir: "/etc/karma/config"
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: [monitoring]

View File

@@ -1,5 +1,5 @@
loki
=========
====
Installs Loki as a `systemd` service.
@@ -23,11 +23,7 @@ No
Example Playbook
----------------
```yaml
roles:
- role: loki
loki_version: 2.7.3
```
See: [converge.yml](molecule/default/converge.yml)
License

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,5 +1,5 @@
Role Name
=========
mkfs
====
Create a filesystem on the target device (thinly wraps `community.general.filesystem` module).

View File

@@ -1,5 +1,5 @@
ansible-mount-device
=========
mount_device
============
Mount the given block device.

View File

@@ -1,2 +0,0 @@
.vscode
.idea

View File

@@ -1,5 +1,5 @@
ansible-nginx
=========
nginx
=====
Deploy NGINX with a minimal configuration.
@@ -21,10 +21,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.nginx
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,5 +1,5 @@
Role Name
=========
node_exporter
=============
Deploy `prometheus/node_exporter` binary as a systemd unit.

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy"]
versions: ["jammy", "noble"]
galaxy_tags: ["prometheus"]

View File

@@ -1,7 +1,9 @@
genlab.prometheus
=========
prometheus
==========
This ansible role installs [Prometheus](https://github.com/prometheus/prometheus) from binary distribution. Prometheus is a systems and service monitoring system. It collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts when specified conditions are observed.
Install [Prometheus](https://github.com/prometheus/prometheus) binary from GitHub.
Prometheus collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts when specified conditions are observed.
Prometheus configuration files and rules should be placed in separate directories in the source. They must have a `*.yml` suffix. You'll need to manually specify the paths to your rule files in the main Prometheus configuration file (prometheus.yml) on the target machine
@@ -31,13 +33,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.prometheus
prometheus_config_source_dir: mydir/configs
prometheus_alertrules_source_dir: mydir/configs/rules
prometheus_version: 3.2.1
```
See: [converge.yml](molecule/default/converge.yml)
License
-------
@@ -48,3 +44,4 @@ Author Information
------------------
corvus-migratorius@proton.me
sayganova@genlab.llc

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,7 +1,7 @@
promtail
=========
========
Installs promtail as systemd service.
Installs `promtail` as a systemd service.
Requirements
------------
@@ -19,15 +19,12 @@ Role Variables
Dependencies
------------
No
None
Example Playbook
----------------
- hosts: servers
roles:
- role: promtail
promtail_version: 2.7.3
See: [converge.yml](molecule/default/converge.yml)
License
-------
@@ -39,6 +36,4 @@ Author Information
Alexander Gorelyshev and Danilkin Danila (MIPT)
Genlab LLC
corvus-migratorius@proton.me

View File

@@ -9,6 +9,10 @@ galaxy_info:
min_ansible_version: "2.1"
platforms:
- name: "Ubuntu"
versions: ["jammy", "noble"]
galaxy_tags: []
dependencies: []

View File

@@ -1,2 +0,0 @@
.vscode
.idea

View File

@@ -1,12 +1,12 @@
Role Name
=========
rclone_yandex
=============
A brief description of the role goes here.
Mount a Yandex Disk share via `rclone`.
Requirements
------------
Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
None
Role Variables
--------------
@@ -18,17 +18,12 @@ Role Variables
Dependencies
------------
A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
None
Example Playbook
----------------
```yaml
roles:
- role: rclone_yandex
rclone_mountpoint: /mnt/yandex-disk
rclone_group: yandex
```
See: [converge.yml](molecule/default/converge.yml)
License
-------
@@ -38,4 +33,4 @@ BSD
Author Information
------------------
corvus-migratorius@proton.me
corvus-migratorius@proton.me

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,22 +1,22 @@
Rustdesk Server
=========
rustdesk
========
Rustdesk server role for ansible
Deploy a Rustdesk server
Requirements
------------
Ports:
```
tcp 21115, 21116, 21117, 21118, 21119
udp 21116
- `tcp`: `21115, 21116, 21117, 21118, 21119`
- `udp`: `21116`
```
Role Variables
--------------
``` rustdesk_server_version ``` — contains rustdesk-server version to be installed
``` rustdesk_client_version ``` — contains rustdesk-client version for executable to be configured
`rustdesk_server_version`: contains rustdesk-server version to be installed
`rustdesk_client_version`: contains rustdesk-client version for executable to be configured
Dependencies
------------
@@ -26,10 +26,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.rustdesk_server
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,7 +1,7 @@
SFTP Share Ansible Role
sftp_share
=========
Creates a user account and directories for secured SFTP data exchange (one user = one share).
Creates a user account and directories for a secured SFTP data exchange (one user = one share).
The role creates a dedicated SSH config under `/etc/ssh/sshd_config.d/`, configuring:
@@ -60,7 +60,7 @@ None
Example Playbook
----------------
See `molecule/default/converge.yml` for an example role invocation.
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,2 +0,0 @@
.vscode
.idea

View File

@@ -1,18 +1,18 @@
genlab.smartctl-exporter
=========
smartctl_exporter
=================
```smartctl``` is a command-line utility used to control and monitor the Self-Monitoring, Analysis and Reporting Technology (SMART) system in hard disk drives (HDDs) and solid-state drives (SSDs). ```smartctl-exporter``` exports ```smartctl``` statistics to Prometheus.
`smartctl` is a command-line utility used to control and monitor the Self-Monitoring, Analysis and Reporting Technology (SMART) system in hard disk drives (HDDs) and solid-state drives (SSDs). `smartctl-exporter` exports `smartctl` statistics to Prometheus.
Requirements
------------
smartctl
- `smartctl`
Role Variables
--------------
The exporter will scan the system for available devices if no ```--smartctl.device``` flags are used. The format of web.config file id described [here](https://github.com/prometheus/exporter-toolkit/blob/master/docs/web-configuration.md). If ```smartctl_exp_source_web_config_dir``` is defined, role searches for ```web_smartctl.conf``` file and copy it to target host to ```smartctl_exp_web_config_dir``` directory
The exporter will scan the system for available devices if no `--smartctl.device` flags are used. The format of web.config file id described [here](https://github.com/prometheus/exporter-toolkit/blob/master/docs/web-configuration.md). If `smartctl_exp_source_web_config_dir` is defined, role searches for `web_smartctl.conf` file and copy it to target host to `smartctl_exp_web_config_dir` directory
```yaml
---
smartctl_exp_port: "localhost:9633" # Addresses on which to expose metrics and web interface. Repeatable for multiple addresses.
smartctl_exp_version: "0.14.0" # exporter version to install
smartctl_exp_dir: "/etc/exporters" # where to download and unarchive expoter
@@ -37,13 +37,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.smartctl_exporter
smartctl_exp_version: "0.14.0"
smartctl_exp_dir: "/etc/exporters"
smartctl_exp_config_dir: "/etc/exporters/config"
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,7 +1,7 @@
ansible-sshd
=========
sshd
====
Deploy a hardened sshd server
Deploy a hardened `sshd` server
Requirements
------------
@@ -21,10 +21,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.common.sshd
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -1,5 +1,5 @@
ansible-swapfile
=========
swapfile
========
Create/destroy a swapfile and run swapon/-off on it.
@@ -23,10 +23,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.swapfile
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,5 +1,5 @@
template
=========
ufw
===
Whitelist network ports with UFW
@@ -21,10 +21,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.ufw
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy"]
versions: ["jammy", "noble"]
galaxy_tags: []

View File

@@ -1,9 +1,10 @@
ansible-users
=========
users
=====
Create user accounts according to a YAML manifest.
Controls:
- username and UID
- groupname and GID
- homedir creation
@@ -20,8 +21,8 @@ Requirements
Target node:
- systemd
- openssh
- `systemd`
- openssh client library
Controller:
@@ -58,4 +59,4 @@ Author Information
------------------
corvus-migratorius@proton.me
masayganova@gmail.com
sayganova@genlab.llc

View File

@@ -1,13 +1,5 @@
template
=========
Template for Ansible role monorepos.
⚠️ Do not forget to update:
- `meta/main.yml`
- Conda/Mamba manifests
- this README =)
wg_hub
======
Requirements
------------
@@ -27,10 +19,7 @@ None
Example Playbook
----------------
```yaml
roles:
- role: genlab.template
```
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -1,12 +1,12 @@
wg_spoke
=========
Configure the host as a Spoke in Wireguard Spoke&Hub topology.
Configure the host as a Spoke in the Wireguard Spoke-and-Hub topology.
Requirements
------------
Ubuntu 20.04, 22.04 or 24.04.
Ubuntu 22.04 or 24.04.
Role Variables
--------------
@@ -33,7 +33,7 @@ None
Example Playbook
----------------
See `molecule/default/converge.yml`.
See: [converge.yml](molecule/default/converge.yml)
License
-------

View File

@@ -10,7 +10,7 @@ galaxy_info:
platforms:
- name: "Ubuntu"
versions: ["focal", "jammy", "noble"]
versions: ["jammy", "noble"]
galaxy_tags: []