You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.8 KiB
49 lines
1.8 KiB
#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 disable --now $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
|
|
|