Added CT's Duplicati and Vouch-Proxy
This commit is contained in:
4
CT-Files/duplicati/Configs/Duplicati-env
Normal file
4
CT-Files/duplicati/Configs/Duplicati-env
Normal file
@@ -0,0 +1,4 @@
|
||||
# Settings for duplicati initscript
|
||||
|
||||
# Additional options that are passed to the Daemon.
|
||||
DAEMON_OPTS="--webservice-interface=any --accept-any-ssl-certificate"
|
||||
13
CT-Files/duplicati/Configs/duplicati.service
Normal file
13
CT-Files/duplicati/Configs/duplicati.service
Normal file
@@ -0,0 +1,13 @@
|
||||
[Unit]
|
||||
Description=Duplicati web-server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Nice=19
|
||||
IOSchedulingClass=idle
|
||||
EnvironmentFile=-/etc/default/duplicati
|
||||
ExecStart=/usr/bin/mono /opt/duplicati/Duplicati.Server.exe $DAEMON_OPTS
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
17
CT-Files/duplicati/Scripts/Init.sh
Normal file
17
CT-Files/duplicati/Scripts/Init.sh
Normal file
@@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
#Extract duplicati
|
||||
unzip /opt/Setup/duplicati.zip -d /opt/duplicati
|
||||
#Remove Archive
|
||||
rm /opt/Setup/duplicati.zip
|
||||
#Install updates-cript
|
||||
mv /opt/Setup/Scripts/UpdateDuplicati.sh /opt/UpdateDuplicati.sh
|
||||
#Move configuration inplace
|
||||
mv /opt/Setup/duplicati-installed /opt/Duplicati-installed
|
||||
mv /opt/Setup/Configs/Duplicati-env /etc/default/duplicati
|
||||
#Installing and enabling service
|
||||
mv /opt/Setup/Configs/duplicati.service /lib/systemd/system/duplicati.service
|
||||
chmod +x /lib/systemd/system/duplicati.service
|
||||
ln -s /lib/systemd/system/duplicati.service /etc/systemd/system/multi-user.target.wants/duplicati.service
|
||||
#Fix SSL sert
|
||||
/usr/share/ca-certificates/mozilla/DST_Root_CA_X3.crt
|
||||
update-ca-certificates
|
||||
20
CT-Files/duplicati/Scripts/UpdateDuplicati.sh
Normal file
20
CT-Files/duplicati/Scripts/UpdateDuplicati.sh
Normal file
@@ -0,0 +1,20 @@
|
||||
#!/bin/bash
|
||||
#Get latest vesion
|
||||
NewDuplicatiVer=$(curl -s https://api.github.com/repos/duplicati/duplicati/releases | grep 'tag_name.*' | grep 'beta' | cut -d : -f 2,3 | tr -d \" |tr -d , |tr -d " " |head -n 1)
|
||||
|
||||
#Compare versions to check for update
|
||||
if [ "$NewDuplicatiVer" = "$(cat /opt/Duplicati-installed)" ] ; then
|
||||
echo 'Duplicati up-to-date'
|
||||
exit
|
||||
else
|
||||
echo "Updater Disabled, Newer versions not compatible"
|
||||
exit 123
|
||||
systemctl stop duplicati
|
||||
rm -rf /opt/duplicati.bck
|
||||
mv /opt/duplicati /opt/duplicati.bck
|
||||
echo 'Updating Duplicati'
|
||||
curl -L --retry 7 --retry-delay 5 $(curl -s https://api.github.com/repos/duplicati/duplicati/releases/tags/"$NewDuplicatiVer" | grep browser_download_url | grep .zip |grep -v signatures | sed -e s#^.*https#https# | tr -d \") -o /tmp/duplicati.zip
|
||||
unzip /tmp/duplicati.zip -d /opt/duplicati
|
||||
systemctl start duplicati
|
||||
echo $NewDuplicatiVer > "/opt/Duplicati-installed"
|
||||
fi
|
||||
21
CT-Files/vouchproxy/Scripts/AddOne.sh
Normal file
21
CT-Files/vouchproxy/Scripts/AddOne.sh
Normal file
@@ -0,0 +1,21 @@
|
||||
#!/bin/ash
|
||||
|
||||
#Get and update ID
|
||||
if [ ! -f "/opt/VouchTemplates/.vouchID" ]; then ID=0; else source /opt/VouchTemplates/.vouchID; fi
|
||||
if [ -z ${ID+x} ]; then ID=0; fi
|
||||
ID=$(($ID+1))
|
||||
echo "ID=$ID" > /opt/VouchTemplates/.vouchID
|
||||
|
||||
#Settign up config
|
||||
mkdir "/etc/vouch-proxy$ID"
|
||||
cp -r /usr/share/webapps/vouch-proxy "/usr/share/webapps/vouch-proxy$ID"
|
||||
rm "/usr/share/webapps/vouch-proxy$ID/config"
|
||||
ln -s "/etc/vouch-proxy$ID" "/usr/share/webapps/vouch-proxy$ID/config"
|
||||
cp /opt/VouchTemplates/Vouch-Config "/etc/vouch-proxy$ID/config.yml"
|
||||
sed -i "s/VID/$ID/" "/etc/vouch-proxy$ID/config.yml"
|
||||
|
||||
#Setting up service
|
||||
cp /opt/VouchTemplates/Vouch-Service "/etc/init.d/vouch-proxy$ID"
|
||||
sed -i "s/VID/$ID/" "/etc/init.d/vouch-proxy$ID"
|
||||
chmod +x "/etc/init.d/vouch-proxy$ID"
|
||||
rc-update add "vouch-proxy$ID"
|
||||
5
CT-Files/vouchproxy/Scripts/init.sh
Normal file
5
CT-Files/vouchproxy/Scripts/init.sh
Normal file
@@ -0,0 +1,5 @@
|
||||
#!/bin/ash
|
||||
rc-update add vouch-proxy
|
||||
mv /opt/Setup/Templates /opt/VouchTemplates
|
||||
touch /opt/VouchTemplates/.vouchID
|
||||
mv /opt/Setup/Scripts/AddOne.sh /opt/AddVouchInstance.sh
|
||||
8
CT-Files/vouchproxy/Templates/Vouch-Config
Normal file
8
CT-Files/vouchproxy/Templates/Vouch-Config
Normal file
@@ -0,0 +1,8 @@
|
||||
# vouch config
|
||||
# Bare minimum to get vouch running on another port
|
||||
|
||||
vouch:
|
||||
# logLevel: debug
|
||||
logLevel: info
|
||||
port: 909VID
|
||||
# Insert further config here
|
||||
23
CT-Files/vouchproxy/Templates/Vouch-Service
Normal file
23
CT-Files/vouchproxy/Templates/Vouch-Service
Normal file
@@ -0,0 +1,23 @@
|
||||
#!/sbin/openrc-run
|
||||
|
||||
: ${command_user:="vouch"}
|
||||
: ${command_group:="vouch"}
|
||||
: ${cfgfile:="/etc/vouch-proxyVID/config.yml"}
|
||||
|
||||
name="Vouch Proxy VID"
|
||||
command="/usr/sbin/vouch-proxy"
|
||||
command_background="yes"
|
||||
pidfile="/run/vouch-proxy/$RC_SVCNAME.pid"
|
||||
start_stop_daemon_args="--user $command_user --group $command_group -1 /var/log/vouch-proxy/vouch-proxyVID.log"
|
||||
required_files="$cfgfile"
|
||||
export VOUCH_ROOT="/usr/share/webapps/vouch-proxyVID"
|
||||
|
||||
depend() {
|
||||
use net
|
||||
after firewall
|
||||
}
|
||||
|
||||
start_pre() {
|
||||
checkpath -d -m 0755 -o $command_user:$command_group ${pidfile%/*}
|
||||
checkpath -d -m 0755 -o $command_user:$command_group /var/log/vouch-proxy
|
||||
}
|
||||
Reference in New Issue
Block a user