mirror of
https://github.com/IT4Change/gradido.git
synced 2025-12-13 07:45:54 +00:00
commit
83b67fc16b
29
deployment/bare_metal/build_and_start_login_server.sh
Executable file
29
deployment/bare_metal/build_and_start_login_server.sh
Executable file
@ -0,0 +1,29 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# stop login_server running in screen
|
||||||
|
screen -XS login quit
|
||||||
|
|
||||||
|
# rebuild login-server
|
||||||
|
cd ../../login_server
|
||||||
|
if [ ! -d "./build" ] ; then
|
||||||
|
cd scripts
|
||||||
|
./prepare_build.sh
|
||||||
|
cd ..
|
||||||
|
fi
|
||||||
|
cd build
|
||||||
|
cmake ..
|
||||||
|
make -j$(nproc) Gradido_LoginServer
|
||||||
|
|
||||||
|
# rebuild locales
|
||||||
|
cd ../scripts
|
||||||
|
./compile_pot.sh
|
||||||
|
cd ../src/LOCALE
|
||||||
|
cp *.mo *.po /etc/grd_login/LOCALE/
|
||||||
|
|
||||||
|
cd ../../build/bin
|
||||||
|
|
||||||
|
# start login-server
|
||||||
|
screen -dmS 'login_server' bash -c './Gradido_LoginServer'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
17
deployment/bare_metal/build_frontend.sh
Executable file
17
deployment/bare_metal/build_frontend.sh
Executable file
@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# For that to work, node v12.19.0 needs to be installed with nvm for root
|
||||||
|
# or NPM_BIN Path and NVM_DIR must be adjusted
|
||||||
|
|
||||||
|
cd /var/www/html/gradido/frontend
|
||||||
|
|
||||||
|
NPM_BIN=/root/.nvm/versions/node/v12.19.0/bin/npm
|
||||||
|
|
||||||
|
export NVM_DIR="/root/.nvm"
|
||||||
|
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
|
||||||
|
|
||||||
|
$NPM_BIN install
|
||||||
|
$NPM_BIN run build
|
||||||
|
# prezip for faster deliver throw nginx
|
||||||
|
cd dist
|
||||||
|
find . -type f -name "*.css" -exec gzip -9 -k {} \;
|
||||||
|
find . -type f -name "*.js" -exec gzip -9 -k {} \;
|
||||||
73
deployment/bare_metal/nginx/sites-available/gradido
Normal file
73
deployment/bare_metal/nginx/sites-available/gradido
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
server {
|
||||||
|
server_name _;
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
|
||||||
|
include /etc/nginx/common/protect.conf;
|
||||||
|
include /etc/nginx/common/protect_add_header.conf;
|
||||||
|
|
||||||
|
root /var/www/html/gradido/community_server/webroot;
|
||||||
|
index index.php;
|
||||||
|
|
||||||
|
gzip_static on;
|
||||||
|
|
||||||
|
|
||||||
|
location ~ \.php$ {
|
||||||
|
include snippets/fastcgi-php.conf;
|
||||||
|
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ /\.ht {
|
||||||
|
deny all;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /vue {
|
||||||
|
alias /var/www/html/gradido/frontend/dist;
|
||||||
|
index index.html;
|
||||||
|
|
||||||
|
location ~* \.(png)$ {
|
||||||
|
expires 39d;
|
||||||
|
}
|
||||||
|
try_files $uri $uri/ /index.html = 404;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /account {
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection 'upgrade';
|
||||||
|
proxy_cache_bypass $http_upgrade;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $remote_addr;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
rewrite /account/(.*) /$1 break;
|
||||||
|
|
||||||
|
proxy_pass http://127.0.0.1:1200;
|
||||||
|
proxy_redirect off;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
location /login_api {
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection 'upgrade';
|
||||||
|
proxy_cache_bypass $http_upgrade;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $remote_addr;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
rewrite /login_api/(.*) /$1 break;
|
||||||
|
|
||||||
|
proxy_pass http://127.0.0.1:1201;
|
||||||
|
proxy_redirect off;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
location / {
|
||||||
|
try_files $uri $uri/ /index.php?$args;
|
||||||
|
}
|
||||||
|
|
||||||
|
access_log /var/log/nginx/access.log main;
|
||||||
|
|
||||||
|
}
|
||||||
29
deployment/bare_metal/nginx/sites-available/gradido_updating
Normal file
29
deployment/bare_metal/nginx/sites-available/gradido_updating
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
|
||||||
|
server {
|
||||||
|
server_name _;
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
|
||||||
|
include /etc/nginx/common/protect.conf;
|
||||||
|
include /etc/nginx/common/protect_add_header.conf;
|
||||||
|
|
||||||
|
root /var/www/html/;
|
||||||
|
index updating.html;
|
||||||
|
|
||||||
|
location /account {
|
||||||
|
alias /var/www/html/;
|
||||||
|
index updating.html;
|
||||||
|
}
|
||||||
|
location /vue {
|
||||||
|
alias /var/www/html/;
|
||||||
|
index updating.html;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ /\.ht {
|
||||||
|
deny all;
|
||||||
|
}
|
||||||
|
|
||||||
|
access_log /var/log/nginx/access.log main;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
1
deployment/bare_metal/nginx/updating_original.html
Normal file
1
deployment/bare_metal/nginx/updating_original.html
Normal file
@ -0,0 +1 @@
|
|||||||
|
Gradido Servers are updating..., please stand by and try again in some minutes
|
||||||
53
deployment/bare_metal/update_all.sh
Executable file
53
deployment/bare_metal/update_all.sh
Executable file
@ -0,0 +1,53 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
EMPTY_UPDATE_HTML=/var/www/html/updating_original.html
|
||||||
|
UPDATE_HTML=/var/www/html/updating.html
|
||||||
|
LOCK_FILE=/root/relay.lock
|
||||||
|
PROJECT_PATH=/var/www/html/gradido
|
||||||
|
SITE_CONFIG=stage1
|
||||||
|
UPDATE_SITE_CONFIG=stage1_updating
|
||||||
|
|
||||||
|
# this script can be called for example from webhookrelay.com relay
|
||||||
|
# to auto-deploy automatic after a update to the master branch
|
||||||
|
|
||||||
|
if [ -f $LOCK_FILE ] ; then
|
||||||
|
retVal="Already building!"
|
||||||
|
return "${retVal}" 2>/dev/null || exit "${retVal}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
touch $LOCK_FILE
|
||||||
|
|
||||||
|
# start with nearly empty html
|
||||||
|
# needed a nearly empty html page in the folder
|
||||||
|
cp $EMPTY_UPDATE_HTML $UPDATE_HTML
|
||||||
|
|
||||||
|
# let nginx showing a update page
|
||||||
|
# needed nginx site-configs in nginx folders
|
||||||
|
# gradido for running gradido servers
|
||||||
|
# gradido_updating for showing upddate.html idealy for all pathes
|
||||||
|
rm /etc/nginx/sites-enabled/$SITE_CONFIG
|
||||||
|
ln -s /etc/nginx/sites-available/$UPDATE_SITE_CONFIG /etc/nginx/sites-enabled/
|
||||||
|
service nginx restart
|
||||||
|
|
||||||
|
# stop login server
|
||||||
|
screen -XS login quit
|
||||||
|
echo 'starting with git pull<br>' >> $UPDATE_HTML
|
||||||
|
cd $PROJECT_PATH
|
||||||
|
# git checkout -f master
|
||||||
|
git pull
|
||||||
|
cd deployment/bare_metal
|
||||||
|
echo 'update schemas' >> $UPDATE_HTML
|
||||||
|
./update_db_schemas.sh
|
||||||
|
echo 'starting with rebuilding login-server<br>' >> $UPDATE_HTML
|
||||||
|
./build_and_start_login_server.sh
|
||||||
|
echo 'starting with rebuilding frontend<br>' >> $UPDATE_HTML
|
||||||
|
./build_frontend.sh
|
||||||
|
|
||||||
|
|
||||||
|
# let nginx showing gradido
|
||||||
|
rm /etc/nginx/sites-enabled/$UPDATE_SITE_CONFIG
|
||||||
|
ln -s /etc/nginx/sites-available/$SITE_CONFIG /etc/nginx/sites-enabled/
|
||||||
|
service nginx restart
|
||||||
|
|
||||||
|
rm $LOCK_FILE
|
||||||
|
|
||||||
9
deployment/bare_metal/update_db_schemas.sh
Executable file
9
deployment/bare_metal/update_db_schemas.sh
Executable file
@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# For that to work skeema needed to be installed on system
|
||||||
|
# in login_server/skeema and community_server/db/skeema skeema configuration files need to be there also in the subfolders
|
||||||
|
# Update DB Schemas (only the schemas, not the data)
|
||||||
|
|
||||||
|
cd ../../login_server/skeema
|
||||||
|
skeema push --allow-unsafe
|
||||||
|
cd ../../community_server/db/skeema
|
||||||
|
skeema push --allow-unsafe
|
||||||
Loading…
x
Reference in New Issue
Block a user