install.sh collects env vars
This commit is contained in:
81
install.sh
81
install.sh
@@ -1,12 +1,81 @@
|
||||
#!/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 [ -z "$AWS_ACCESS_KEY_ID" ]
|
||||
then
|
||||
echo "Please provide AWS_ACCESS_KEY_ID."
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$AWS_SECRET_ACCESS_KEY" ]
|
||||
then
|
||||
echo "Please provide AWS_SECRET_ACCESS_KEY."
|
||||
fi
|
||||
if [ -z "$RESTIC_PASSWORD" ]
|
||||
then
|
||||
echo "Please provide RESTIC_PASSWORD."
|
||||
fi
|
||||
if [ -z "$JOEAC_PASSWORD" ]
|
||||
then
|
||||
echo "Please provide JOEAC_PASSWORD."
|
||||
fi
|
||||
|
||||
APP_ENV=prod
|
||||
DATABASE_URL="sqlite:///%kernel.project_dir%/var/app.db"
|
||||
MESSENGER_TRANSPORT_DSN=doctrine://default
|
||||
|
||||
env >> resticprofile/.env
|
||||
env >> symfony/.env
|
||||
}
|
||||
|
||||
set -eux
|
||||
install_prerequisite_software
|
||||
clone_repository
|
||||
add_cron_services
|
||||
set -e +ux
|
||||
collect_env_vars
|
||||
./restart.sh
|
||||
|
||||
@@ -9,7 +9,6 @@ version = "1"
|
||||
[default]
|
||||
description = "Back up database to BackBlazeB2 S3 Bucket"
|
||||
env-file = ".env"
|
||||
password-file = "password.txt"
|
||||
repository = "s3:s3.eu-central-003.backblazeb2.com/joeac-net-backup/repo"
|
||||
verbose = 2
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ FROM docker.io/bitnami/php-fpm:8.4 AS database
|
||||
WORKDIR /app
|
||||
COPY ./composer.* ./symfony.* ./
|
||||
COPY ./bin ./bin
|
||||
COPY ./.env.prod ./.env
|
||||
COPY ./.env ./.env
|
||||
COPY ./config ./config
|
||||
COPY ./migrations ./migrations
|
||||
COPY ./src ./src
|
||||
|
||||
Reference in New Issue
Block a user