|
- #jinja2: lstrip_blocks: "True"
- #!/bin/bash
-
- if [ "$(id -u)" != "0" ]; then
- echo "This script must be executed as root! Aborting."
- exit 1
- fi
-
- echo "WARNING! You are about to remove everything the playbook installs for {{ matrix_server_fqn_matrix }}: matrix, docker images,..."
- echo -n "If you're sure you want to do this, type: 'Yes, I really want to remove everything!'"
- read sure
-
- if [ "$sure" != "Yes, I really want to remove everything!" ]; then
- echo "Good thing I asked, exiting"
- exit 0
- else
- echo "Stop and remove matrix services"
-
- # Look for and stop services, avoiding things like
- # 'matrix-synapse-worker@.service' (just a template for instantiated services; can't stop it directly).
- # We use '-xtype f' and not '-type f', because we wish to match symlinks like this:
- # '/etc/systemd/system/matrix-synapse.service.wants/matrix-synapse-worker@generic_worker:18111.service'
- # and stop these instantiated services as well.
- for s in $(find {{ matrix_systemd_path }}/ -xtype f -name "matrix-*" -printf "%f\n" | grep -v '@.service' | uniq); do
- systemctl stop $s
- done
-
- # Get rid of regular service files, as well as symlinks like
- # '/etc/systemd/system/matrix-synapse.service.wants/matrix-synapse-worker@generic_worker:18111.service'
- # and even
- # '/etc/systemd/system/multi-user.target.wants/matrix-synapse.service'.
- for s in $(find {{ matrix_systemd_path }}/ -xtype f -name "matrix-*" -printf "%p\n"); do
- rm -f {{ matrix_systemd_path }}/$s
- done
-
- systemctl daemon-reload
-
- echo "Remove matrix scripts"
- find {{ matrix_local_bin_path }}/ -name "matrix-*" -delete
- echo "Remove unused Docker images and resources"
- docker system prune -af
- echo "Remove Docker matrix network (should be gone already, but ..)"
- docker network rm {{ matrix_docker_network }}
- echo "Remove {{ matrix_base_data_path }} directory"
- rm -fr "{{ matrix_base_data_path }}"
- exit 0
- fi
|