mirror of
https://github.com/IT4Change/gradido.git
synced 2025-12-13 07:45:54 +00:00
Merge remote-tracking branch 'origin/2730-devops-add-federation-modul-to-deployment-scripts' into 2630-feature-federation-implement-a-graphql-endpoint-for-request-getpublickey
This commit is contained in:
commit
e42f42c034
@ -66,7 +66,7 @@ FEDERATION_COMMUNITY_URL=http://stage1.gradido.net
|
||||
FEDERATION_COMMUNITY_API_PORT=5000
|
||||
|
||||
FEDERATION_CONFIG_VERSION=v1.2023-01-09
|
||||
# comma separated list of api-versions, which cause starting several federation moduls
|
||||
# comma separated list of api-versions, which cause starting several federation modules
|
||||
FEDERATION_COMMUNITY_APIS=1_0,1_1,2_0
|
||||
|
||||
# database
|
||||
|
||||
@ -59,7 +59,7 @@ ln -s /etc/nginx/sites-available/update-page.conf /etc/nginx/sites-enabled/
|
||||
sudo /etc/init.d/nginx restart
|
||||
|
||||
# stop all services
|
||||
echo 'Stopping and Delete all Gradido services' >> $UPDATE_HTML
|
||||
echo 'Stop and delete all Gradido services' >> $UPDATE_HTML
|
||||
pm2 delete all
|
||||
pm2 save
|
||||
|
||||
@ -77,8 +77,8 @@ export BUILD_COMMIT="$(git rev-parse HEAD)"
|
||||
# *** 1st prepare for each apiversion the federation conf for nginx from federation-template
|
||||
# *** set FEDERATION_PORT from FEDERATION_COMMUNITY_APIS and create gradido-federation.conf file
|
||||
rm -f $NGINX_CONFIG_DIR/gradido.conf.tmp
|
||||
rm -f $NGINX_CONFIG_DIR/gradido-federation.conf
|
||||
echo "===================================================================================================="
|
||||
rm -f $NGINX_CONFIG_DIR/gradido-federation.conf.locations
|
||||
echo "====================================================================================================" >> $UPDATE_HTML
|
||||
IFS="," read -a API_ARRAY <<< $FEDERATION_COMMUNITY_APIS
|
||||
for api in "${API_ARRAY[@]}"
|
||||
do
|
||||
@ -88,15 +88,15 @@ do
|
||||
FEDERATION_PORT=${FEDERATION_COMMUNITY_API_PORT:-5000}
|
||||
FEDERATION_PORT=$(($FEDERATION_PORT + $port))
|
||||
export FEDERATION_PORT
|
||||
echo " create ngingx config: location /api/$FEDERATION_APIVERSION to http://127.0.0.1:$FEDERATION_PORT"
|
||||
envsubst '$FEDERATION_APIVERSION, $FEDERATION_PORT' < $NGINX_CONFIG_DIR/gradido-federation.conf.template >> $NGINX_CONFIG_DIR/gradido-federation.conf
|
||||
echo "create ngingx config: location /api/$FEDERATION_APIVERSION to http://127.0.0.1:$FEDERATION_PORT" >> $UPDATE_HTML
|
||||
envsubst '$FEDERATION_APIVERSION, $FEDERATION_PORT' < $NGINX_CONFIG_DIR/gradido-federation.conf.template >> $NGINX_CONFIG_DIR/gradido-federation.conf.locations
|
||||
done
|
||||
export FEDERATION_APIVERSION=
|
||||
export FEDERATION_PORT=
|
||||
echo "===================================================================================================="
|
||||
unset FEDERATION_APIVERSION
|
||||
unset FEDERATION_PORT
|
||||
echo "====================================================================================================" >> $UPDATE_HTML
|
||||
|
||||
# *** 2nd read gradido-federation.conf file in env variable to be replaced in 3rd step
|
||||
export FEDERATION_NGINX_CONF=$(< $NGINX_CONFIG_DIR/gradido-federation.conf)
|
||||
export FEDERATION_NGINX_CONF=$(< $NGINX_CONFIG_DIR/gradido-federation.conf.locations)
|
||||
|
||||
# *** 3rd generate gradido nginx config including federation modules per api-version
|
||||
echo 'Generate new gradido nginx config' >> $UPDATE_HTML
|
||||
@ -108,7 +108,7 @@ envsubst '$FEDERATION_NGINX_CONF' < $NGINX_CONFIG_DIR/$TEMPLATE_FILE > $NGINX_CO
|
||||
export FEDERATION_NGINX_CONF=
|
||||
envsubst "$(env | sed -e 's/=.*//' -e 's/^/\$/g')" < $NGINX_CONFIG_DIR/gradido.conf.tmp > $NGINX_CONFIG_DIR/gradido.conf
|
||||
rm $NGINX_CONFIG_DIR/gradido.conf.tmp
|
||||
rm $NGINX_CONFIG_DIR/gradido-federation.conf
|
||||
rm $NGINX_CONFIG_DIR/gradido-federation.conf.locations
|
||||
|
||||
# Generate update-page.conf from template
|
||||
echo 'Generate new update-page nginx config' >> $UPDATE_HTML
|
||||
@ -156,7 +156,6 @@ if [ "$DEPLOY_SEED_DATA" = "true" ]; then
|
||||
fi
|
||||
# TODO maybe handle this differently?
|
||||
export NODE_ENV=production
|
||||
# pm2 delete gradido-backend
|
||||
pm2 start --name gradido-backend "yarn --cwd $PROJECT_ROOT/backend start" -l $GRADIDO_LOG_PATH/pm2.backend.$TODAY.log --log-date-format 'YYYY-MM-DD HH:mm:ss.SSS'
|
||||
pm2 save
|
||||
|
||||
@ -169,7 +168,6 @@ yarn install
|
||||
yarn build
|
||||
# TODO maybe handle this differently?
|
||||
export NODE_ENV=production
|
||||
# pm2 delete gradido-frontend
|
||||
pm2 start --name gradido-frontend "yarn --cwd $PROJECT_ROOT/frontend start" -l $GRADIDO_LOG_PATH/pm2.frontend.$TODAY.log --log-date-format 'YYYY-MM-DD HH:mm:ss.SSS'
|
||||
pm2 save
|
||||
|
||||
@ -182,7 +180,6 @@ yarn install
|
||||
yarn build
|
||||
# TODO maybe handle this differently?
|
||||
export NODE_ENV=production
|
||||
# pm2 delete gradido-admin
|
||||
pm2 start --name gradido-admin "yarn --cwd $PROJECT_ROOT/admin start" -l $GRADIDO_LOG_PATH/pm2.admin.$TODAY.log --log-date-format 'YYYY-MM-DD HH:mm:ss.SSS'
|
||||
pm2 save
|
||||
|
||||
@ -195,14 +192,13 @@ yarn install
|
||||
yarn build
|
||||
# TODO maybe handle this differently?
|
||||
export NODE_ENV=production
|
||||
# pm2 delete gradido-dht-node
|
||||
if [ ! -z $FEDERATION_DHT_TOPIC ]; then
|
||||
pm2 start --name gradido-dht-node "yarn --cwd $PROJECT_ROOT/dht-node start" -l $GRADIDO_LOG_PATH/pm2.dht-node.$TODAY.log --log-date-format 'YYYY-MM-DD HH:mm:ss.SSS'
|
||||
pm2 save
|
||||
else
|
||||
echo "====================================================================="
|
||||
echo "WARNING: FEDERATION_DHT_TOPIC not configured. DHT-Node not started..."
|
||||
echo "====================================================================="
|
||||
echo "=====================================================================" >> $UPDATE_HTML
|
||||
echo "WARNING: FEDERATION_DHT_TOPIC not configured. DHT-Node not started..." >> $UPDATE_HTML
|
||||
echo "=====================================================================" >> $UPDATE_HTML
|
||||
fi
|
||||
|
||||
|
||||
@ -221,17 +217,17 @@ IFS="," read -a API_ARRAY <<< $FEDERATION_COMMUNITY_APIS
|
||||
for api in "${API_ARRAY[@]}"
|
||||
do
|
||||
export FEDERATION_API=$api
|
||||
echo "FEDERATION_API=$FEDERATION_API"
|
||||
echo "FEDERATION_API=$FEDERATION_API" >> $UPDATE_HTML
|
||||
export MODULENAME=gradido-federation-$api
|
||||
echo "MODULENAME=$MODULENAME"
|
||||
echo "MODULENAME=$MODULENAME" >> $UPDATE_HTML
|
||||
# calculate port by remove '_' and add value of api to baseport
|
||||
port=${api//_/}
|
||||
FEDERATION_PORT=${FEDERATION_COMMUNITY_API_PORT:-5000}
|
||||
FEDERATION_PORT=$(($FEDERATION_PORT + $port))
|
||||
export FEDERATION_PORT
|
||||
echo "===================================================="
|
||||
echo " start $MODULENAME listening on port=$FEDERATION_PORT"
|
||||
echo "===================================================="
|
||||
echo "====================================================" >> $UPDATE_HTML
|
||||
echo " start $MODULENAME listening on port=$FEDERATION_PORT" >> $UPDATE_HTML
|
||||
echo "====================================================" >> $UPDATE_HTML
|
||||
# pm2 delete $MODULENAME
|
||||
pm2 start --name $MODULENAME "yarn --cwd $PROJECT_ROOT/federation start" -l $GRADIDO_LOG_PATH/pm2.$MODULENAME.$TODAY.log --log-date-format 'YYYY-MM-DD HH:mm:ss.SSS'
|
||||
pm2 save
|
||||
|
||||
@ -1,15 +1,7 @@
|
||||
LOG_LEVEL=debug
|
||||
PORT=4000
|
||||
GRAPHIQL=true
|
||||
|
||||
# Database
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=gradido_community
|
||||
|
||||
|
||||
COMMUNITY_NAME=Gradido Entwicklung
|
||||
COMMUNITY_URL=http://localhost:4000/
|
||||
COMMUNITY_DESCRIPTION=lokale Entwicklungsumgebung
|
||||
# DB_HOST=localhost
|
||||
# DB_PORT=3306
|
||||
# DB_DATABASE=gradido_community
|
||||
|
||||
# Federation
|
||||
FEDERATION_API=1_0
|
||||
|
||||
@ -1,14 +1,16 @@
|
||||
CONFIG_VERSION=$FEDERATION_CONFIG_VERSION
|
||||
|
||||
LOG_LEVEL=$LOG_LEVEL
|
||||
PORT=$PORT
|
||||
GRAPHIQL=$GRAPHIQL
|
||||
# this is set fix to false, because it is important for 'production' environments. only set to true if a graphql-playground should be in use
|
||||
GRAPHIQL=false
|
||||
|
||||
# Database
|
||||
DB_HOST=$DB_HOST
|
||||
DB_PORT=$DB_PORT
|
||||
DB_DATABASE=$DB_DATABASE
|
||||
|
||||
COMMUNITY_NAME=$COMMUNITY_NAME
|
||||
COMMUNITY_URL=$COMMUNITY_URL
|
||||
COMMUNITY_DESCRIPTION=$COMMUNITY_DESCRIPTION
|
||||
DB_USER=$DB_USER
|
||||
DB_PASSWORD=$DB_PASSWORD
|
||||
DB_DATABASE=$DB_DATABASE
|
||||
|
||||
# Federation
|
||||
FEDERATION_API=$FEDERATION_API
|
||||
|
||||
@ -24,7 +24,6 @@ const constants = {
|
||||
}
|
||||
|
||||
const server = {
|
||||
PORT: process.env.PORT || 5010,
|
||||
// JWT_SECRET: process.env.JWT_SECRET || 'secret123',
|
||||
// JWT_EXPIRES_IN: process.env.JWT_EXPIRES_IN || '10m',
|
||||
GRAPHIQL: process.env.GRAPHIQL === 'true' || false,
|
||||
@ -40,21 +39,6 @@ const database = {
|
||||
TYPEORM_LOGGING_RELATIVE_PATH:
|
||||
process.env.TYPEORM_LOGGING_RELATIVE_PATH || 'typeorm.backend.log',
|
||||
}
|
||||
/*
|
||||
const community = {
|
||||
COMMUNITY_NAME: process.env.COMMUNITY_NAME || 'Gradido Entwicklung',
|
||||
COMMUNITY_URL: process.env.COMMUNITY_URL || 'http://localhost/',
|
||||
COMMUNITY_REGISTER_URL: process.env.COMMUNITY_REGISTER_URL || 'http://localhost/register',
|
||||
COMMUNITY_REDEEM_URL: process.env.COMMUNITY_REDEEM_URL || 'http://localhost/redeem/{code}',
|
||||
COMMUNITY_REDEEM_CONTRIBUTION_URL:
|
||||
process.env.COMMUNITY_REDEEM_CONTRIBUTION_URL || 'http://localhost/redeem/CL-{code}',
|
||||
COMMUNITY_DESCRIPTION:
|
||||
process.env.COMMUNITY_DESCRIPTION || 'Die lokale Entwicklungsumgebung von Gradido.',
|
||||
}
|
||||
*/
|
||||
|
||||
// This is needed by graphql-directive-auth
|
||||
// process.env.APP_SECRET = server.JWT_SECRET
|
||||
|
||||
// Check config version
|
||||
constants.CONFIG_VERSION.CURRENT =
|
||||
@ -71,10 +55,6 @@ if (
|
||||
}
|
||||
|
||||
const federation = {
|
||||
// FEDERATION_DHT_TOPIC: process.env.FEDERATION_DHT_TOPIC || null,
|
||||
// FEDERATION_DHT_SEED: process.env.FEDERATION_DHT_SEED || null,
|
||||
// FEDERATION_COMMUNITY_API_PORT:
|
||||
// process.env.FEDERATION_COMMUNITY_API_PORT || 5000,
|
||||
FEDERATION_API: process.env.FEDERATION_API || '1_0',
|
||||
FEDERATION_PORT: process.env.FEDERATION_PORT || 5010,
|
||||
FEDERATION_COMMUNITY_URL: process.env.FEDERATION_COMMUNITY_URL || null,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user