mirror of
https://github.com/IT4Change/gradido.git
synced 2026-02-06 09:56:05 +00:00
update remade, add migration script
This commit is contained in:
parent
ed30b9d376
commit
ffddfea699
@ -1,7 +1,7 @@
|
||||
# Setup on Hetzner Cloud Server
|
||||
Suggested minimal Plan: CX41
|
||||
4x vCPU, 16 GB Ram, 160 GB Disk Space, 20.71 € per month (04.01.2024)
|
||||
# Migration
|
||||
[Migration from 2.2.0 to 2.2.1](migration/2_2_0-2_2_1/README.md)
|
||||
|
||||
# Setup on Hetzner Cloud Server
|
||||
Suggested OS:
|
||||
Debian 12
|
||||
|
||||
|
||||
18
deployment/hetzner_cloud/migration/2_2_0-2_2_1/README.md
Normal file
18
deployment/hetzner_cloud/migration/2_2_0-2_2_1/README.md
Normal file
@ -0,0 +1,18 @@
|
||||
## Migrate from Gradido Version 2.2.0 to 2.2.1
|
||||
### What was wrong
|
||||
In [hetzner_cloud/install.sh](../../install.sh) there was an error.
|
||||
$DB_PASSWORD and $JWT_SECRET password generation method don't work with `release-2_2_0` as parameter for install.sh
|
||||
|
||||
The Parameter forwarding from branch, `release-2_2_0` in this case to start.sh was also missing.
|
||||
|
||||
### What you can do now
|
||||
You need to only run this [fixInstall.sh](fixInstall.sh) with `release_2_2_1` as parameter
|
||||
```bash
|
||||
cd /home/gradido/gradido/deployment/hetzner_cloud/migration/2_2_0-2_2_1
|
||||
sudo ./fixInstall.sh `release_2_2_1`
|
||||
```
|
||||
|
||||
Basically it will create a new $DB_PASSWORD, $JWT_SECRET and $FEDERATION_DHT_SEED,
|
||||
update db user with new db password and update .env files in module folders.
|
||||
Then it will call start.sh with first parameter if ./fixInstall.sh as his first parameter
|
||||
|
||||
66
deployment/hetzner_cloud/migration/2_2_0-2_2_1/fixInstall.sh
Normal file
66
deployment/hetzner_cloud/migration/2_2_0-2_2_1/fixInstall.sh
Normal file
@ -0,0 +1,66 @@
|
||||
#!/bin/bash
|
||||
# check for parameter
|
||||
if [ -z "$1" ]; then
|
||||
echo "Usage: Please provide a branch name as the first argument."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
set -o allexport
|
||||
SCRIPT_PATH=$(realpath ../../../bare_metal)
|
||||
SCRIPT_DIR=$(dirname $SCRIPT_PATH)
|
||||
LOCAL_SCRIPT_PATH=$(realpath $0)
|
||||
LOCAL_SCRIPT_DIR=$(dirname $LOCAL_SCRIPT_PATH)
|
||||
PROJECT_ROOT=$SCRIPT_DIR/../../..
|
||||
set +o allexport
|
||||
|
||||
|
||||
# Load .env or .env.dist if not present
|
||||
# NOTE: all config values will be in process.env when starting
|
||||
# the services and will therefore take precedence over the .env
|
||||
if [ -f "$SCRIPT_PATH/.env" ]; then
|
||||
set -o allexport
|
||||
source $SCRIPT_PATH/.env
|
||||
set +o allexport
|
||||
else
|
||||
set -o allexport
|
||||
source $SCRIPT_PATH/.env.dist
|
||||
set +o allexport
|
||||
fi
|
||||
|
||||
# create db user
|
||||
export DB_USER=gradido
|
||||
# create a new password only if it not already exist
|
||||
export DB_PASSWORD=$(< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c 32; echo);
|
||||
|
||||
|
||||
mysql <<EOFMYSQL
|
||||
ALTER USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASSWORD';
|
||||
FLUSH PRIVILEGES;
|
||||
EOFMYSQL
|
||||
|
||||
# Configure database
|
||||
envsubst "$(env | sed -e 's/=.*//' -e 's/^/\$/g')" < $PROJECT_ROOT/database/.env.template > $PROJECT_ROOT/database/.env
|
||||
|
||||
# Configure backend
|
||||
export JWT_SECRET=$(< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c 32; echo);
|
||||
envsubst "$(env | sed -e 's/=.*//' -e 's/^/\$/g')" < $PROJECT_ROOT/backend/.env.template > $PROJECT_ROOT/backend/.env
|
||||
|
||||
# Configure frontend
|
||||
envsubst "$(env | sed -e 's/=.*//' -e 's/^/\$/g')" < $PROJECT_ROOT/frontend/.env.template > $PROJECT_ROOT/frontend/.env
|
||||
|
||||
# Configure admin
|
||||
envsubst "$(env | sed -e 's/=.*//' -e 's/^/\$/g')" < $PROJECT_ROOT/admin/.env.template > $PROJECT_ROOT/admin/.env
|
||||
|
||||
# Configure dht-node
|
||||
export FEDERATION_DHT_SEED=$(< /dev/urandom tr -dc a-f0-9 | head -c 32; echo);
|
||||
envsubst "$(env | sed -e 's/=.*//' -e 's/^/\$/g')" < $PROJECT_ROOT/dht-node/.env.template > $PROJECT_ROOT/dht-node/.env
|
||||
|
||||
# Configure federation
|
||||
envsubst "$(env | sed -e 's/=.*//' -e 's/^/\$/g')" < $PROJECT_ROOT/federation/.env.template > $PROJECT_ROOT/federation/.env
|
||||
|
||||
# set all created or modified files back to belonging to gradido
|
||||
chown -R gradido:gradido $PROJECT_ROOT
|
||||
|
||||
# Start gradido
|
||||
# Note: on first startup some errors will occur - nothing serious
|
||||
sudo -u gradido $SCRIPT_PATH/start.sh $1
|
||||
Loading…
x
Reference in New Issue
Block a user