install.sh collects env vars
This commit is contained in:
73
install.sh
73
install.sh
@@ -1,12 +1,73 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -eux
|
||||
cd ${LIB_DIR:-/lib}
|
||||
sudo git clone https://git.joeac.net/joeac/joeac.net.git
|
||||
cd joeac.net
|
||||
sudo chmod +x uninstall.sh update_and_restart.sh restart.sh
|
||||
sudo echo << EOF >> ${CRONTABS_DIR:-/etc/cron.d}/joeacnet
|
||||
install_prerequisite_software ()
|
||||
{
|
||||
if [ -n "$(which git)" ] & [ -n "$(which podman)" ] & [ -n "$(which podman-compose)" ]
|
||||
then
|
||||
echo "Git, podman and podman-compose are already installed."
|
||||
elif [ -n "$(which apk)" ]
|
||||
then
|
||||
apk update
|
||||
apk add git podman podman-compose
|
||||
elif [ -n "$(which apt-get)" ]
|
||||
then
|
||||
apt-get update
|
||||
apt-get install git podman podman-compose -y
|
||||
elif [ -n "$(which dnf)" ]
|
||||
then
|
||||
dnf install git podman podman-compose
|
||||
elif [ -n "$(which yum)" ]
|
||||
then
|
||||
yum install git podman podman-compose
|
||||
elif [ -n "$(which pacman)" ]
|
||||
then
|
||||
pacman -S git podman podman-compose
|
||||
else
|
||||
echo "Could not install Git: could not identify package manager."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
clone_repository ()
|
||||
{
|
||||
cd ${LIB_DIR:-/lib}
|
||||
git clone https://git.joeac.net/joeac/joeac.net.git
|
||||
cd joeac.net
|
||||
chmod +x uninstall.sh update_and_restart.sh restart.sh
|
||||
}
|
||||
|
||||
add_cron_services ()
|
||||
{
|
||||
echo <<- EOF > ${CRONTABS_DIR:-/etc/cron.d}/joeacnet
|
||||
@reboot ${LIB_DIR:-/lib}/joeac.net/restart.sh
|
||||
10 * * * * ${LIB_DIR:-/lib}/joeac.net/update_and_restart.sh
|
||||
EOF
|
||||
}
|
||||
|
||||
collect_env_vars ()
|
||||
{
|
||||
if ! [ -f /resticprofile.env ]
|
||||
then
|
||||
echo "Please provide resticprofile secrets in /resticprofile.env."
|
||||
exit 1
|
||||
fi
|
||||
cp /resticprofile.env "${LIB_DIR:-/lib}/joeac.net/resticprofile/.env"
|
||||
|
||||
if ! [ -f /symfony.env ]
|
||||
then
|
||||
echo "Please provide symfony secrets in /symfony.env."
|
||||
exit 1
|
||||
fi
|
||||
cp /symfony.env "${LIB_DIR:-/lib}/joeac.net/symfony/.env"
|
||||
}
|
||||
|
||||
# Run me:
|
||||
# curl https://git.joeac.net/joeac/joeac.net/raw/branch/main/install.sh | sudo -E sh
|
||||
|
||||
set -eux
|
||||
install_prerequisite_software
|
||||
clone_repository
|
||||
add_cron_services
|
||||
set -e +ux
|
||||
collect_env_vars
|
||||
./restart.sh
|
||||
|
||||
Reference in New Issue
Block a user