improved cleanup
This commit is contained in:
@@ -1,13 +1,35 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
cleanup_except() {
|
||||
local directory=$1
|
||||
local except_file=$2
|
||||
|
||||
# Check if the directory exists
|
||||
if [[ ! -d "$directory" ]]; then
|
||||
echo "Directory does not exist: $directory"
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Loop over each file in the directory
|
||||
for file in "$directory"/*
|
||||
do
|
||||
if [[ "$(basename "$file")" != "$except_file" ]]; then
|
||||
# Delete the file
|
||||
rm -rf "$file"
|
||||
fi
|
||||
done
|
||||
|
||||
echo "Cleanup complete in $directory, except for $except_file"
|
||||
}
|
||||
|
||||
SCRIPT_DIR=$(readlink -f $(dirname "${BASH_SOURCE[0]}"))
|
||||
REPO_DIR=$(dirname $SCRIPT_DIR)
|
||||
COMPOSE_FILE=$REPO_DIR/docker-compose.yml
|
||||
|
||||
rm -rf \
|
||||
$REPO_DIR/mosquitto/config/pwfile \
|
||||
$REPO_DIR/mosquitto/data/mosquitto.db \
|
||||
$REPO_DIR/zigbee2mqtt/secret.yaml \
|
||||
$REPO_DIR/zigbee2mqtt/*.json \
|
||||
$REPO_DIR/zigbee2mqtt/log/* \
|
||||
$REPO_DIR/zigbee2mqtt/database.db \
|
||||
docker compose -f $COMPOSE_FILE down
|
||||
|
||||
cleanup_except "$REPO_DIR/mosquitto/config" mosquitto.conf
|
||||
cleanup_except "$REPO_DIR/mosquitto/data" .gitkeep
|
||||
cleanup_except "$REPO_DIR/mosquitto/log"
|
||||
cleanup_except "$REPO_DIR/zigbee2mqtt" configuration.yaml
|
||||
|
||||
Reference in New Issue
Block a user