install.sh collects env vars
This commit is contained in:
77
install.sh
77
install.sh
@@ -1,12 +1,81 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
set -eux
|
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}
|
cd ${LIB_DIR:-/lib}
|
||||||
sudo git clone https://git.joeac.net/joeac/joeac.net.git
|
git clone https://git.joeac.net/joeac/joeac.net.git
|
||||||
cd joeac.net
|
cd joeac.net
|
||||||
sudo chmod +x uninstall.sh update_and_restart.sh restart.sh
|
chmod +x uninstall.sh update_and_restart.sh restart.sh
|
||||||
sudo echo << EOF >> ${CRONTABS_DIR:-/etc/cron.d}/joeacnet
|
}
|
||||||
|
|
||||||
|
add_cron_services ()
|
||||||
|
{
|
||||||
|
echo <<- EOF > ${CRONTABS_DIR:-/etc/cron.d}/joeacnet
|
||||||
@reboot ${LIB_DIR:-/lib}/joeac.net/restart.sh
|
@reboot ${LIB_DIR:-/lib}/joeac.net/restart.sh
|
||||||
10 * * * * ${LIB_DIR:-/lib}/joeac.net/update_and_restart.sh
|
10 * * * * ${LIB_DIR:-/lib}/joeac.net/update_and_restart.sh
|
||||||
EOF
|
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
|
./restart.sh
|
||||||
|
|||||||
@@ -9,7 +9,6 @@ version = "1"
|
|||||||
[default]
|
[default]
|
||||||
description = "Back up database to BackBlazeB2 S3 Bucket"
|
description = "Back up database to BackBlazeB2 S3 Bucket"
|
||||||
env-file = ".env"
|
env-file = ".env"
|
||||||
password-file = "password.txt"
|
|
||||||
repository = "s3:s3.eu-central-003.backblazeb2.com/joeac-net-backup/repo"
|
repository = "s3:s3.eu-central-003.backblazeb2.com/joeac-net-backup/repo"
|
||||||
verbose = 2
|
verbose = 2
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ FROM docker.io/bitnami/php-fpm:8.4 AS database
|
|||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY ./composer.* ./symfony.* ./
|
COPY ./composer.* ./symfony.* ./
|
||||||
COPY ./bin ./bin
|
COPY ./bin ./bin
|
||||||
COPY ./.env.prod ./.env
|
COPY ./.env ./.env
|
||||||
COPY ./config ./config
|
COPY ./config ./config
|
||||||
COPY ./migrations ./migrations
|
COPY ./migrations ./migrations
|
||||||
COPY ./src ./src
|
COPY ./src ./src
|
||||||
|
|||||||
Reference in New Issue
Block a user