71 lines
2.3 KiB
Bash
Executable File
71 lines
2.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# bless you chris and andy <3
|
|
DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
|
|
MNML_PATH=$(realpath "$DIR/../")
|
|
|
|
MNML_CONF="/etc/mnml/gs.conf"
|
|
|
|
if [ ! -f $MNML_CONF ]; then
|
|
echo "-----------------------------------------------"
|
|
echo "creating an env file in $MNML_CONF"
|
|
echo "-----------------------------------------------"
|
|
|
|
sudo mkdir -p /etc/mnml/
|
|
echo "export MNML_USER=$(whoami)" | sudo tee -a $MNML_CONF
|
|
echo "export MNML_PG_PASSWORD=\"$(openssl rand -hex 16)\"" | sudo tee -a $MNML_CONF
|
|
echo "export MNML_PG_HOST=\"localhost\"" | sudo tee -a $MNML_CONF
|
|
fi
|
|
|
|
source $MNML_CONF
|
|
|
|
# sudo certbot certonly --nginx -d mnml.gg -d acp.mnml.gg
|
|
|
|
# /var/lib/mnml
|
|
# contains img data, builds
|
|
sudo mkdir -p /var/lib/mnml/client
|
|
sudo mkdir -p /var/lib/mnml/data
|
|
sudo mkdir -p /var/lib/mnml/public/imgs
|
|
sudo mkdir -p /var/lib/mnml/data/instances/
|
|
sudo mkdir -p /var/lib/mnml/data/games/
|
|
sudo chown -R $MNML_USER:$MNML_USER /var/lib/mnml
|
|
|
|
# /var/log/mnml
|
|
# log files
|
|
sudo mkdir -p /var/log/mnml
|
|
sudo chown -R $MNML_USER:$MNML_USER /var/log/mnml
|
|
|
|
# /usr/local/mnml/bin
|
|
# server bin location
|
|
sudo mkdir -p /usr/local/mnml/bin
|
|
sudo chown -R $MNML_USER:$MNML_USER /usr/local/mnml
|
|
|
|
# SERVICES
|
|
sudo mkdir -p /usr/local/systemd/system/
|
|
sudo cp $MNML_PATH/etc/systemd/system/mnml.service /usr/local/systemd/system/
|
|
|
|
# POSTGRES SETUP
|
|
sudo -u postgres createdb mnml
|
|
sudo -u postgres createuser --encrypted mnml
|
|
echo "DATABASE_URL=postgres://mnml:$MNML_PG_PASSWORD@$MNML_PG_HOST/mnml" | sudo tee -a /etc/mnml/gs.conf
|
|
sudo -u postgres psql -c "alter user mnml with encrypted password '$MNML_PG_PASSWORD';"
|
|
|
|
cd $MNML_PATH/ops
|
|
npm i
|
|
npm run migrate
|
|
|
|
cd $MNML_PATH
|
|
|
|
# NGINX
|
|
if [ ! -f $MNML_PATH/etc/nginx/sites-available/mnml.gg.nginx.conf ]; then
|
|
echo "-----------------------------------------------"
|
|
echo "using development nginx config"
|
|
echo "$MNML_PATH/etc/nginx/sites-available/mnml.gg.nginx.conf"
|
|
echo "-----------------------------------------------"
|
|
|
|
cp $MNML_PATH/etc/nginx/sites-available/mnml.gg.DEV.nginx.conf $MNML_PATH/etc/nginx/sites-available/mnml.gg.nginx.conf
|
|
fi
|
|
|
|
sudo cp $MNML_PATH/etc/nginx/sites-available/mnml.gg.nginx.conf /etc/nginx/sites-available
|
|
sudo ln -nfs /etc/nginx/sites-available/mnml.gg.nginx.conf /etc/nginx/sites-enabled/mnml.gg.nginx.conf
|