services: Add spacestate->Mastodon service
This commit is contained in:
parent
75b1fd6946
commit
37c374d0c4
6 changed files with 78 additions and 0 deletions
|
@ -24,3 +24,9 @@
|
||||||
name: spacestated
|
name: spacestated
|
||||||
state: restarted
|
state: restarted
|
||||||
daemon_reload: true
|
daemon_reload: true
|
||||||
|
|
||||||
|
- name: restart mastodon-spacestate
|
||||||
|
systemd:
|
||||||
|
name: mastodon-spacestate
|
||||||
|
state: restarted
|
||||||
|
daemon_reload: true
|
||||||
|
|
|
@ -10,3 +10,6 @@
|
||||||
|
|
||||||
- tags: services_spacestated
|
- tags: services_spacestated
|
||||||
import_tasks: spacestated.yaml
|
import_tasks: spacestated.yaml
|
||||||
|
|
||||||
|
- tags: services_mastodon_spacestate
|
||||||
|
import_tasks: mastodon_spacestate.yaml
|
||||||
|
|
39
roles/services/tasks/mastodon_spacestate.yaml
Normal file
39
roles/services/tasks/mastodon_spacestate.yaml
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
---
|
||||||
|
- name: Install dependencies
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- python3-mastodon
|
||||||
|
- python3-paho-mqtt
|
||||||
|
|
||||||
|
- name: Clone source
|
||||||
|
git:
|
||||||
|
repo: https://github.com/bitlair/mastodon-spacestate.git
|
||||||
|
version: main
|
||||||
|
dest: /var/lib/mastodon-spacestate
|
||||||
|
accept_hostkey: yes
|
||||||
|
notify: restart mastodon-spacestate
|
||||||
|
|
||||||
|
- name: Install config
|
||||||
|
template:
|
||||||
|
src: mastodon-spacestate-config.py
|
||||||
|
dest: /var/lib/mastodon-spacestate/config.py
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: 0655
|
||||||
|
notify: restart mastodon-spacestate
|
||||||
|
|
||||||
|
- name: Install service file
|
||||||
|
template:
|
||||||
|
src: mastodon-spacestate.service
|
||||||
|
dest: /etc/systemd/system/mastodon-spacestate.service
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: 0644
|
||||||
|
notify: restart mastodon-spacestate
|
||||||
|
|
||||||
|
- name: Start mastodon-spacestate
|
||||||
|
systemd:
|
||||||
|
name: mastodon-spacestate
|
||||||
|
state: started
|
||||||
|
enabled: yes
|
||||||
|
daemon_reload: true
|
|
@ -19,6 +19,7 @@
|
||||||
version: main
|
version: main
|
||||||
dest: /var/lib/spacestated/spacestated
|
dest: /var/lib/spacestated/spacestated
|
||||||
accept_hostkey: yes
|
accept_hostkey: yes
|
||||||
|
notify: restart spacestated
|
||||||
|
|
||||||
- name: Install service file
|
- name: Install service file
|
||||||
template:
|
template:
|
||||||
|
|
14
roles/services/templates/mastodon-spacestate-config.py
Normal file
14
roles/services/templates/mastodon-spacestate-config.py
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
mqtt_server = 'mqtt.bitlair.nl'
|
||||||
|
mqtt_port = 1883
|
||||||
|
|
||||||
|
spacestate_topic = 'bitlair/state'
|
||||||
|
open_string = 'open'
|
||||||
|
closed_string = 'closed'
|
||||||
|
|
||||||
|
spacestate_profile_key = 'Spacestate'
|
||||||
|
open_profile_field = 'Open! @ {}'
|
||||||
|
closed_profile_field = 'Closed @ {}'
|
||||||
|
|
||||||
|
profile_fields = [('Website', 'https://bitlair.nl/')]
|
||||||
|
access_token = '{{ mastodon_spacestate_access_token }}'
|
||||||
|
homeserver = 'https://hsnl.social'
|
15
roles/services/templates/mastodon-spacestate.service
Normal file
15
roles/services/templates/mastodon-spacestate.service
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
# Managed by Ansible
|
||||||
|
|
||||||
|
[Unit]
|
||||||
|
Description=Bitlair Spacestate propagation to Mastodon
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
Restart=on-failure
|
||||||
|
RestartSec=10s
|
||||||
|
ExecStart=/var/lib/mastodon-spacestate/mastodon-spacestate.py
|
||||||
|
DynamicUser=true
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
Loading…
Add table
Reference in a new issue