install.sh collects env vars

This commit is contained in:
2025-06-08 08:31:04 +01:00
parent 27c87d1df9
commit f4981e961a
5 changed files with 73 additions and 15 deletions

View File

@@ -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