Files
shell_sequencer/seqs/nextcloud.sh

83 lines
2.3 KiB
Bash
Executable File

#!/bin/bash
# Dependency to other seqs
# - mysql.sh (soft; Missing informational output)
toolName="nextcloud"
# Get script working directory
# (when called from a different directory)
WDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >>/dev/null 2>&1 && pwd )"
CONFIG=0
CONFIG_FILE_NAME="${toolName}.cfg"
CONFIG_FILE_TEMPLATE="$WDIR/${CONFIG_FILE_NAME}.example"
step_config() {
## or to use sequencer api:
initSeqConfig "$CONFIG_FILE_NAME" "$CONFIG_FILE_TEMPLATE"
if [ $? -eq 0 ] ; then
CONFIG=1
fi
}
step_20_info() { echo "Upgrade $toolName on command line to latest version of selected release channel"; }
step_20_alias() { ALIAS="upgrade"; }
step_20() {
if [ $CONFIG -eq 0 ] ; then
echoerr " [E] No configuration found to determine installation directory"
return 1
fi
exe cd "$NC_INSTALL_DIR"
exe sudo -u www-data php "$ncInstaller"
}
ncInstaller="updater/updater.phar"
step_100_info() { echo "Delete IP from bruteforce table <NC DATABASE> <IPV4 ADDRESS>"; }
step_100() {
local ncdb=
local ip=
local ipregex='^[0-2]*[0-9]{1,2}\.[0-2]*[0-9]{1,2}\.[0-2]*[0-9]{1,2}\.[0-2]*[0-9]{1,2}$'
if [ -z $2 ] ; then
echoerr " [E] No database provided"
if [ -f "${WDIR}/mysql.sh" ] ; then
echo " [I] Available mysql databases:"
"${WDIR}/mysql.sh" -qq listdb
fi
return 1
else
ncdb="$2"
fi
# Check if string looks like ipv4 address
if [[ "$3" =~ $ipregex ]] ; then
ip="$3"
else
echoerr " [E] No valid IP:PORT detected: $3"
return 1
fi
exe mysql -u root -D ${ncdb} -e 'delete FROM oc_bruteforce_attempts WHERE IP="'${ip}'";'
endReturn -o $? "Error deleting ip $ip"
}
step_102_info() { echo "Reset and rescan the music library in the background"; }
step_102_alias() { ALIAS="audioreset"; }
step_102() {
shift
local ncUser=$1
local lOcc="sudo -u www-data php $NC_INSTALL_DIR/occ"
if [ -z "$ncUser" ] ; then
echoerr " [E] Reset only for single user"
return 1
fi
exep "sudo -u www-data php \"$NC_INSTALL_DIR/occ\" audioplayer:reset $ncUser > /var/log/ncAudioRescan.log"
echoseq " [I] Rescan audioplayer database for user $ncUser"
exep "sudo -u www-data php \"$NC_INSTALL_DIR/occ\" audioplayer:scan -vvvv $ncUser >> /var/log/ncAudioRescan.log &"
}
VERSION_SEQREV=13
. /usr/local/bin/sequencer.sh