Changed systemd-notifier namings

This commit is contained in:
2023-12-03 11:24:17 +01:00
parent d3de68b216
commit 3120b23eb4
41 changed files with 93 additions and 93 deletions

View File

@@ -0,0 +1,41 @@
## Description
This Ansible role installs the necessary components for sending Telegram notifications through systemd when any service fails. It configures the `systemd-notifier-telegram` service and handles the setup of Telegram bot parameters and notification templates.
Features include:
- Installation and configuration of a Telegram notifier service.
- Customizable templates for Telegram messages sent on service failure.
This role is part of the `systemd-notifier` suite, which provides a comprehensive solution for service failure notifications in a systemd environment.
## Requirements
This role has the following requirements:
- Access to a Telegram bot token for sending messages.
- Availability of the `curl` package on the target system.
## Role Variables
The following variables can be customized in the role's `vars/main.yml` file:
- `systemd_telegram_folder`: The path to the folder where Telegram-related scripts and configurations will be stored.
- `systemd_telegram_script`: The full path to the systemd-telegram.sh script.
This role was created as part of a conversation with OpenAI's ChatGPT and can be found [here](https://chat.openai.com/share/96e4ca12-0888-41c0-9cfc-29c0180f0dba).
## Usage
To use this role, include it as a dependency in your playbook or role that requires Telegram notifications. Ensure that the `systemd-notifier-telegram` role is correctly referenced and configured.
## License
This Ansible role is licensed under the AGPL v3 License. See the LICENSE file for the full license text.
## Contact Information
For any questions or feedback, please contact the author:
Author: Kevin Veen-Birkenbach
Email: kevin@veen.world

View File

@@ -0,0 +1,4 @@
- name: "restart systemd-notifier-telegram service"
systemd:
name: systemd-notifier-telegram.service
daemon_reload: yes

View File

@@ -0,0 +1,21 @@
- name: install curl
pacman:
name: curl
state: present
- name: Create a directory with a subdirectory
ansible.builtin.file:
path: "{{systemd_telegram_folder}}"
state: directory
mode: '0755'
- name: configure systemd-notifier-telegram.sh
template:
src: systemd-notifier-telegram.sh.j2
dest: "{{ systemd_telegram_script }}"
- name: configure systemd-notifier-telegram.service
template:
src: systemd-notifier-telegram@.service.j2
dest: "/etc/systemd/system/systemd-notifier-telegram@.service"
notify: "restart systemd-notifier-telegram service"

View File

@@ -0,0 +1,2 @@
#!/bin/bash
/usr/bin/curl -s -X POST https://api.telegram.org/bot{{ telegram_bot_token }}/sendMessage -d chat_id={{ telegram_chat_id }} -d text="service $1 failed"

View File

@@ -0,0 +1,8 @@
[Unit]
Description=status Telegram message for %i to user
[Service]
Type=oneshot
ExecStart=/bin/bash {{ systemd_telegram_script }} %i
User=root
Group=systemd-journal

View File

@@ -0,0 +1,2 @@
systemd_telegram_folder: "/opt/ansible-roles/systemd-notifier-telegram/"
systemd_telegram_script: "{{systemd_telegram_folder}}systemd-notifier-telegram.sh"