Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • infrastruktur/ansible-warpzone
  • specki/ansible-warpzone
2 results
Show changes
...@@ -3,3 +3,18 @@ object UserGroup "icingaadmins" { ...@@ -3,3 +3,18 @@ object UserGroup "icingaadmins" {
display_name = "Icinga 2 Admin Group" display_name = "Icinga 2 Admin Group"
} }
object User "matrix" {
import "generic-user"
display_name = "Matrix User"
vars.matrix = {
token = "{{ matrix_notification_access_token }}"
channel = "!iYefxbySFEfFQfUGEK:matrix.warpzone.ms"
server = "https://matrix.warpzone.ms"
}
}
object UserGroup "matrix" {
display_name = "Matrix Group"
assign where user.vars.matrix
}
...@@ -69,6 +69,13 @@ ...@@ -69,6 +69,13 @@
- mailu/overrides/postfix/postfix.cf - mailu/overrides/postfix/postfix.cf
register: config register: config
- name: "set local dns record"
become: true
blockinfile:
path: /etc/hosts
create: yes
block: |
{{ ext_ip4 }} mailserver.warpzone.ms
# - name: deploy LogRotate configs # - name: deploy LogRotate configs
# template: # template:
......
...@@ -48,7 +48,7 @@ services: ...@@ -48,7 +48,7 @@ services:
- "traefik.http.routers.{{ servicename }}.tls" - "traefik.http.routers.{{ servicename }}.tls"
- "traefik.http.routers.{{ servicename }}.tls.certresolver=letsencrypt" - "traefik.http.routers.{{ servicename }}.tls.certresolver=letsencrypt"
- "traefik.http.routers.{{ servicename }}.tls.domains[0].main={{ domain }}" - "traefik.http.routers.{{ servicename }}.tls.domains[0].main={{ domain }}"
- "traefik.http.routers.{{ servicename }}.tls.domains[0].sans={{ mailserver }}" - "traefik.http.routers.{{ servicename }}.tls.domains[0].sans={{ mailserver }},imap.warpzone.ms,smtp.warpzone.ms"
- "traefik.http.routers.{{ servicename }}.service={{ servicename }}" - "traefik.http.routers.{{ servicename }}.service={{ servicename }}"
- "traefik.http.services.{{ servicename }}.loadbalancer.server.port=80" - "traefik.http.services.{{ servicename }}.loadbalancer.server.port=80"
networks: networks:
...@@ -185,7 +185,7 @@ services: ...@@ -185,7 +185,7 @@ services:
- "{{ basedir }}/mailman-web:/opt/mailman-web-data:rw,z" - "{{ basedir }}/mailman-web:/opt/mailman-web-data:rw,z"
mailman-nginx: mailman-nginx:
image: nginx:1.19 image: nginx:1.25
restart: always restart: always
depends_on: depends_on:
- mailman-web - mailman-web
......
...@@ -3,7 +3,10 @@ ...@@ -3,7 +3,10 @@
################################### ###################################
# Set Version # Set Version
MAILU_VERSION=2.0.4 MAILU_VERSION=2.0.16
# enable IPv6
SUBNET6=fd00:dead:beef:25::/64
# Autocreate Admin User # Autocreate Admin User
INITIAL_ADMIN_ACCOUNT=mailadmin INITIAL_ADMIN_ACCOUNT=mailadmin
...@@ -24,9 +27,6 @@ SQLALCHEMY_DATABASE_URI_ROUNDCUBE=mysql://roundcube:{{ roundcube_db_pass }}@db/r ...@@ -24,9 +27,6 @@ SQLALCHEMY_DATABASE_URI_ROUNDCUBE=mysql://roundcube:{{ roundcube_db_pass }}@db/r
# Common configuration variables # Common configuration variables
################################### ###################################
# Set mailu version
MAILU_VERSION=2.0
# Set to a randomly generated 16 bytes string # Set to a randomly generated 16 bytes string
SECRET_KEY={{ mailu_secret_key }} SECRET_KEY={{ mailu_secret_key }}
......
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
- { path: /srv/shared/noreply_email_pass, length: -1 } - { path: /srv/shared/noreply_email_pass, length: -1 }
- { path: /srv/ldap/secret/ldap_readonly_pass, length: -1 } - { path: /srv/ldap/secret/ldap_readonly_pass, length: -1 }
- { path: /srv/matrix/postgres_user_pass, length: 24 } - { path: /srv/matrix/postgres_user_pass, length: 24 }
- { path: /srv/matrix/admin_access_token, length: -1 } # Get in Element fo an Admin User: Settings > Help > Advanced
- name: create folder struct for matrix - name: create folder struct for matrix
...@@ -31,7 +32,9 @@ ...@@ -31,7 +32,9 @@
- name: Konfig-Dateien erstellen - name: Konfig-Dateien erstellen
template: src={{ item }} dest=/srv/matrix/{{ item }} template:
src: "{{ item }}"
dest: "/srv/matrix/{{ item }}"
with_items: with_items:
- docker-compose.yml - docker-compose.yml
- rest_auth_provider.py - rest_auth_provider.py
...@@ -41,6 +44,15 @@ ...@@ -41,6 +44,15 @@
register: configs register: configs
- name: Script-Dateien erstellen
template:
src: "{{ item }}"
dest: "/srv/matrix/{{ item }}"
mode: "ug+rwx"
with_items:
- purgemediacache.sh
- name: stop matrix docker - name: stop matrix docker
docker_compose: docker_compose:
project_src: /srv/matrix/ project_src: /srv/matrix/
......
...@@ -10,7 +10,7 @@ services: ...@@ -10,7 +10,7 @@ services:
db: db:
image: postgres:13.6 image: postgres:13.11
restart: always restart: always
volumes: volumes:
- /srv/matrix/db:/var/lib/postgresql/data - /srv/matrix/db:/var/lib/postgresql/data
...@@ -24,7 +24,7 @@ services: ...@@ -24,7 +24,7 @@ services:
synapse: synapse:
image: matrixdotorg/synapse:v1.78.0 image: matrixdotorg/synapse:v1.83.0
restart: always restart: always
cpu_count: "1" cpu_count: "1"
cpuset: "0" cpuset: "0"
...@@ -68,6 +68,21 @@ services: ...@@ -68,6 +68,21 @@ services:
- default - default
- web - web
purgemediacache:
image: jsonfry/curl-cron:latest
restart: always
depends_on:
- synapse
volumes:
- /srv/matrix/purgemediacache.sh:/curl.sh
environment:
CRON_SCHEDULE: "0 7 * * *"
networks:
- default
networks: networks:
web: web:
external: true external: true
#!/bin/sh
set -e
echo "$(date) - Start"
TS_NOW=$(date +%s)
DELAY=$((30*24*60*60))
TS=$((TS_NOW-$DELAY))
curl -X POST --insecure --header "Authorization: Bearer {{ admin_access_token }}" https://{{ domain }}/_synapse/admin/v1/purge_media_cache?before_ts=$(($TS*1000))
echo "$(date) End"
\ No newline at end of file
...@@ -27,7 +27,7 @@ services: ...@@ -27,7 +27,7 @@ services:
web: web:
image: nginx:1.21.6-alpine image: nginx:1.25.1
restart: always restart: always
volumes: volumes:
- /srv/matterbridge/media/:/usr/share/nginx/html/matterbridge/:ro,z - /srv/matterbridge/media/:/usr/share/nginx/html/matterbridge/:ro,z
......