Add k8s shutdown/openup scripts

Add nut ansible roles
Add acme certificate ansible role
This commit is contained in:
2024-01-11 01:11:16 +13:00
parent 92df824252
commit 7eddbba696
25 changed files with 450 additions and 43 deletions

View File

@ -0,0 +1,3 @@
[Unit]
Requires=network-online.target
After=network-online.target

View File

@ -0,0 +1,23 @@
- name: Template out upsmon.conf
ansible.builtin.template:
src: upsmon.conf.j2
dest: /etc/nut/upsmon.conf
trim_blocks: true
owner: root
group: nut
mode: '0640'
- name: Copy nut-monitor systemd drop in file
when: not ( nut_client_local_server | default(true) )
ansible.builtin.template:
src: nut-monitor_override.conf
dest: /etc/systemd/system/nut-monitor.service.d/override.conf
owner: root
group: root
mode: '0644'
- name: Start and enable nut-monitor
ansible.builtin.service:
name: nut-monitor
state: restarted
enabled: true

View File

@ -0,0 +1,33 @@
# File configured by Ansible playbook
# Configuration reference:
# https://man.archlinux.org/man/upsmon.conf.5
{% for ups in nut_client_ups_devices %}
{% if ups.type == 'primary' %}
MONITOR {{ ups.name }}@{{ ups.host | default('localhost') }}:{{ ups.port | default(3493) }} {{ ups.powervalue | default('1') }} {{ nut_client_primary_username }} {{ nut_client_primary_password }} primary
{% elif ups.type == 'secondary' %}
MONITOR {{ ups.name }}@{{ ups.host | default('localhost') }}:{{ ups.port | default(3493) }} {{ ups.powervalue | default('1') }} {{ nut_client_secondary_username }} {{ nut_client_secondary_password }} secondary
{% endif %}
{% endfor %}
FINALDELAY {{ nut_client_final_delay | default('5') }}
NOCOMMWARNTIME 300
RBWARNTIME 43200
OFFDURATION 30
SHUTDOWNCMD "{{ nut_client_shutdown_cmd | default('/usr/bin/poweroff') }}"
SHUTDOWNEXIT {{ nut_client_shutdown_exit | default('true') }}
POWERDOWNFLAG "/etc/killpower"
DEADTIME 15
HOSTSYNC {{ nut_client_hostsync | default('30') }}
POLLFREQALERT 5
POLLFREQ 5
MINSUPPLIES {{ nut_client_min_supplies | default('1') }}
CERTPATH /usr/ssl/certs
FORCESSL 1
CERTVERIFY 1
NOTIFYCMD {{ nut_client_notify_cmd | default('/usr/bin/notify-send') }}
{% for message in nut_client_notify_messages %}
NOTIFYMSG {{ message.name }} {{ message.message }}
{% endfor %}
{% for notify in nut_client_notify_flags %}
NOTIFYFLAG {{ notify.name }} {{ notify.flags }}
{% endfor %}