Linter cleanup (#84)
* Fix all Scriptcheck errors on current dev code * clean recent plex changes
This commit is contained in:
parent
46d1487191
commit
c32ea280da
52
global.sh
52
global.sh
@ -3,12 +3,15 @@
|
||||
|
||||
# yml Parser function
|
||||
# Based on https://gist.github.com/pkuczynski/8665367
|
||||
# shellcheck disable=SC2086
|
||||
parse_yaml() {
|
||||
local prefix=$2
|
||||
local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @|tr @ '\034')
|
||||
prefix=${2}
|
||||
s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @|tr @ '\034')
|
||||
local prefix
|
||||
local s w fs
|
||||
sed -ne "s|^\($s\)\($w\)$s:$s\"\(.*\)\"$s\$|\1$fs\2$fs\3|p" \
|
||||
-e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" $1 |
|
||||
awk -F$fs '{
|
||||
-e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" "${1}" |
|
||||
awk -F"${fs}" '{
|
||||
indent = length($1)/2;
|
||||
vname[indent] = $2;
|
||||
for (i in vname) {if (i > indent) {delete vname[i]}}
|
||||
@ -24,12 +27,12 @@ gitupdate() {
|
||||
echo "checking for updates using Branch: $1"
|
||||
git fetch
|
||||
git update-index -q --refresh
|
||||
CHANGED=$(git diff --name-only origin/$1)
|
||||
if [ ! -z "$CHANGED" ];
|
||||
CHANGED=$(git diff --name-only origin/"$1")
|
||||
if [ -n "$CHANGED" ];
|
||||
then
|
||||
echo "script requires update"
|
||||
git reset --hard
|
||||
git checkout $1
|
||||
git checkout "${1}"
|
||||
git pull
|
||||
echo "script updated, please restart the script manually"
|
||||
exit 1
|
||||
@ -64,17 +67,20 @@ if [ -z "${!jailname}" ]; then
|
||||
exit 1
|
||||
else
|
||||
echo "Creating jail for $1"
|
||||
# shellcheck disable=SC2154
|
||||
pkgs="$(sed 's/[^[:space:]]\{1,\}/"&"/g;s/ /,/g' <<<"${global_jails_pkgs} ${!jailpkgs}")"
|
||||
echo '{"pkgs":['${pkgs}']}' > /tmp/pkg.json
|
||||
echo '{"pkgs":['"${pkgs}"']}' > /tmp/pkg.json
|
||||
if [ "${setdhcp}" == "on" ]
|
||||
then
|
||||
if ! iocage create -n "${1}" -p /tmp/pkg.json -r ${global_jails_version} interfaces="${jailinterfaces}" dhcp="on" vnet="on" allow_raw_sockets="1" boot="on" -b
|
||||
# shellcheck disable=SC2154
|
||||
if ! iocage create -n "${1}" -p /tmp/pkg.json -r "${global_jails_version}" interfaces="${jailinterfaces}" dhcp="on" vnet="on" allow_raw_sockets="1" boot="on" -b
|
||||
then
|
||||
echo "Failed to create jail"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
if ! iocage create -n "${1}" -p /tmp/pkg.json -r ${global_jails_version} interfaces="${jailinterfaces}" ip4_addr="vnet0|${!jailip4}" defaultrouter="${!jailgateway}" vnet="on" allow_raw_sockets="1" boot="on" -b
|
||||
# shellcheck disable=SC2154
|
||||
if ! iocage create -n "${1}" -p /tmp/pkg.json -r "${global_jails_version}" interfaces="${jailinterfaces}" ip4_addr="vnet0|${!jailip4}" defaultrouter="${!jailgateway}" vnet="on" allow_raw_sockets="1" boot="on" -b
|
||||
then
|
||||
echo "Failed to create jail"
|
||||
exit 1
|
||||
@ -84,19 +90,19 @@ else
|
||||
|
||||
rm /tmp/pkg.json
|
||||
echo "creating jail config directory"
|
||||
|
||||
createmount $1 ${global_dataset_config}
|
||||
createmount $1 ${global_dataset_config}/$1 /config
|
||||
# shellcheck disable=SC2154
|
||||
createmount "${1}" "${global_dataset_config}"
|
||||
createmount "${1}" "${global_dataset_config}"/"${1}" /config
|
||||
|
||||
# Create and Mount portsnap
|
||||
echo "Mounting and fetching ports"
|
||||
createmount $1 ${global_dataset_config}/portsnap
|
||||
createmount $1 ${global_dataset_config}/portsnap/db /var/db/portsnap
|
||||
createmount $1 ${global_dataset_config}/portsnap/ports /usr/ports
|
||||
createmount "${1}" "${global_dataset_config}"/portsnap
|
||||
createmount "${1}" "${global_dataset_config}"/portsnap/db /var/db/portsnap
|
||||
createmount "${1}" "${global_dataset_config}"/portsnap/ports /usr/ports
|
||||
|
||||
iocage exec "$1" "if [ -z /usr/ports ]; then portsnap fetch extract; else portsnap auto; fi"
|
||||
iocage exec "${1}" "if [ -z /usr/ports ]; then portsnap fetch extract; else portsnap auto; fi"
|
||||
|
||||
echo "Jail creation completed for $1"
|
||||
echo "Jail creation completed for ${1}"
|
||||
fi
|
||||
|
||||
}
|
||||
@ -112,17 +118,17 @@ createmount() {
|
||||
else
|
||||
if [ ! -d "/mnt/$2" ]; then
|
||||
echo "Dataset does not exist... Creating... $2"
|
||||
zfs create $2
|
||||
zfs create "${2}"
|
||||
else
|
||||
echo "Dataset already exists, skipping creation of $2"
|
||||
fi
|
||||
|
||||
if [ -n "$1" ] && [ -n "$3" ]; then
|
||||
iocage exec $1 mkdir -p $3
|
||||
if [ -n "$4" ]; then
|
||||
iocage fstab -a $1 /mnt/$2 $3 $4
|
||||
iocage exec "${1}" mkdir -p "${3}"
|
||||
if [ -n "${4}" ]; then
|
||||
iocage fstab -a "${1}" /mnt/"${2}" "${3}" "${4}"
|
||||
else
|
||||
iocage fstab -a $1 /mnt/$2 $3 nullfs rw 0 0
|
||||
iocage fstab -a "${1}" /mnt/"${2}" "${3}" nullfs rw 0 0
|
||||
fi
|
||||
else
|
||||
echo "No Jail Name or Mount target specified, not mounting dataset"
|
||||
|
48
jailman.sh
48
jailman.sh
@ -1,15 +1,20 @@
|
||||
#!/usr/local/bin/bash
|
||||
|
||||
# Important defines:
|
||||
export SCRIPT_NAME=$(basename $(test -L "${BASH_SOURCE[0]}" && readlink "${BASH_SOURCE[0]}" || echo "${BASH_SOURCE[0]}"));
|
||||
export SCRIPT_DIR=$(cd $(dirname "${BASH_SOURCE[0]}") && pwd);
|
||||
# shellcheck disable=SC2046
|
||||
SCRIPT_NAME=$(basename $(test -L "${BASH_SOURCE[0]}" && readlink "${BASH_SOURCE[0]}" || echo "${BASH_SOURCE[0]}"));
|
||||
SCRIPT_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd);
|
||||
export SCRIPT_NAME
|
||||
export SCRIPT_DIR
|
||||
|
||||
echo "Working directory for jailman.sh is: ${SCRIPT_DIR}"
|
||||
|
||||
#Includes
|
||||
source ${SCRIPT_DIR}/global.sh
|
||||
# shellcheck source=global.sh
|
||||
source "${SCRIPT_DIR}/global.sh"
|
||||
|
||||
# Check for root privileges
|
||||
if ! [ $(id -u) = 0 ]; then
|
||||
if ! [ "$(id -u)" = 0 ]; then
|
||||
echo "This script must be run with root privileges"
|
||||
exit 1
|
||||
fi
|
||||
@ -31,33 +36,44 @@ fi
|
||||
unset -v sub
|
||||
while getopts ":i:r:u:d:g:h" opt
|
||||
do
|
||||
#Shellcheck on wordsplitting will be disabled. Wordsplitting can't happen, because it's already split using OPTIND.
|
||||
case $opt in
|
||||
i ) installjails=("$OPTARG")
|
||||
# shellcheck disable=SC2046
|
||||
until [[ $(eval "echo \${$OPTIND}") =~ ^-.* ]] || [ -z $(eval "echo \${$OPTIND}") ]; do
|
||||
# shellcheck disable=SC2207
|
||||
installjails+=($(eval "echo \${$OPTIND}"))
|
||||
OPTIND=$((OPTIND + 1))
|
||||
done
|
||||
;;
|
||||
r ) redojails=("$OPTARG")
|
||||
# shellcheck disable=SC2046
|
||||
until [[ $(eval "echo \${$OPTIND}") =~ ^-.* ]] || [ -z $(eval "echo \${$OPTIND}") ]; do
|
||||
# shellcheck disable=SC2207
|
||||
redojails+=($(eval "echo \${$OPTIND}"))
|
||||
OPTIND=$((OPTIND + 1))
|
||||
done
|
||||
;;
|
||||
u ) updatejails=("$OPTARG")
|
||||
# shellcheck disable=SC2046
|
||||
until [[ $(eval "echo \${$OPTIND}") =~ ^-.* ]] || [ -z $(eval "echo \${$OPTIND}") ]; do
|
||||
# shellcheck disable=SC2207
|
||||
updatejails+=($(eval "echo \${$OPTIND}"))
|
||||
OPTIND=$((OPTIND + 1))
|
||||
done
|
||||
;;
|
||||
d ) destroyjails=("$OPTARG")
|
||||
# shellcheck disable=SC2046
|
||||
until [[ $(eval "echo \${$OPTIND}") =~ ^-.* ]] || [ -z $(eval "echo \${$OPTIND}") ]; do
|
||||
# shellcheck disable=SC2207
|
||||
destroyjails+=($(eval "echo \${$OPTIND}"))
|
||||
OPTIND=$((OPTIND + 1))
|
||||
done
|
||||
;;
|
||||
g ) upgradejails=("$OPTARG")
|
||||
# shellcheck disable=SC2046
|
||||
until [[ $(eval "echo \${$OPTIND}") =~ ^-.* ]] || [ -z $(eval "echo \${$OPTIND}") ]; do
|
||||
# shellcheck disable=SC2207
|
||||
upgradejails+=($(eval "echo \${$OPTIND}"))
|
||||
OPTIND=$((OPTIND + 1))
|
||||
done
|
||||
@ -88,18 +104,20 @@ global_dataset_iocage=$(zfs get -H -o value mountpoint $(iocage get -p)/iocage)
|
||||
global_dataset_iocage=${global_dataset_iocage#/mnt/}
|
||||
|
||||
# Parse the Config YAML
|
||||
for configpath in ${SCRIPT_DIR}/jails/*/config.yml; do ! eval $(parse_yaml ${configpath}); done
|
||||
eval $(parse_yaml config.yml)
|
||||
# shellcheck disable=SC2046
|
||||
for configpath in "${SCRIPT_DIR}"/jails/*/config.yml; do ! eval $(parse_yaml "${configpath}"); done
|
||||
eval "$(parse_yaml config.yml)"
|
||||
|
||||
# Check and Execute requested jail destructions
|
||||
if [ ${#destroyjails[@]} -eq 0 ]; then
|
||||
echo "No jails to destroy"
|
||||
else
|
||||
# shellcheck disable=SC2124,SC2145
|
||||
echo "jails to destroy ${destroyjails[@]}"
|
||||
for jail in "${destroyjails[@]}"
|
||||
do
|
||||
echo "destroying $jail"
|
||||
iocage destroy -f $jail
|
||||
iocage destroy -f "${jail}"
|
||||
done
|
||||
|
||||
fi
|
||||
@ -108,13 +126,14 @@ fi
|
||||
if [ ${#installjails[@]} -eq 0 ]; then
|
||||
echo "No jails to install"
|
||||
else
|
||||
# shellcheck disable=SC2124,SC2145
|
||||
echo "jails to install ${installjails[@]}"
|
||||
for jail in "${installjails[@]}"
|
||||
do
|
||||
if [ -f "${SCRIPT_DIR}/jails/$jail/install.sh" ]
|
||||
then
|
||||
echo "Installing $jail"
|
||||
jailcreate $jail && ${SCRIPT_DIR}/jails/$jail/install.sh
|
||||
jailcreate "${jail}" && "${SCRIPT_DIR}"/jails/"${jail}"/install.sh
|
||||
else
|
||||
echo "Missing install script for $jail in ${SCRIPT_DIR}/jails/$jail/install.sh"
|
||||
fi
|
||||
@ -125,13 +144,14 @@ fi
|
||||
if [ ${#redojails[@]} -eq 0 ]; then
|
||||
echo "No jails to ReInstall"
|
||||
else
|
||||
# shellcheck disable=SC2124,SC2145
|
||||
echo "jails to reinstall ${redojails[@]}"
|
||||
for jail in "${redojails[@]}"
|
||||
do
|
||||
if [ -f "${SCRIPT_DIR}/jails/$jail/install.sh" ]
|
||||
then
|
||||
echo "Reinstalling $jail"
|
||||
iocage destroy -f $jail && jailcreate $jail && ${SCRIPT_DIR}/jails/$jail/install.sh
|
||||
iocage destroy -f "${jail}" && jailcreate "${jail}" && "${SCRIPT_DIR}"/jails/"${jail}"/install.sh
|
||||
else
|
||||
echo "Missing install script for $jail in ${SCRIPT_DIR}/jails/$jail/update.sh"
|
||||
fi
|
||||
@ -143,16 +163,17 @@ fi
|
||||
if [ ${#updatejails[@]} -eq 0 ]; then
|
||||
echo "No jails to Update"
|
||||
else
|
||||
# shellcheck disable=SC2124,SC2145
|
||||
echo "jails to update ${updatejails[@]}"
|
||||
for jail in "${updatejails[@]}"
|
||||
do
|
||||
if [ -f "${SCRIPT_DIR}/jails/$jail/update.sh" ]
|
||||
then
|
||||
echo "Updating $jail"
|
||||
iocage update $jail
|
||||
iocage exec $jail "pkg update && pkg upgrade -y" && ${SCRIPT_DIR}/jails/$jail/update.sh
|
||||
iocage restart $jail
|
||||
iocage start $jail
|
||||
iocage update "${jail}"
|
||||
iocage exec "${jail}" "pkg update && pkg upgrade -y" && "${SCRIPT_DIR}"/jails/"${jail}"/update.sh
|
||||
iocage restart "${jail}"
|
||||
iocage start "${jail}"
|
||||
else
|
||||
echo "Missing update script for $jail in ${SCRIPT_DIR}/jails/$jail/update.sh"
|
||||
fi
|
||||
@ -163,6 +184,7 @@ fi
|
||||
if [ ${#upgradejails[@]} -eq 0 ]; then
|
||||
echo "No jails to Upgrade"
|
||||
else
|
||||
# shellcheck disable=SC2124,SC2145
|
||||
echo "jails to update ${upgradejails[@]}"
|
||||
for jail in "${upgradejails[@]}"
|
||||
do
|
||||
|
@ -5,10 +5,14 @@
|
||||
JAIL_NAME="bitwarden"
|
||||
DB_DATABASE=${JAIL_NAME}
|
||||
DB_USER=${JAIL_NAME}
|
||||
# shellcheck disable=SC2154
|
||||
INSTALL_TYPE=${bitwarden_type}
|
||||
DB_HOST="$(sed 's|\(.*\)/.*|\1|' <<<"${mariadb_ip4_addr}"):3306"
|
||||
# shellcheck disable=SC2154
|
||||
DB_HOST="${mariadb_ip4_addr%/*}:3306"
|
||||
# shellcheck disable=SC2154
|
||||
DB_PASSWORD="${bitwarden_db_password}"
|
||||
DB_STRING="mysql://${DB_USER}:${DB_PASSWORD}@${DB_HOST}/${DB_DATABASE}"
|
||||
# shellcheck disable=SC2154
|
||||
ADMIN_TOKEN=${bitwarden_admin_token}
|
||||
|
||||
if [ -z "${ADMIN_TOKEN}" ]; then
|
||||
@ -36,12 +40,13 @@ fi
|
||||
iocage exec ${JAIL_NAME} cp -r /usr/local/share/bitwarden/src/target/release /usr/local/share/bitwarden/bin
|
||||
|
||||
# Download and install webvault
|
||||
WEB_RELEASE_URL=$(curl -Ls -o /dev/null -w %{url_effective} https://github.com/dani-garcia/bw_web_builds/releases/latest)
|
||||
WEB_RELEASE_URL=$(curl -Ls -o /dev/null -w "%{url_effective}" https://github.com/dani-garcia/bw_web_builds/releases/latest)
|
||||
WEB_TAG="${WEB_RELEASE_URL##*/}"
|
||||
iocage exec ${JAIL_NAME} "fetch http://github.com/dani-garcia/bw_web_builds/releases/download/$WEB_TAG/bw_web_$WEB_TAG.tar.gz -o /usr/local/share/bitwarden"
|
||||
iocage exec ${JAIL_NAME} "tar -xzvf /usr/local/share/bitwarden/bw_web_$WEB_TAG.tar.gz -C /usr/local/share/bitwarden/"
|
||||
iocage exec ${JAIL_NAME} rm /usr/local/share/bitwarden/bw_web_$WEB_TAG.tar.gz
|
||||
iocage exec ${JAIL_NAME} rm /usr/local/share/bitwarden/bw_web_"$WEB_TAG".tar.gz
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
if [ -f "/mnt/${global_dataset_config}/${JAIL_NAME}/ssl/bitwarden-ssl.crt" ]; then
|
||||
echo "certificate exist... Skipping cert generation"
|
||||
else
|
||||
@ -50,7 +55,7 @@ else
|
||||
echo "cert folder not existing... creating..."
|
||||
iocage exec ${JAIL_NAME} mkdir /config/ssl
|
||||
fi
|
||||
openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=localhost" -keyout /mnt/${global_dataset_config}/${JAIL_NAME}/ssl/bitwarden-ssl.key -out /mnt/${global_dataset_config}/${JAIL_NAME}/ssl/bitwarden-ssl.crt
|
||||
openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=localhost" -keyout /mnt/"${global_dataset_config}"/${JAIL_NAME}/ssl/bitwarden-ssl.key -out /mnt/"${global_dataset_config}"/${JAIL_NAME}/ssl/bitwarden-ssl.crt
|
||||
fi
|
||||
|
||||
if [ -f "/mnt/${global_dataset_config}/${JAIL_NAME}/bitwarden.log" ]; then
|
||||
@ -67,10 +72,11 @@ fi
|
||||
iocage exec ${JAIL_NAME} "pw user add bitwarden -c bitwarden -u 725 -d /nonexistent -s /usr/bin/nologin"
|
||||
iocage exec ${JAIL_NAME} chown -R bitwarden:bitwarden /usr/local/share/bitwarden /config
|
||||
iocage exec ${JAIL_NAME} mkdir /usr/local/etc/rc.d /usr/local/etc/rc.conf.d
|
||||
cp ${SCRIPT_DIR}/jails/${JAIL_NAME}/includes/bitwarden.rc /mnt/${global_dataset_iocage}/jails/${JAIL_NAME}/root/usr/local/etc/rc.d/bitwarden
|
||||
cp ${SCRIPT_DIR}/jails/${JAIL_NAME}/includes/bitwarden.rc.conf /mnt/${global_dataset_iocage}/jails/${JAIL_NAME}/root/usr/local/etc/rc.conf.d/bitwarden
|
||||
echo 'export DATABASE_URL="'${DB_STRING}'"' >> /mnt/${global_dataset_iocage}/jails/${JAIL_NAME}/root/usr/local/etc/rc.conf.d/bitwarden
|
||||
echo 'export ADMIN_TOKEN="'${ADMIN_TOKEN}'"' >> /mnt/${global_dataset_iocage}/jails/${JAIL_NAME}/root/usr/local/etc/rc.conf.d/bitwarden
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/${JAIL_NAME}/includes/bitwarden.rc /mnt/"${global_dataset_iocage}"/jails/${JAIL_NAME}/root/usr/local/etc/rc.d/bitwarden
|
||||
cp "${SCRIPT_DIR}"/jails/${JAIL_NAME}/includes/bitwarden.rc.conf /mnt/"${global_dataset_iocage}"/jails/${JAIL_NAME}/root/usr/local/etc/rc.conf.d/bitwarden
|
||||
echo 'export DATABASE_URL="'"${DB_STRING}"'"' >> /mnt/"${global_dataset_iocage}"/jails/${JAIL_NAME}/root/usr/local/etc/rc.conf.d/bitwarden
|
||||
echo 'export ADMIN_TOKEN="'"${ADMIN_TOKEN}"'"' >> /mnt/"${global_dataset_iocage}"/jails/${JAIL_NAME}/root/usr/local/etc/rc.conf.d/bitwarden
|
||||
|
||||
if [ "${ADMIN_TOKEN}" == "NONE" ]; then
|
||||
echo "Admin_token set to NONE, disabling admin portal"
|
||||
|
@ -7,10 +7,14 @@
|
||||
JAIL_NAME="bitwarden"
|
||||
DB_DATABASE=${JAIL_NAME}
|
||||
DB_USER=${JAIL_NAME}
|
||||
# shellcheck disable=SC2154
|
||||
INSTALL_TYPE=${bitwarden_type}
|
||||
DB_HOST="$(sed 's|\(.*\)/.*|\1|' <<<"${mariadb_ip4_addr}"):3306"
|
||||
# shellcheck disable=SC2154
|
||||
DB_HOST="${mariadb_ip4_addr%/*}:3306"
|
||||
# shellcheck disable=SC2154
|
||||
DB_PASSWORD="${bitwarden_db_password}"
|
||||
DB_STRING="mysql://${DB_USER}:${DB_PASSWORD}@${DB_HOST}/${DB_DATABASE}"
|
||||
# shellcheck disable=SC2154
|
||||
ADMIN_TOKEN=${bitwarden_admin_token}
|
||||
|
||||
if [ -z "${ADMIN_TOKEN}" ]; then
|
||||
@ -39,17 +43,18 @@ fi
|
||||
iocage exec ${JAIL_NAME} cp -r /usr/local/share/bitwarden/src/target/release /usr/local/share/bitwarden/bin
|
||||
|
||||
# Download and install webvault
|
||||
WEB_RELEASE_URL=$(curl -Ls -o /dev/null -w %{url_effective} https://github.com/dani-garcia/bw_web_builds/releases/latest)
|
||||
WEB_RELEASE_URL=$(curl -Ls -o /dev/null -w "%{url_effective}" https://github.com/dani-garcia/bw_web_builds/releases/latest)
|
||||
WEB_TAG="${WEB_RELEASE_URL##*/}"
|
||||
iocage exec ${JAIL_NAME} "fetch http://github.com/dani-garcia/bw_web_builds/releases/download/$WEB_TAG/bw_web_$WEB_TAG.tar.gz -o /usr/local/share/bitwarden"
|
||||
iocage exec ${JAIL_NAME} "tar -xzvf /usr/local/share/bitwarden/bw_web_$WEB_TAG.tar.gz -C /usr/local/share/bitwarden/"
|
||||
iocage exec ${JAIL_NAME} rm /usr/local/share/bitwarden/bw_web_$WEB_TAG.tar.gz
|
||||
iocage exec ${JAIL_NAME} rm /usr/local/share/bitwarden/bw_web_"$WEB_TAG".tar.gz
|
||||
|
||||
iocage exec ${JAIL_NAME} chown -R bitwarden:bitwarden /usr/local/share/bitwarden /config
|
||||
cp ${SCRIPT_DIR}/jails/${JAIL_NAME}/includes/bitwarden.rc /mnt/${global_dataset_iocage}/jails/${JAIL_NAME}/root/usr/local/etc/rc.d/bitwarden
|
||||
cp ${SCRIPT_DIR}/jails/${JAIL_NAME}/includes/bitwarden.rc.conf /mnt/${global_dataset_iocage}/jails/${JAIL_NAME}/root/usr/local/etc/rc.conf.d/bitwarden
|
||||
echo 'export DATABASE_URL="'${DB_STRING}'"' >> /mnt/${global_dataset_iocage}/jails/${JAIL_NAME}/root/usr/local/etc/rc.conf.d/bitwarden
|
||||
echo 'export ADMIN_TOKEN="'${ADMIN_TOKEN}'"' >> /mnt/${global_dataset_iocage}/jails/${JAIL_NAME}/root/usr/local/etc/rc.conf.d/bitwarden
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/${JAIL_NAME}/includes/bitwarden.rc /mnt/"${global_dataset_iocage}"/jails/${JAIL_NAME}/root/usr/local/etc/rc.d/bitwarden
|
||||
cp "${SCRIPT_DIR}"/jails/${JAIL_NAME}/includes/bitwarden.rc.conf /mnt/"${global_dataset_iocage}"/jails/${JAIL_NAME}/root/usr/local/etc/rc.conf.d/bitwarden
|
||||
echo 'export DATABASE_URL="'"${DB_STRING}"'"' >> /mnt/"${global_dataset_iocage}"/jails/${JAIL_NAME}/root/usr/local/etc/rc.conf.d/bitwarden
|
||||
echo 'export ADMIN_TOKEN="'"${ADMIN_TOKEN}"'"' >> /mnt/"${global_dataset_iocage}"/jails/${JAIL_NAME}/root/usr/local/etc/rc.conf.d/bitwarden
|
||||
|
||||
if [ "${ADMIN_TOKEN}" == "NONE" ]; then
|
||||
echo "Admin_token set to NONE, disabling admin portal"
|
||||
|
@ -9,11 +9,14 @@
|
||||
|
||||
# Initialise variables
|
||||
JAIL_NAME="influxdb"
|
||||
JAIL_IP="$(sed 's|\(.*\)/.*|\1|' <<<"${influxdb_ip4_addr}" )"
|
||||
# shellcheck disable=SC2154
|
||||
JAIL_IP="${influxdb_ip4_addr%/*}"
|
||||
INCLUDES_PATH="${SCRIPT_DIR}/jails/influxdb/includes"
|
||||
DATABASE=${influxdb_database}
|
||||
# shellcheck disable=SC2154
|
||||
DATABASE="${influxdb_database}"
|
||||
|
||||
# Mount and configure proper configuration location
|
||||
# shellcheck disable=SC2154
|
||||
cp -rf "${INCLUDES_PATH}/influxd.conf" "/mnt/${global_dataset_config}/${JAIL_NAME}/influxd.conf"
|
||||
iocage exec "${JAIL_NAME}" mkdir -p /config/db/data /config/db/meta /config/db/wal
|
||||
iocage exec "${JAIL_NAME}" chown -R influxd:influxd /config/db
|
||||
|
@ -7,7 +7,8 @@ iocage exec jackett rm /usr/local/share/Jackett.Binaries.Mono.tar.gz
|
||||
iocage exec jackett "pw user add jackett -c jackett -u 818 -d /nonexistent -s /usr/bin/nologin"
|
||||
iocage exec jackett chown -R jackett:jackett /usr/local/share/Jackett /config
|
||||
iocage exec jackett mkdir /usr/local/etc/rc.d
|
||||
cp ${SCRIPT_DIR}/jails/jackett/includes/jackett.rc /mnt/${global_dataset_iocage}/jails/jackett/root/usr/local/etc/rc.d/jackett
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/jackett/includes/jackett.rc /mnt/"${global_dataset_iocage}"/jails/jackett/root/usr/local/etc/rc.d/jackett
|
||||
iocage exec jackett chmod u+x /usr/local/etc/rc.d/jackett
|
||||
iocage exec jackett sysrc "jackett_enable=YES"
|
||||
iocage exec jackett service jackett restart
|
||||
|
@ -4,6 +4,7 @@
|
||||
iocage exec jackett service jackett stop
|
||||
#TODO insert code to update jacket itself here
|
||||
iocage exec jackett chown -R jackett:jackett /usr/local/share/Jackett /config
|
||||
cp ${SCRIPT_DIR}/jails/test10/includes/jackett.rc /mnt/${global_dataset_iocage}/jails/test10/root/usr/local/etc/rc.d/jackett
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/test10/includes/jackett.rc /mnt/"${global_dataset_iocage}"/jails/test10/root/usr/local/etc/rc.d/jackett
|
||||
iocage exec jackett chmod u+x /usr/local/etc/rc.d/jackett
|
||||
iocage exec jackett service jackett restart
|
||||
|
@ -6,7 +6,8 @@ iocage exec kms svn checkout https://github.com/SystemRage/py-kms/trunk/py-kms /
|
||||
iocage exec kms "pw user add kms -c kms -u 666 -d /nonexistent -s /usr/bin/nologin"
|
||||
iocage exec kms chown -R kms:kms /usr/local/share/py-kms /config
|
||||
iocage exec kms mkdir /usr/local/etc/rc.d
|
||||
cp ${SCRIPT_DIR}/jails/kms/includes/py_kms.rc /mnt/${global_dataset_iocage}/jails/kms/root/usr/local/etc/rc.d/py_kms
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/kms/includes/py_kms.rc /mnt/"${global_dataset_iocage}"/jails/kms/root/usr/local/etc/rc.d/py_kms
|
||||
iocage exec kms chmod u+x /usr/local/etc/rc.d/py_kms
|
||||
iocage exec kms sysrc "py_kms_enable=YES"
|
||||
iocage exec kms service py_kms start
|
@ -4,6 +4,7 @@
|
||||
iocage exec kms service py_kms stop
|
||||
iocage exec kms svn checkout https://github.com/SystemRage/py-kms/trunk/py-kms /usr/local/share/py-kms
|
||||
iocage exec kms chown -R kms:kms /usr/local/share/py-kms /config
|
||||
cp ${SCRIPT_DIR}/jails/kms/includes/py_kms.rc /mnt/${global_dataset_iocage}/jails/kms/root/usr/local/etc/rc.d/py_kms
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/kms/includes/py_kms.rc /mnt/"${global_dataset_iocage}"/jails/kms/root/usr/local/etc/rc.d/py_kms
|
||||
iocage exec kms chmod u+x /usr/local/etc/rc.d/py_kms
|
||||
iocage exec kms service py_kms start
|
@ -2,12 +2,14 @@
|
||||
# This file contains the install script for lidarr
|
||||
|
||||
# Check if dataset for completed download and it parent dataset exist, create if they do not.
|
||||
createmount lidarr ${global_dataset_downloads}
|
||||
createmount lidarr ${global_dataset_downloads}/complete /mnt/fetched
|
||||
# shellcheck disable=SC2154
|
||||
createmount lidarr "${global_dataset_downloads}"
|
||||
createmount lidarr "${global_dataset_downloads}"/complete /mnt/fetched
|
||||
|
||||
# Check if dataset for media library and the dataset for movies exist, create if they do not.
|
||||
createmount lidarr ${global_dataset_media}
|
||||
createmount lidarr ${global_dataset_media}/music /mnt/music
|
||||
# shellcheck disable=SC2154
|
||||
createmount lidarr "${global_dataset_media}"
|
||||
createmount lidarr "${global_dataset_media}"/music /mnt/music
|
||||
|
||||
|
||||
iocage exec lidarr "fetch https://github.com/lidarr/Lidarr/releases/download/v0.2.0.371/Lidarr.develop.0.2.0.371.linux.tar.gz -o /usr/local/share"
|
||||
@ -16,7 +18,8 @@ iocage exec lidarr "rm /usr/local/share/Lidarr.develop.0.2.0.371.linux.tar.gz"
|
||||
iocage exec lidarr "pw user add lidarr -c lidarr -u 353 -d /nonexistent -s /usr/bin/nologin"
|
||||
iocage exec lidarr chown -R lidarr:lidarr /usr/local/share/Lidarr /config
|
||||
iocage exec lidarr mkdir /usr/local/etc/rc.d
|
||||
cp ${SCRIPT_DIR}/jails/lidarr/includes/lidarr.rc /mnt/${global_dataset_iocage}/jails/lidarr/root/usr/local/etc/rc.d/lidarr
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/lidarr/includes/lidarr.rc /mnt/"${global_dataset_iocage}"/jails/lidarr/root/usr/local/etc/rc.d/lidarr
|
||||
iocage exec lidarr chmod u+x /usr/local/etc/rc.d/lidarr
|
||||
iocage exec lidarr sysrc "lidarr_enable=YES"
|
||||
iocage exec lidarr service lidarr start
|
||||
|
@ -4,6 +4,7 @@
|
||||
iocage exec lidarr service lidarr stop
|
||||
#TODO insert code to update lidarr itself here
|
||||
iocage exec lidarr chown -R lidarr:lidarr /usr/local/share/lidarr /config
|
||||
cp ${SCRIPT_DIR}/jails/lidarr/includes/lidarr.rc /mnt/${global_dataset_iocage}/jails/lidarr/root/usr/local/etc/rc.d/lidarr
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/lidarr/includes/lidarr.rc /mnt/"${global_dataset_iocage}"/jails/lidarr/root/usr/local/etc/rc.d/lidarr
|
||||
iocage exec lidarr chmod u+x /usr/local/etc/rc.d/lidarr
|
||||
iocage exec lidarr service lidarr restart
|
@ -1,4 +1,5 @@
|
||||
#!/bin/sh
|
||||
# shellcheck disable=1091,2223,2154,2034
|
||||
#
|
||||
# PROVIDE: caddy
|
||||
# REQUIRE: networking
|
||||
|
@ -8,9 +8,12 @@
|
||||
|
||||
# Initialise defaults
|
||||
JAIL_NAME="mariadb"
|
||||
JAIL_IP="$(sed 's|\(.*\)/.*|\1|' <<<"${mariadb_ip4_addr}" )"
|
||||
# shellcheck disable=SC2154
|
||||
JAIL_IP="${mariadb_ip4_addr%/*}"
|
||||
INCLUDES_PATH="${SCRIPT_DIR}/jails/mariadb/includes"
|
||||
# shellcheck disable=SC2154
|
||||
CERT_EMAIL=${mariadb_cert_email}
|
||||
# shellcheck disable=SC2154
|
||||
DB_ROOT_PASSWORD=${mariadb_db_root_password}
|
||||
DB_NAME="MariaDB"
|
||||
DL_FLAGS=""
|
||||
@ -23,16 +26,16 @@ if [ -z "${mariadb_ip4_addr}" ]; then
|
||||
fi
|
||||
|
||||
# Make sure DB_PATH is empty -- if not, MariaDB/PostgreSQL will choke
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
if [ "$(ls -A "/mnt/${global_dataset_config}/${JAIL_NAME}/db")" ]; then
|
||||
echo "Reinstall of mariadb detected... Continuing"
|
||||
REINSTALL="true"
|
||||
fi
|
||||
|
||||
# Mount database dataset and set zfs preferences
|
||||
createmount ${JAIL_NAME} ${global_dataset_config}/${JAIL_NAME}/db /var/db/mysql
|
||||
zfs set recordsize=16K ${global_dataset_config}/${JAIL_NAME}/db
|
||||
zfs set primarycache=metadata ${global_dataset_config}/${JAIL_NAME}/db
|
||||
createmount ${JAIL_NAME} "${global_dataset_config}"/${JAIL_NAME}/db /var/db/mysql
|
||||
zfs set recordsize=16K "${global_dataset_config}"/${JAIL_NAME}/db
|
||||
zfs set primarycache=metadata "${global_dataset_config}"/${JAIL_NAME}/db
|
||||
|
||||
iocage exec "${JAIL_NAME}" chown -R 88:88 /var/db/mysql
|
||||
|
||||
@ -62,6 +65,7 @@ iocage exec "${JAIL_NAME}" sysrc mysql_enable="YES"
|
||||
echo "Copying Caddyfile for no SSL"
|
||||
iocage exec "${JAIL_NAME}" cp -f /mnt/includes/caddy /usr/local/etc/rc.d/
|
||||
iocage exec "${JAIL_NAME}" cp -f /mnt/includes/Caddyfile /usr/local/www/Caddyfile
|
||||
# shellcheck disable=SC2154
|
||||
iocage exec "${JAIL_NAME}" sed -i '' "s/yourhostnamehere/${mariadb_host_name}/" /usr/local/www/Caddyfile
|
||||
iocage exec "${JAIL_NAME}" sed -i '' "s/JAIL-IP/${JAIL_IP}/" /usr/local/www/Caddyfile
|
||||
|
||||
|
@ -2,7 +2,8 @@
|
||||
# This file contains the update script for mariadb
|
||||
|
||||
JAIL_NAME="mariadb"
|
||||
JAIL_IP="$(sed 's|\(.*\)/.*|\1|' <<<"${mariadb_ip4_addr}" )"
|
||||
# shellcheck disable=SC2154
|
||||
JAIL_IP="${mariadb_ip4_addr%/*}"
|
||||
INCLUDES_PATH="${SCRIPT_DIR}/jails/mariadb/includes"
|
||||
|
||||
# Install includes fstab
|
||||
@ -24,6 +25,7 @@ fi
|
||||
echo "Copying Caddyfile for no SSL"
|
||||
iocage exec "${JAIL_NAME}" cp -f /mnt/includes/caddy /usr/local/etc/rc.d/
|
||||
iocage exec "${JAIL_NAME}" cp -f /mnt/includes/Caddyfile /usr/local/www/Caddyfile
|
||||
# shellcheck disable=SC2154
|
||||
iocage exec "${JAIL_NAME}" sed -i '' "s/yourhostnamehere/${mariadb_host_name}/" /usr/local/www/Caddyfile
|
||||
iocage exec "${JAIL_NAME}" sed -i '' "s/JAIL-IP/${JAIL_IP}/" /usr/local/www/Caddyfile
|
||||
|
||||
|
@ -1,4 +1,5 @@
|
||||
#!/bin/sh
|
||||
# shellcheck disable=1091,2223,2154,2034
|
||||
#
|
||||
# PROVIDE: caddy
|
||||
# REQUIRE: networking
|
||||
|
@ -5,16 +5,26 @@
|
||||
|
||||
# Initialise defaults
|
||||
JAIL_NAME="nextcloud"
|
||||
JAIL_IP="$(sed 's|\(.*\)/.*|\1|' <<<"${nextcloud_ip4_addr}" )"
|
||||
# shellcheck disable=SC2154
|
||||
JAIL_IP="${nextcloud_ip4_addr%/*}"
|
||||
# shellcheck disable=SC2154
|
||||
DATABASE="$nextcloud_database"
|
||||
INCLUDES_PATH="${SCRIPT_DIR}/jails/nextcloud/includes"
|
||||
# shellcheck disable=SC2154
|
||||
STANDALONE_CERT=${nextcloud_standalone_cert}
|
||||
# shellcheck disable=SC2154
|
||||
SELFSIGNED_CERT=${nextcloud_selfsigned_cert}
|
||||
# shellcheck disable=SC2154
|
||||
DNS_CERT=${nextcloud_dns_cert}
|
||||
# shellcheck disable=SC2154
|
||||
NO_CERT=${nextcloud_no_cert}
|
||||
# shellcheck disable=SC2154
|
||||
DL_FLAGS=${nextcloud_dl_flags}
|
||||
# shellcheck disable=SC2154
|
||||
DNS_SETTING=${nextcloud_dns_settings}
|
||||
# shellcheck disable=SC2154
|
||||
CERT_EMAIL=${nextcloud_cert_email}
|
||||
# shellcheck disable=SC2154
|
||||
HOST_NAME=${nextcloud_host_name}
|
||||
|
||||
# Only generate new DB passwords when using buildin database
|
||||
@ -22,9 +32,13 @@ HOST_NAME=${nextcloud_host_name}
|
||||
|
||||
if [ "${DATABASE}" = "pgsql-external" ]; then
|
||||
DB_NAME="PostgreSQL"
|
||||
# shellcheck disable=SC2154
|
||||
DB_HOST="${nextcloud_db_host}"
|
||||
# shellcheck disable=SC2154
|
||||
DB_DATABASE="${nextcloud_db_database}"
|
||||
# shellcheck disable=SC2154
|
||||
DB_USER="${nextcloud_db_user}"
|
||||
# shellcheck disable=SC2154
|
||||
DB_PASSWORD="${nextcloud_db_password}"
|
||||
elif [ "${DATABASE}" = "mariadb-external" ]; then
|
||||
DB_NAME="MariaDB"
|
||||
@ -35,7 +49,8 @@ elif [ "${DATABASE}" = "mariadb-external" ]; then
|
||||
elif [ "${DATABASE}" = "mariadb-jail" ]; then
|
||||
DB_DATABASE="nextcloud"
|
||||
DB_USER="nextcloud"
|
||||
DB_HOST="$(sed 's|\(.*\)/.*|\1|' <<<"${mariadb_ip4_addr}"):3306"
|
||||
# shellcheck disable=SC2154
|
||||
DB_HOST="${mariadb_ip4_addr%/*}:3306"
|
||||
DB_PASSWORD="${nextcloud_db_password}"
|
||||
else
|
||||
echo "Invalid ${JAIL_NAME}_database selected please select one from the following options:"
|
||||
@ -84,6 +99,7 @@ if [ -z "${DB_DATABASE}" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
if [ -z "${nextcloud_time_zone}" ]; then
|
||||
echo 'Configuration error: TIME_ZONE must be set'
|
||||
exit 1
|
||||
@ -92,35 +108,36 @@ if [ -z "${HOST_NAME}" ]; then
|
||||
echo 'Configuration error: HOST_NAME must be set'
|
||||
exit 1
|
||||
fi
|
||||
if [ $STANDALONE_CERT -eq 0 ] && [ $DNS_CERT -eq 0 ] && [ $NO_CERT -eq 0 ] && [ $SELFSIGNED_CERT -eq 0 ]; then
|
||||
if [ "$STANDALONE_CERT" -eq 0 ] && [ "$DNS_CERT" -eq 0 ] && [ "$NO_CERT" -eq 0 ] && [ "$SELFSIGNED_CERT" -eq 0 ]; then
|
||||
echo 'Configuration error: Either STANDALONE_CERT, DNS_CERT, NO_CERT,'
|
||||
echo 'or SELFSIGNED_CERT must be set to 1.'
|
||||
exit 1
|
||||
fi
|
||||
if [ $STANDALONE_CERT -eq 1 ] && [ $DNS_CERT -eq 1 ] ; then
|
||||
if [ "$STANDALONE_CERT" -eq 1 ] && [ "$DNS_CERT" -eq 1 ] ; then
|
||||
echo 'Configuration error: Only one of STANDALONE_CERT and DNS_CERT'
|
||||
echo 'may be set to 1.'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ $DNS_CERT -eq 1 ] && [ -z "${DNS_PLUGIN}" ] ; then
|
||||
if [ "$DNS_CERT" -eq 1 ] && [ -z "${DNS_PLUGIN}" ] ; then
|
||||
echo "DNS_PLUGIN must be set to a supported DNS provider."
|
||||
echo "See https://caddyserver.com/docs under the heading of \"DNS Providers\" for list."
|
||||
echo "Be sure to omit the prefix of \"tls.dns.\"."
|
||||
exit 1
|
||||
fi
|
||||
if [ $DNS_CERT -eq 1 ] && [ -z "${DNS_ENV}" ] ; then
|
||||
if [ "$DNS_CERT" -eq 1 ] && [ -z "${DNS_ENV}" ] ; then
|
||||
echo "DNS_ENV must be set to a your DNS provider\'s authentication credentials."
|
||||
echo "See https://caddyserver.com/docs under the heading of \"DNS Providers\" for more."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ $DNS_CERT -eq 1 ] ; then
|
||||
if [ "$DNS_CERT" -eq 1 ] ; then
|
||||
DL_FLAGS="tls.dns.${DNS_PLUGIN}"
|
||||
DNS_SETTING="dns ${DNS_PLUGIN}"
|
||||
fi
|
||||
|
||||
# Make sure DB_PATH is empty -- if not, MariaDB/PostgreSQL will choke
|
||||
# shellcheck disable=SC2154
|
||||
if [ "$(ls -A "/mnt/${global_dataset_config}/${JAIL_NAME}/config")" ]; then
|
||||
echo "Reinstall of Nextcloud detected... "
|
||||
echo "External database selected, unable to verify compatibility. REINSTALL MIGHT NOT WORK... Continuing"
|
||||
@ -135,9 +152,9 @@ fi
|
||||
#####
|
||||
|
||||
# Create and Mount Nextcloud, Config and Files
|
||||
createmount ${JAIL_NAME} ${global_dataset_config}/${JAIL_NAME}/config /usr/local/www/nextcloud/config
|
||||
createmount ${JAIL_NAME} ${global_dataset_config}/${JAIL_NAME}/themes /usr/local/www/nextcloud/themes
|
||||
createmount ${JAIL_NAME} ${global_dataset_config}/${JAIL_NAME}/files /config/files
|
||||
createmount ${JAIL_NAME} "${global_dataset_config}"/${JAIL_NAME}/config /usr/local/www/nextcloud/config
|
||||
createmount ${JAIL_NAME} "${global_dataset_config}"/${JAIL_NAME}/themes /usr/local/www/nextcloud/themes
|
||||
createmount ${JAIL_NAME} "${global_dataset_config}"/${JAIL_NAME}/files /config/files
|
||||
|
||||
# Install includes fstab
|
||||
iocage exec "${JAIL_NAME}" mkdir -p /mnt/includes
|
||||
@ -197,7 +214,7 @@ iocage exec "${JAIL_NAME}" chown -R www:www /usr/local/www/nextcloud/
|
||||
|
||||
|
||||
# Generate and install self-signed cert, if necessary
|
||||
if [ $SELFSIGNED_CERT -eq 1 ] && [ ! -f "/mnt/${global_dataset_config}/${JAIL_NAME}/ssl/privkey.pem" ]; then
|
||||
if [ "$SELFSIGNED_CERT" -eq 1 ] && [ ! -f "/mnt/${global_dataset_config}/${JAIL_NAME}/ssl/privkey.pem" ]; then
|
||||
echo "No ssl certificate present, generating self signed certificate"
|
||||
if [ ! -d "/mnt/${global_dataset_config}/${JAIL_NAME}/ssl" ]; then
|
||||
echo "cert folder not existing... creating..."
|
||||
@ -212,13 +229,13 @@ fi
|
||||
iocage exec "${JAIL_NAME}" cp -f /mnt/includes/php.ini /usr/local/etc/php.ini
|
||||
iocage exec "${JAIL_NAME}" cp -f /mnt/includes/redis.conf /usr/local/etc/redis.conf
|
||||
iocage exec "${JAIL_NAME}" cp -f /mnt/includes/www.conf /usr/local/etc/php-fpm.d/
|
||||
if [ $STANDALONE_CERT -eq 1 ] || [ $DNS_CERT -eq 1 ]; then
|
||||
if [ "$STANDALONE_CERT" -eq 1 ] || [ "$DNS_CERT" -eq 1 ]; then
|
||||
iocage exec "${JAIL_NAME}" cp -f /mnt/includes/remove-staging.sh /root/
|
||||
fi
|
||||
if [ $NO_CERT -eq 1 ]; then
|
||||
if [ "$NO_CERT" -eq 1 ]; then
|
||||
echo "Copying Caddyfile for no SSL"
|
||||
iocage exec "${JAIL_NAME}" cp -f /mnt/includes/Caddyfile-nossl /usr/local/www/Caddyfile
|
||||
elif [ $SELFSIGNED_CERT -eq 1 ]; then
|
||||
elif [ "$SELFSIGNED_CERT" -eq 1 ]; then
|
||||
echo "Copying Caddyfile for self-signed cert"
|
||||
iocage exec "${JAIL_NAME}" cp -f /mnt/includes/Caddyfile-selfsigned /usr/local/www/Caddyfile
|
||||
else
|
||||
@ -277,7 +294,7 @@ else
|
||||
iocage exec "${JAIL_NAME}" su -m www -c 'php /usr/local/www/nextcloud/occ config:system:set memcache.locking --value="\OC\Memcache\Redis"'
|
||||
iocage exec "${JAIL_NAME}" su -m www -c "php /usr/local/www/nextcloud/occ config:system:set overwritehost --value=\"${HOST_NAME}\""
|
||||
iocage exec "${JAIL_NAME}" su -m www -c "php /usr/local/www/nextcloud/occ config:system:set overwriteprotocol --value=\"https\""
|
||||
if [ $NO_CERT -eq 1 ]; then
|
||||
if [ "$NO_CERT" -eq 1 ]; then
|
||||
iocage exec "${JAIL_NAME}" su -m www -c "php /usr/local/www/nextcloud/occ config:system:set overwrite.cli.url --value=\"http://${HOST_NAME}/\""
|
||||
else
|
||||
iocage exec "${JAIL_NAME}" su -m www -c "php /usr/local/www/nextcloud/occ config:system:set overwrite.cli.url --value=\"https://${HOST_NAME}/\""
|
||||
@ -303,7 +320,7 @@ iocage fstab -r "${JAIL_NAME}" "${INCLUDES_PATH}" /mnt/includes nullfs rw 0 0
|
||||
|
||||
# Done!
|
||||
echo "Installation complete!"
|
||||
if [ $NO_CERT -eq 1 ]; then
|
||||
if [ "$NO_CERT" -eq 1 ]; then
|
||||
echo "Using your web browser, go to http://${HOST_NAME} to log in"
|
||||
else
|
||||
echo "Using your web browser, go to https://${HOST_NAME} to log in"
|
||||
@ -325,14 +342,14 @@ else
|
||||
fi
|
||||
|
||||
echo ""
|
||||
if [ $STANDALONE_CERT -eq 1 ] || [ $DNS_CERT -eq 1 ]; then
|
||||
if [ "$STANDALONE_CERT" -eq 1 ] || [ "$DNS_CERT" -eq 1 ]; then
|
||||
echo "You have obtained your Let's Encrypt certificate using the staging server."
|
||||
echo "This certificate will not be trusted by your browser and will cause SSL errors"
|
||||
echo "when you connect. Once you've verified that everything else is working"
|
||||
echo "correctly, you should issue a trusted certificate. To do this, run:"
|
||||
echo " iocage exec ${JAIL_NAME} /root/remove-staging.sh"
|
||||
echo ""
|
||||
elif [ $SELFSIGNED_CERT -eq 1 ]; then
|
||||
elif [ "$SELFSIGNED_CERT" -eq 1 ]; then
|
||||
echo "You have chosen to create a self-signed TLS certificate for your Nextcloud"
|
||||
echo "installation. This certificate will not be trusted by your browser and"
|
||||
echo "will cause SSL errors when you connect. If you wish to replace this certificate"
|
||||
|
@ -8,10 +8,11 @@ iocage exec organizr sed -i '' -e 's/;listen.mode = 0660/listen.mode = 0600/g' /
|
||||
iocage exec organizr cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini
|
||||
iocage exec organizr sed -i '' -e 's?;date.timezone =?date.timezone = "Universal"?g' /usr/local/etc/php.ini
|
||||
iocage exec organizr sed -i '' -e 's?;cgi.fix_pathinfo=1?cgi.fix_pathinfo=0?g' /usr/local/etc/php.ini
|
||||
mv /mnt/${global_dataset_iocage}/jails/organizr/root/usr/local/etc/nginx/nginx.conf /mnt/${global_dataset_iocage}/jails/organizr/root/usr/local/etc/nginx/nginx.conf.bak
|
||||
cp ${SCRIPT_DIR}/jails/organizr/includes/nginx.conf /mnt/${global_dataset_iocage}/jails/organizr/root/usr/local/etc/nginx/nginx.conf
|
||||
cp -Rf ${SCRIPT_DIR}/jails/organizr/includes/custom /mnt/${global_dataset_iocage}/jails/organizr/root/usr/local/etc/nginx/custom
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
mv /mnt/"${global_dataset_iocage}"/jails/organizr/root/usr/local/etc/nginx/nginx.conf /mnt/"${global_dataset_iocage}"/jails/organizr/root/usr/local/etc/nginx/nginx.conf.bak
|
||||
cp "${SCRIPT_DIR}"/jails/organizr/includes/nginx.conf /mnt/"${global_dataset_iocage}"/jails/organizr/root/usr/local/etc/nginx/nginx.conf
|
||||
cp -Rf "${SCRIPT_DIR}"/jails/organizr/includes/custom /mnt/"${global_dataset_iocage}"/jails/organizr/root/usr/local/etc/nginx/custom
|
||||
# shellcheck disable=SC2154
|
||||
if [ ! -d "/mnt/${global_dataset_config}/organizr/ssl" ]; then
|
||||
echo "cert folder doesn't exist... creating..."
|
||||
iocage exec organizr mkdir /config/ssl
|
||||
@ -21,7 +22,7 @@ if [ -f "/mnt/${global_dataset_config}/organizr/ssl/Organizr-Cert.crt" ]; then
|
||||
echo "certificate exists... Skipping cert generation"
|
||||
else
|
||||
echo "No ssl certificate present, generating self signed certificate"
|
||||
openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=localhost" -keyout /mnt/${global_dataset_config}/organizr/ssl/Organizr-Cert.key -out /mnt/${global_dataset_config}/organizr/ssl/Organizr-Cert.crt
|
||||
openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=localhost" -keyout /mnt/"${global_dataset_config}"/organizr/ssl/Organizr-Cert.key -out /mnt/"${global_dataset_config}"/organizr/ssl/Organizr-Cert.crt
|
||||
fi
|
||||
|
||||
iocage exec organizr git clone https://github.com/causefx/Organizr.git /usr/local/www/Organizr
|
||||
|
@ -1,11 +1,11 @@
|
||||
#!/usr/local/bin/bash
|
||||
# This file contains the update script for Organizr
|
||||
|
||||
|
||||
iocage exec organizr service nginx stop
|
||||
iocage exec organizr service php-fpm stop
|
||||
# TODO setup cli update for Organizr here.
|
||||
cp ${SCRIPT_DIR}/jails/organizr/includes/nginx.conf /mnt/${global_dataset_iocage}/jails/organizr/root/usr/local/etc/nginx/nginx.conf
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/organizr/includes/nginx.conf /mnt/"${global_dataset_iocage}"/jails/organizr/root/usr/local/etc/nginx/nginx.conf
|
||||
iocage exec organizr "cd /usr/local/www/Organizr && git pull"
|
||||
iocage exec organizr chown -R www:www /usr/local/www /config /usr/local/etc/nginx/nginx.conf /usr/local/etc/nginx/custom
|
||||
iocage exec organizr service nginx start
|
||||
|
@ -5,20 +5,23 @@ iocage exec plex mkdir -p /usr/local/etc/pkg/repos
|
||||
|
||||
|
||||
# Change to to more frequent FreeBSD repo to stay up-to-date with plex more.
|
||||
cp ${SCRIPT_DIR}/jails/plex/includes/FreeBSD.conf /mnt/${global_dataset_iocage}/jails/plex/root/usr/local/etc/pkg/repos/FreeBSD.conf
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/plex/includes/FreeBSD.conf /mnt/"${global_dataset_iocage}"/jails/plex/root/usr/local/etc/pkg/repos/FreeBSD.conf
|
||||
|
||||
|
||||
# Check if datasets for media librarys exist, create them if they do not.
|
||||
createmount plex ${global_dataset_media} /mnt/media
|
||||
createmount plex ${global_dataset_media}/movies /mnt/media/movies
|
||||
createmount plex ${global_dataset_media}/music /mnt/media/music
|
||||
createmount plex ${global_dataset_media}/shows /mnt/media/shows
|
||||
# shellcheck disable=SC2154
|
||||
createmount plex "${global_dataset_media}" /mnt/media
|
||||
createmount plex "${global_dataset_media}"/movies /mnt/media/movies
|
||||
createmount plex "${global_dataset_media}"/music /mnt/media/music
|
||||
createmount plex "${global_dataset_media}"/shows /mnt/media/shows
|
||||
|
||||
# Create plex ramdisk if specified
|
||||
# shellcheck disable=SC2154
|
||||
if [ -z "${plex_ramdisk}" ]; then
|
||||
echo "no ramdisk specified for plex, continuing without randisk"
|
||||
else
|
||||
iocage fstab -a plex tmpfs /tmp_transcode tmpfs rw,size=${plex_ramdisk},mode=1777 0 0
|
||||
iocage fstab -a plex tmpfs /tmp_transcode tmpfs rw,size="${plex_ramdisk}",mode=1777 0 0
|
||||
fi
|
||||
|
||||
iocage exec plex chown -R plex:plex /config
|
||||
@ -31,6 +34,7 @@ iocage exec plex pkg upgrade -y
|
||||
iocage exec plex pw groupmod -n video -m plex
|
||||
|
||||
# Run different install procedures depending on Plex vs Plex Beta
|
||||
# shellcheck disable=SC2154
|
||||
if [ "$plex_beta" == "true" ]; then
|
||||
echo "beta enabled in config.yml... using plex beta for install"
|
||||
iocage exec plex sysrc "plexmediaserver_plexpass_enable=YES"
|
||||
|
@ -2,6 +2,7 @@
|
||||
# This file contains the update script for Plex
|
||||
|
||||
# Run different update procedures depending on Plex vs Plex Beta
|
||||
# shellcheck disable=SC2154
|
||||
if [ "$plex_plexpass" == "true" ]; then
|
||||
echo "beta enabled in config.yml... using plex beta for update..."
|
||||
iocage exec plex service plexmediaserver_plexpass stop
|
||||
|
@ -2,12 +2,14 @@
|
||||
# This file contains the install script for radarr
|
||||
|
||||
# Check if dataset for completed download and it parent dataset exist, create if they do not.
|
||||
createmount radarr ${global_dataset_downloads}
|
||||
createmount radarr ${global_dataset_downloads}/complete /mnt/fetched
|
||||
# shellcheck disable=SC2154
|
||||
createmount radarr "${global_dataset_downloads}"
|
||||
createmount radarr "${global_dataset_downloads}"/complete /mnt/fetched
|
||||
|
||||
# Check if dataset for media library and the dataset for movies exist, create if they do not.
|
||||
createmount radarr ${global_dataset_media}
|
||||
createmount radarr ${global_dataset_media}/movies /mnt/movies
|
||||
# shellcheck disable=SC2154
|
||||
createmount radarr "${global_dataset_media}"
|
||||
createmount radarr "${global_dataset_media}"/movies /mnt/movies
|
||||
|
||||
iocage exec radarr "fetch https://github.com/Radarr/Radarr/releases/download/v0.2.0.1480/Radarr.develop.0.2.0.1480.linux.tar.gz -o /usr/local/share"
|
||||
iocage exec radarr "tar -xzvf /usr/local/share/Radarr.develop.0.2.0.1480.linux.tar.gz -C /usr/local/share"
|
||||
@ -15,7 +17,8 @@ iocage exec radarr rm /usr/local/share/Radarr.develop.0.2.0.1480.linux.tar.gz
|
||||
iocage exec radarr "pw user add radarr -c radarr -u 352 -d /nonexistent -s /usr/bin/nologin"
|
||||
iocage exec radarr chown -R radarr:radarr /usr/local/share/Radarr /config
|
||||
iocage exec radarr mkdir /usr/local/etc/rc.d
|
||||
cp ${SCRIPT_DIR}/jails/radarr/includes/radarr.rc /mnt/${global_dataset_iocage}/jails/radarr/root/usr/local/etc/rc.d/radarr
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/radarr/includes/radarr.rc /mnt/"${global_dataset_iocage}"/jails/radarr/root/usr/local/etc/rc.d/radarr
|
||||
iocage exec radarr chmod u+x /usr/local/etc/rc.d/radarr
|
||||
iocage exec radarr sysrc "radarr_enable=YES"
|
||||
iocage exec radarr service radarr restart
|
||||
|
@ -4,6 +4,7 @@
|
||||
iocage exec radarr service radarr stop
|
||||
#TODO insert code to update radarr itself here
|
||||
iocage exec radarr chown -R radarr:radarr /usr/local/share/Radarr /config
|
||||
cp ${SCRIPT_DIR}/jails/radarr/includes/radarr.rc /mnt/${global_dataset_iocage}/jails/radarr/root/usr/local/etc/rc.d/radarr
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/radarr/includes/radarr.rc /mnt/"${global_dataset_iocage}"/jails/radarr/root/usr/local/etc/rc.d/radarr
|
||||
iocage exec radarr chmod u+x /usr/local/etc/rc.d/radarr
|
||||
iocage exec radarr service radarr restart
|
@ -2,12 +2,14 @@
|
||||
# This file contains the install script for sonarr
|
||||
|
||||
# Check if dataset for completed download and it parent dataset exist, create if they do not.
|
||||
createmount sonarr ${global_dataset_downloads}
|
||||
createmount sonarr ${global_dataset_downloads}/complete /mnt/fetched
|
||||
# shellcheck disable=SC2154
|
||||
createmount sonarr "${global_dataset_downloads}"
|
||||
createmount sonarr "${global_dataset_downloads}"/complete /mnt/fetched
|
||||
|
||||
# Check if dataset for media library and the dataset for tv shows exist, create if they do not.
|
||||
createmount sonarr ${global_dataset_media}
|
||||
createmount sonarr ${global_dataset_media}/shows /mnt/shows
|
||||
# shellcheck disable=SC2154
|
||||
createmount sonarr "${global_dataset_media}"
|
||||
createmount sonarr "${global_dataset_media}"/shows /mnt/shows
|
||||
|
||||
iocage exec sonarr "fetch http://download.sonarr.tv/v2/master/mono/NzbDrone.master.tar.gz -o /usr/local/share"
|
||||
iocage exec sonarr "tar -xzvf /usr/local/share/NzbDrone.master.tar.gz -C /usr/local/share"
|
||||
@ -15,7 +17,8 @@ iocage exec sonarr rm /usr/local/share/NzbDrone.master.tar.gz
|
||||
iocage exec sonarr "pw user add sonarr -c sonarr -u 351 -d /nonexistent -s /usr/bin/nologin"
|
||||
iocage exec sonarr chown -R sonarr:sonarr /usr/local/share/NzbDrone /config
|
||||
iocage exec sonarr mkdir /usr/local/etc/rc.d
|
||||
cp ${SCRIPT_DIR}/jails/sonarr/includes/sonarr.rc /mnt/${global_dataset_iocage}/jails/sonarr/root/usr/local/etc/rc.d/sonarr
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/sonarr/includes/sonarr.rc /mnt/"${global_dataset_iocage}"/jails/sonarr/root/usr/local/etc/rc.d/sonarr
|
||||
iocage exec sonarr chmod u+x /usr/local/etc/rc.d/sonarr
|
||||
iocage exec sonarr sysrc "sonarr_enable=YES"
|
||||
iocage exec sonarr service sonarr restart
|
||||
|
@ -4,6 +4,7 @@
|
||||
iocage exec sonarr service sonarr stop
|
||||
#TODO insert code to update sonarr itself here
|
||||
iocage exec sonarr chown -R sonarr:sonarr /usr/local/share/NzbDrone /config
|
||||
cp ${SCRIPT_DIR}/jails/sonarr/includes/sonarr.rc /mnt/${global_dataset_iocage}/jails/sonarr/root/usr/local/etc/rc.d/sonarr
|
||||
# shellcheck disable=SC2154
|
||||
cp "${SCRIPT_DIR}"/jails/sonarr/includes/sonarr.rc /mnt/"${global_dataset_iocage}"/jails/sonarr/root/usr/local/etc/rc.d/sonarr
|
||||
iocage exec sonarr chmod u+x /usr/local/etc/rc.d/sonarr
|
||||
iocage exec sonarr service sonarr restart
|
@ -2,13 +2,14 @@
|
||||
# This file contains the install script for transmission
|
||||
|
||||
# Check if dataset Downloads dataset exist, create if they do not.
|
||||
createmount transmission ${global_dataset_downloads} /mnt/downloads
|
||||
# shellcheck disable=SC2154
|
||||
createmount transmission "${global_dataset_downloads}" /mnt/downloads
|
||||
|
||||
# Check if dataset Complete Downloads dataset exist, create if they do not.
|
||||
createmount transmission ${global_dataset_downloads}/complete /mnt/downloads/complete
|
||||
createmount transmission "${global_dataset_downloads}"/complete /mnt/downloads/complete
|
||||
|
||||
# Check if dataset InComplete Downloads dataset exist, create if they do not.
|
||||
createmount transmission ${global_dataset_downloads}/incomplete /mnt/downloads/incomplete
|
||||
createmount transmission "${global_dataset_downloads}"/incomplete /mnt/downloads/incomplete
|
||||
|
||||
|
||||
iocage exec transmission chown -R transmission:transmission /config
|
||||
|
Loading…
Reference in New Issue
Block a user