153 lines
No EOL
5.2 KiB
YAML
153 lines
No EOL
5.2 KiB
YAML
- name: My first play
|
|
hosts: personal
|
|
tasks:
|
|
- name: Ping my hosts
|
|
ansible.builtin.ping:
|
|
|
|
- name: Print message
|
|
ansible.builtin.debug:
|
|
msg: Hello world
|
|
# - name: Copy conduwuit backup
|
|
# ansible.posix.synchronize:
|
|
# src: ./conduwuit-testing
|
|
# dest: /var/opt/
|
|
- name: Enable netavark dhcp daemon
|
|
ansible.builtin.systemd:
|
|
name: netavark-dhcp-proxy.socket
|
|
enabled: true
|
|
state: started
|
|
- name: Copy containers
|
|
ansible.posix.synchronize:
|
|
src: ../containers/
|
|
dest: /etc/containers/systemd
|
|
delete: true # Remove retired containers
|
|
- name: Reload systemd generators
|
|
ansible.builtin.command: sudo systemctl daemon-reload
|
|
- name: Install logrotate
|
|
ansible.builtin.package:
|
|
name: logrotate
|
|
state: present
|
|
- name: Copy logrotate config
|
|
ansible.posix.synchronize:
|
|
src: ../logrotate.d/
|
|
dest: /etc/logrotate.d
|
|
- name: find files with possible suspect line endings or perms
|
|
ansible.builtin.find:
|
|
paths: /etc/logrotate.d
|
|
patterns: '*'
|
|
register: output
|
|
- name: fix suspect line endings
|
|
replace: path={{item.path}} regexp="\r"
|
|
with_items: "{{ output.files }}"
|
|
- name: fix logrotate permissions
|
|
file: path={{item.path}} mode=644 owner=root group=root
|
|
with_items: "{{ output.files }}"
|
|
become: true
|
|
- name: Copy traefik config
|
|
ansible.posix.synchronize:
|
|
src: ../traefik/
|
|
dest: /etc/traefik
|
|
- name: Creates traefik state directory
|
|
file:
|
|
path: /var/srv/traefik
|
|
state: directory
|
|
- name: Creates traefik log directory
|
|
file:
|
|
path: /var/log/traefik
|
|
state: directory
|
|
- name: Copy kanidm config
|
|
ansible.posix.synchronize:
|
|
src: ../kanidm/
|
|
dest: /etc/kanidm
|
|
- name: Make kanidm entrypoint executable
|
|
file: dest=/etc/kanidm/entrypoint.sh mode=a+x
|
|
- name: make sure line endings are correct
|
|
replace: dest=/etc/kanidm/entrypoint.sh regexp="\r"
|
|
- name: Creates kanidm data directory
|
|
file:
|
|
path: /var/opt/kanidm_data
|
|
state: directory
|
|
# - name: Generate Element Web config
|
|
# # run on localhost
|
|
# local_action: ansible.builtin.command cd ../element-web && node config.js
|
|
- name: Copy Element Web config
|
|
ansible.posix.synchronize:
|
|
src: ../element-web/public/
|
|
dest: /etc/element-web
|
|
- name: Copy homepage config
|
|
ansible.posix.synchronize:
|
|
src: ../homepage/
|
|
dest: /etc/homepage
|
|
- name: Copy sentry relay config
|
|
ansible.posix.synchronize:
|
|
src: ../sentry-relay/
|
|
dest: /etc/sentry-relay
|
|
- name: Creates stalwart mail data directory
|
|
file:
|
|
path: /var/opt/stalwart-mail
|
|
state: directory
|
|
- name: Copy stalwart config
|
|
ansible.posix.synchronize:
|
|
src: ../stalwart/
|
|
dest: /etc/stalwart
|
|
- name: Copy coturn config
|
|
ansible.posix.synchronize:
|
|
src: ../coturn/
|
|
dest: /etc/coturn
|
|
# Pull mautrix config:
|
|
# rsync --rsync-path="sudo rsync" -r -t -z -P --include "*/" --include="*.yaml" --exclude="*" ansible@213.32.25.24:/var/opt/mautrix/ ./mautrix
|
|
- name: Copy mautrix config
|
|
ansible.posix.synchronize:
|
|
src: ../mautrix/
|
|
dest: /var/opt/mautrix
|
|
recursive: true
|
|
delete: false # Explicitly don't delete, we have databases here
|
|
rsync_opts: # Only sync YAML files
|
|
- --include="*/"
|
|
- --include="*.yaml"
|
|
- --exclude="*"
|
|
# Reregister appservices:
|
|
# ls | filter {|n| $n.type == "dir" } | each {|n| open --raw ("./" + $n.name + "/registration.yaml")} | each {|as| nu ~\Code\scripts\scripts\matrix.nu send_message "https://matrix.ellis.link" $env.MATRIX_TOKEN "!1al3YiWSKCq0tASeCX%3Aellis.link" ({
|
|
# "msgtype":"m.text",
|
|
# "body":$"!admin appservices register\n\n```\n($as)\n```",
|
|
# "format":"org.matrix.custom.html",
|
|
# "formatted_body":$"<p>!admin appservices register</p>\n<pre><code>($as)\n</code></pre>\n",
|
|
# "m.mentions":{}
|
|
# } | to json) }
|
|
- name: Creates freshrss data directory
|
|
file:
|
|
path: /var/opt/freshrss
|
|
state: directory
|
|
- name: Creates freshrss extensions directory
|
|
file:
|
|
path: /var/opt/freshrss-extensions
|
|
state: directory
|
|
- name: Copy freshrss config
|
|
ansible.posix.synchronize:
|
|
src: ../freshrss/
|
|
dest: /etc/freshrss
|
|
- name: Creates matrix-sed bot state directory
|
|
file:
|
|
path: /var/opt/matrix-sed
|
|
state: directory
|
|
- name: Creates uptime-kuma state directory
|
|
file:
|
|
path: /var/opt/uptime-kuma
|
|
state: directory
|
|
- name: Creates autokuma state directory
|
|
file:
|
|
path: /var/opt/autokuma
|
|
state: directory
|
|
|
|
# - name: install linux-system-roles
|
|
# package:
|
|
# name: linux-system-roles
|
|
# state: present
|
|
# delegate_to: 127.0.0.1
|
|
# become: true
|
|
# - name: run kdump system role
|
|
# include_role:
|
|
# name: linux-system-roles.kdump
|
|
# vars:
|
|
# kdump_path: /var/crash
|
|
# kdump_core_collector: makedumpfile -l --message-level 7 -d 31 |