services: separate volume clear and rm
This commit is contained in:
@@ -17,8 +17,7 @@ if [[ "$1" == "--check" ]]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
cmd="$1"
|
||||
volume_dir="$2"
|
||||
volume_dir="12"
|
||||
|
||||
if [[ "${BOX_ENV}" == "test" ]]; then
|
||||
# be careful not to nuke some random directory when testing
|
||||
@@ -30,11 +29,6 @@ if [[ -d "${volume_dir}" ]]; then
|
||||
find "${volume_dir}" -maxdepth 1 -mindepth 1 -exec rm -rf '{}' \;
|
||||
fi
|
||||
|
||||
if [[ "${cmd}" == "clear" ]]; then
|
||||
mkdir -p "${volume_dir}"
|
||||
# set it up so that we can restore here as normal user
|
||||
chown $SUDO_USER:$SUDO_USER "${volume_dir}"
|
||||
else
|
||||
# this make not succeed if volume is a mount point
|
||||
rmdir "${volume_dir}" || true
|
||||
fi
|
||||
mkdir -p "${volume_dir}"
|
||||
# set it up so that we can restore here as normal user
|
||||
chown $SUDO_USER:$SUDO_USER "${volume_dir}"
|
||||
|
||||
33
src/scripts/rmvolume.sh
Executable file
33
src/scripts/rmvolume.sh
Executable file
@@ -0,0 +1,33 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -eu -o pipefail
|
||||
|
||||
if [[ ${EUID} -ne 0 ]]; then
|
||||
echo "This script should be run as root." > /dev/stderr
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [[ $# -eq 0 ]]; then
|
||||
echo "No arguments supplied"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [[ "$1" == "--check" ]]; then
|
||||
echo "OK"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
volume_dir="$1"
|
||||
|
||||
if [[ "${BOX_ENV}" == "test" ]]; then
|
||||
# be careful not to nuke some random directory when testing
|
||||
[[ "${volume_dir}" != *"/.cloudron_test/"* ]] && exit 1
|
||||
fi
|
||||
|
||||
if [[ -d "${volume_dir}" ]]; then
|
||||
# this removes hidden files
|
||||
find "${volume_dir}" -maxdepth 1 -mindepth 1 -exec rm -rf '{}' \;
|
||||
fi
|
||||
|
||||
# this make not succeed if volume is a mount point
|
||||
rmdir "${volume_dir}" || true
|
||||
Reference in New Issue
Block a user