Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
F
FIRST_START
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Polaris
FIRST_START
Commits
65ad4fb6
Commit
65ad4fb6
authored
2 years ago
by
Max Lou
Browse files
Options
Downloads
Patches
Plain Diff
Deploy rights-engine with single front/backend container
parent
52153c1b
No related branches found
No related tags found
No related merge requests found
Pipeline
#917462
failed
2 years ago
Stage: deploy
Changes
2
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
.gitlab-ci.yml
+104
-97
104 additions, 97 deletions
.gitlab-ci.yml
rights-engine/docker-compose.yml
+9
-24
9 additions, 24 deletions
rights-engine/docker-compose.yml
with
113 additions
and
121 deletions
.gitlab-ci.yml
+
104
−
97
View file @
65ad4fb6
stages
:
#
- build
-
build
# - test
-
deploy
variables
:
&global-variables
BASE_DIR
:
"
~/docker/polaris/deployment"
SSH_USER
:
$SSH_USER
IDP_SERVER
:
"
https://login-test.rz.rwth-aachen.de/shibboleth"
BASE_DIR
:
"
/docker/polaris"
SSH_USER
:
"
root"
SSH_PRIVATE_KEY
:
$SSH_PRIVATE_KEY
BRANCH
:
"
main"
.
deploy
:
&deploy
deploy
_rights-engine
:
stage
:
deploy
allow_failure
:
false
variables
:
<<
:
*global-variables
DEPLOYMENT_URL
:
polaris.cls.rwth-aachen.de
URL
:
polaris.cls.rwth-aachen.de
environment
:
name
:
rights-engine
before_script
:
-
echo "setting up ssh
and rsync
"
-
echo "setting up ssh"
# Install ssh-agent if not already installed
-
which ssh-agent || (apk --update add openssh-client
rsync
)
-
which ssh-agent || (apk --update add openssh-client)
-
eval `ssh-agent -s`
-
echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
-
echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
-
function exec_ssh () { ssh -o StrictHostKeyChecking=no $SSH_USER@$DEPLOYMENT_URL $1; }
-
exec_ssh "docker login -u \"${CI_REGISTRY_USER}\" -p \"${CI_REGISTRY_PASSWORD}\" \"${CI_REGISTRY}\""
-
exec_ssh "if [ -d '$BASE_DIR/$URL' ]; then cd $BASE_DIR/$URL; git remote set-url origin ${CI_REPOSITORY_URL}; git pull; else cd $BASE_DIR; git clone ${CI_REPOSITORY_URL} $URL; cd $BASE_DIR/$URL; git checkout ${CI_COMMIT_BRANCH}; git pull; fi;"
# ENV Docker-Compose
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; mkdir -p data_disclosure_zips"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; rm -rf data_disclosure_zips/*"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'URL=$URL' > .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'MYSQL_ROOT_PASSWORD=$MYSQL_ROOT_PASSWORD' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'WEBSITE=polaris' | sed 's/\./-/g' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'DB_PASSWORD=$DB_PASSWORD' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'DJANGO_DEVELOPMENT=false' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'DATABASE_NAME=polaris' | sed 's/\./-/g' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'DATABASE_USER=root' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'DATABASE_PASSWORD=$DB_PASSWORD' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'DATABASE_HOST=database' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'DEBUG=False' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'LRS_HOST=$LRS_HOST' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'LRS_TOKEN=$LRS_TOKEN' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'LRS_CONNECTION_STRING=mongodb://root:$MONGO_PASSWORT@polaris.servicechain.cloud:27017' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'LRS_MONGO_DB_NAME=lrs' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'DATA_DISCLOSURE_EXPIRATION=30' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'DATA_DISCLOSURE_LOCATION=/usr/src/app/backend/data_disclosure_zips' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'EMAIL_HOST=$EMAIL_HOST' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'EMAIL_PORT=587' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'EMAIL_HOST_USER=$EMAIL_HOST_USER' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'EMAIL_HOST_PASSWORD=$EMAIL_HOST_PASSWORD' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'REDIS_PASSWORD=$REDIS_PASSWORD' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'CELERY_BROKER_URL=redis://:$REDIS_PASSWORD@redis:6379/0' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo '$JWT_PUBLIC_KEY' > id_rsa.pub"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo '$JWT_PRIVATE_KEY' > id_rsa"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'JWT_PUBLIC_KEY_PATH=backend/id_rsa.pub' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'JWT_PRIVATE_KEY_PATH=backend/id_rsa' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'IDP_SERVER=$IDP_SERVER' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'IDP_ENABLED=false' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; echo 'THIRD_PARTY_ACCESS_TOKEN=$THIRD_PARTY_ACCESS_TOKEN' >> .env"
script
:
-
function exec_ssh () { ssh -o StrictHostKeyChecking=no $SSH_USER@$DEPLOYMENT_URL $1; }
# Login in Container Registry
-
exec_ssh "docker login -u \"${CI_REGISTRY_USER}\" -p \"${CI_REGISTRY_PASSWORD}\" \"${CI_REGISTRY}\""
#Image Pull & Docker Restart
-
exec_ssh "cd $BASE_DIR/$URL/rights-engine; docker compose pull && docker compose down && docker compose up -d"
# Initale Datenbank
#- exec_ssh "sleep 20 && cd $BASE_DIR; docker compose exec -it backend sh -c 'python3 manage.py migrate && python3 manage.py loaddata fixtures/initial_db.json'"
# Mit Datenbank Flush
-
exec_ssh "sleep 20 && cd $BASE_DIR/$URL/rights-engine; docker compose exec -it rights-engine sh -c 'python3 manage.py sqlflush | sed s/TRUNCATE/DROP\ TABLE\ IF\ EXISTS/g | python3 manage.py dbshell && echo DROP\ TABLE\ IF\ EXISTS\ django_migrations\; | python3 manage.py dbshell && python3 manage.py migrate && python3 manage.py loaddata fixtures/initial_db.json'"
# ohne Datenbank Flush
#- exec_ssh "sleep 20 && cd $BASE_DIR; docker compose exec -it backend sh -c 'python3 manage.py migrate"
deploy_rights-engine
:
deploy_analytics-engine
:
stage
:
deploy
allow_failure
:
false
variables
:
<<
:
*global-variables
DEPLOYMENT_URL
:
polaris
.cls.rwth-aachen.de
API_
URL
:
api-polaris
.cls.rwth-aachen.de
DEPLOYMENT_URL
:
runner
.cls.rwth-aachen.de
URL
:
runner
.cls.rwth-aachen.de
environment
:
name
:
$DEPLOYMENT_URL
<<
:
*deploy
name
:
analytics-engine
before_script
:
-
echo "setting up ssh and rsync"
# Install ssh-agent if not already installed
-
which ssh-agent || (apk --update add openssh-client rsync)
-
eval `ssh-agent -s`
-
echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
-
function exec_ssh () { ssh -o StrictHostKeyChecking=no $SSH_USER@$DEPLOYMENT_URL $1; }
script
:
-
exec_ssh "mkdir -p $BASE_DIR"
-
rsync -atv -v ./rights-engine $SSH_USER@$DEPLOYMENT_URL:$BASE_DIR
-
function exec_ssh () { ssh -o StrictHostKeyChecking=no $SSH_USER@$DEPLOYMENT_URL $1; }
-
exec_ssh "docker login -u \"${CI_REGISTRY_USER}\" -p \"${CI_REGISTRY_PASSWORD}\" \"${CI_REGISTRY}\""
-
exec_ssh "if [ -d '$BASE_DIR/$URL' ]; then cd $BASE_DIR/$URL; git remote set-url origin ${CI_REPOSITORY_URL}; git pull; else cd $BASE_DIR; git clone ${CI_REPOSITORY_URL} $URL; cd $BASE_DIR/$URL; git checkout ${CI_COMMIT_BRANCH}; git pull; fi;"
# ENV Docker Compose
-
echo "$BASE_DIR/rights-engine"
-
exec_ssh "cd $BASE_DIR/rights-engine; mkdir -p data_disclosure_zips"
-
exec_ssh "cd $BASE_DIR/rights-engine; rm -rf data_disclosure_zips/*"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'URL=$DEPLOYMENT_URL' > .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'API_URL=$API_URL' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'WEBSITE=polaris' | sed 's/\./-/g' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'DB_PASSWORD=$DB_PASSWORD' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'DJANGO_DEVELOPMENT=false' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'DATABASE_NAME=polaris' | sed 's/\./-/g' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'DATABASE_USER=root' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'DATABASE_PASSWORD=$DB_PASSWORD' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'DATABASE_HOST=database' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'DEBUG=True' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'LRS_HOST=$LRS_HOST' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'LRS_TOKEN=$LRS_TOKEN' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'LRS_CONNECTION_STRING=mongodb://root:$MONGO_PASSWORT@lrs.cls.rwth-aachen.de:27017' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'LRS_MONGO_DB_NAME=lrs' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'DATA_DISCLOSURE_EXPIRATION=30' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'DATA_DISCLOSURE_LOCATION=/usr/src/app/backend/data_disclosure_zips' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'EMAIL_HOST=$EMAIL_HOST' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'EMAIL_PORT=587' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'EMAIL_HOST_USER=$EMAIL_HOST_USER' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'EMAIL_HOST_PASSWORD=$EMAIL_HOST_PASSWORD' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'REDIS_PASSWORD=$REDIS_PASSWORD' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'CELERY_BROKER_URL=redis://:$REDIS_PASSWORD@redis:6379/0' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo '$JWT_PUBLIC_KEY' > id_rsa.pub"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo '$JWT_PRIVATE_KEY' > id_rsa"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'JWT_PUBLIC_KEY_PATH=backend/id_rsa.pub' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'JWT_PRIVATE_KEY_PATH=backend/id_rsa' >> .env"
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'IDP_SERVER=https://aai-test-v3.ruhr-uni-bochum.de' >> .env"
# TODO remove in future
-
exec_ssh "cd $BASE_DIR/rights-engine; echo 'THIRD_PARTY_ACCESS_TOKEN=abcdef' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/analytics-engine; echo 'DYNACONF_SQLALCHEMY_DATABASE_URI=postgresql://postgres:${POSTGRES_PASSWORD}@database/analytics-engine' > .env"
-
exec_ssh "cd $BASE_DIR/$URL/analytics-engine; echo 'DYNACONF_CELERY_BROKER_URL=redis://:${REDIS_PASSWORD}@redis_db:6379/0' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/analytics-engine; echo 'DYNACONF_CELERY_RESULT_BACKEND=redis://:${REDIS_PASSWORD}@redis_db:6379/1' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/analytics-engine; echo 'DYNACONF_ANALYTICS_BACKEND_URL=http://scheduler:5000' >> .env"
# TODO fix backend url
-
exec_ssh "cd $BASE_DIR/$URL/analytics-engine; echo 'DYNACONF_RIGHTS_ENGINE_BACKEND_URL=https://$URL' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/analytics-engine; echo 'WEBSITE=analytics' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/analytics-engine; echo 'URL=$DEPLOYMENT_URL' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/analytics-engine; echo 'REDIS_PASSWORD=$REDIS_PASSWORD' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/analytics-engine; echo 'POSTGRES_USER=postgres' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/analytics-engine; echo 'POSTGRES_DATABASE=analytics-engine' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/analytics-engine; echo 'POSTGRES_PASSWORD=$POSTGRES_PASSWORD' >> .env"
# Image Pull & Docker Restart
-
exec_ssh "cd $BASE_DIR/
right
s-engine; docker compose pull && docker compose down && docker compose up -d && sleep 30"
-
exec_ssh "cd $BASE_DIR/
$URL/analytic
s-engine; docker compose pull && docker compose down && docker compose up -d && sleep 30
&& docker compose exec -it scheduler sh -c 'scheduler create-db' && docker compose exec -it scheduler sh -c 'scheduler read-configs'
"
# Initale Datenbank
-
exec_ssh "sleep 30 && cd $BASE_DIR/rights-engine; docker compose exec -it backend sh -c 'python3 manage.py migrate && python3 manage.py loaddata fixtures/initial_db.json'"
#
- exec_ssh "sleep 30 && cd $BASE_DIR/
deployment/
rights-engine; docker compose exec -it backend sh -c 'python3 manage.py migrate && python3 manage.py loaddata fixtures/initial_db.json'"
# Mit Datenbank Flush
#- exec_ssh "sleep 30 && cd $BASE_DIR/deployment/rights-engine; docker compose exec -it backend sh -c 'python3 manage.py sqlflush | sed s/TRUNCATE/DROP\ TABLE\ IF\ EXISTS/g | python3 manage.py dbshell && echo DROP\ TABLE\ IF\ EXISTS\ django_migrations\; | python3 manage.py dbshell && python3 manage.py migrate && python3 manage.py loaddata fixtures/initial_db.json'"
# ohne Datenbank Flush
#- exec_ssh "sleep 30 && cd $BASE_DIR/deployment/rights-engine; docker compose exec -it backend sh -c 'python3 manage.py migrate"
deploy_mongodb
:
stage
:
deploy
allow_failure
:
false
variables
:
<<
:
*global-variables
DEPLOYMENT_URL
:
lrs.cls.rwth-aachen.de
URL
:
lrs.cls.rwth-aachen.de
environment
:
name
:
$DEPLOYMENT_URL
<<
:
*deploy
script
:
-
exec_ssh "mkdir -p $BASE_DIR"
-
rsync -atv -v ./mongodb $SSH_USER@$DEPLOYMENT_URL:$BASE_DIR
name
:
mongodb
before_script
:
-
echo "setting up ssh and rsync"
# Install ssh-agent if not already installed
-
which ssh-agent || (apk --update add openssh-client rsync)
-
eval `ssh-agent -s`
-
echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
-
function exec_ssh () { ssh -o StrictHostKeyChecking=no $SSH_USER@$DEPLOYMENT_URL $1; }
# ENV Docker Compose
-
exec_ssh "cd $BASE_DIR/mongodb; echo 'MONGO_USER=root' > .env"
-
exec_ssh "cd $BASE_DIR/mongodb; echo 'MONGO_PASSWORT=$MONGO_PASSWORT' >> .env"
# Image Pull & Docker Restart
-
exec_ssh "cd $BASE_DIR/mongodb; docker compose pull && docker compose down && docker compose up -d"
deploy_analytics-engine
:
variables
:
<<
:
*global-variables
DEPLOYMENT_URL
:
runner.cls.rwth-aachen.de
environment
:
name
:
$DEPLOYMENT_URL
<<
:
*deploy
-
exec_ssh "if [ -d '$BASE_DIR/$URL' ]; then cd $BASE_DIR/$URL; git remote set-url origin ${CI_REPOSITORY_URL}; git pull; else cd $BASE_DIR; git clone ${CI_REPOSITORY_URL} $URL; cd $BASE_DIR/$URL; git checkout ${CI_COMMIT_BRANCH}; git pull; fi;"
script
:
-
exec_ssh "mkdir -p $BASE_DIR"
-
rsync -atv -v ./analytics-engine $SSH_USER@$DEPLOYMENT_URL:$BASE_DIR
-
function exec_ssh () { ssh -o StrictHostKeyChecking=no $SSH_USER@$DEPLOYMENT_URL $1; }
# ENV Docker Compose
-
exec_ssh "cd $BASE_DIR/analytics-engine; echo 'DYNACONF_SQLALCHEMY_DATABASE_URI=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@database/${POSTGRES_DATABASE}' > .env"
-
exec_ssh "cd $BASE_DIR/analytics-engine; echo 'DYNACONF_CELERY_BROKER_URL=redis://:${REDIS_PASSWORD}@redis_db:6379/0' >> .env"
-
exec_ssh "cd $BASE_DIR/analytics-engine; echo 'DYNACONF_CELERY_RESULT_BACKEND=redis://:${REDIS_PASSWORD}@redis_db:6379/1' >> .env"
-
exec_ssh "cd $BASE_DIR/analytics-engine; echo 'DYNACONF_ANALYTICS_BACKEND_URL=http://scheduler:5000' >> .env"
# TODO fix backend url
-
exec_ssh "cd $BASE_DIR/analytics-engine; echo 'DYNACONF_RIGHTS_ENGINE_BACKEND_URL=https://api-polaris.cls.rwth-aachen.de' >> .env"
-
exec_ssh "cd $BASE_DIR/analytics-engine; echo 'WEBSITE=analytics' >> .env"
-
exec_ssh "cd $BASE_DIR/analytics-engine; echo 'URL=$DEPLOYMENT_URL' >> .env"
-
exec_ssh "cd $BASE_DIR/analytics-engine; echo 'REDIS_PASSWORD=$REDIS_PASSWORD' >> .env"
-
exec_ssh "cd $BASE_DIR/analytics-engine; echo 'POSTGRES_USER=$POSTGRES_USER' >> .env"
-
exec_ssh "cd $BASE_DIR/analytics-engine; echo 'POSTGRES_DATABASE=$POSTGRES_DATABASE' >> .env"
-
exec_ssh "cd $BASE_DIR/analytics-engine; echo 'POSTGRES_PASSWORD=$POSTGRES_PASSWORD' >> .env"
-
exec_ssh "cd $BASE_DIR/$URL/mongodb; echo 'MONGO_USER=root' > .env"
-
exec_ssh "cd $BASE_DIR/$URL/mongodb; echo 'MONGO_PASSWORT=$MONGO_PASSWORT' >> .env"
# Image Pull & Docker Restart
-
exec_ssh "cd $BASE_DIR/analytics-engine; docker compose pull && docker compose down && docker compose up -d && sleep 30 && docker compose exec -it scheduler sh -c 'scheduler create-db' && docker compose exec -it scheduler sh -c 'scheduler read-configs'"
# Initale Datenbank
#- exec_ssh "sleep 30 && cd $BASE_DIR/deployment/rights-engine; docker compose exec -it backend sh -c 'python3 manage.py migrate && python3 manage.py loaddata fixtures/initial_db.json'"
# Mit Datenbank Flush
#- exec_ssh "sleep 30 && cd $BASE_DIR/deployment/rights-engine; docker compose exec -it backend sh -c 'python3 manage.py sqlflush | sed s/TRUNCATE/DROP\ TABLE\ IF\ EXISTS/g | python3 manage.py dbshell && echo DROP\ TABLE\ IF\ EXISTS\ django_migrations\; | python3 manage.py dbshell && python3 manage.py migrate && python3 manage.py loaddata fixtures/initial_db.json'"
# ohne Datenbank Flush
#- exec_ssh "sleep 30 && cd $BASE_DIR/deployment/rights-engine; docker compose exec -it backend sh -c 'python3 manage.py migrate"
-
exec_ssh "cd $BASE_DIR/$URL/mongodb; docker compose pull && docker compose down && docker compose up -d"
\ No newline at end of file
This diff is collapsed.
Click to expand it.
rights-engine/docker-compose.yml
+
9
−
24
View file @
65ad4fb6
...
...
@@ -19,33 +19,16 @@ services:
networks
:
-
internal
frontend
:
image
:
registry.git.rwth-aachen.de/polaris/entwicklung/rights-engine/
frontend
:latest
rights-engine
:
image
:
registry.git.rwth-aachen.de/polaris/entwicklung/rights-engine/
rights-engine
:latest
restart
:
unless-stopped
expose
:
-
80
labels
:
-
traefik.enable=true
-
traefik.http.routers.${WEBSITE}-frontend.rule=Host(`${URL}`)
-
traefik.http.routers.${WEBSITE}-frontend.tls=true
-
traefik.http.routers.${WEBSITE}-frontend.tls.certresolver=lets-encrypt
#- traefik.http.routers.${WEBSITE}.middlewares=security-headers@file
networks
:
-
internal
-
web
depends_on
:
-
backend
backend
:
image
:
registry.git.rwth-aachen.de/polaris/entwicklung/rights-engine/backend:latest
restart
:
unless-stopped
expose
:
-
8000
labels
:
-
traefik.enable=true
-
traefik.http.routers.${WEBSITE}-backend.rule=Host(`${API_URL}`)
-
traefik.http.routers.${WEBSITE}-backend.tls=true
-
traefik.http.routers.${WEBSITE}-backend.tls.certresolver=lets-encrypt
-
traefik.http.routers.${WEBSITE}-rights-engine.rule=Host(`${URL}`)
-
traefik.http.routers.${WEBSITE}-rights-engine.tls=true
-
traefik.http.routers.${WEBSITE}-rights-engine.tls.certresolver=lets-encrypt
#- traefik.http.routers.${WEBSITE}.middlewares=security-headers@file
environment
:
-
CELERY_BROKER_URL=redis://:${REDIS_PASSWORD}@redis_db:6379
...
...
@@ -62,7 +45,7 @@ services:
-
"
./data_disclosure_zips/:/usr/src/app/backend/data_disclosure_zips"
beat
:
image
:
registry.git.rwth-aachen.de/polaris/entwicklung/rights-engine/
backend
:latest
image
:
registry.git.rwth-aachen.de/polaris/entwicklung/rights-engine/
rights-engine
:latest
restart
:
unless-stopped
entrypoint
:
celery
command
:
-A backend beat -l info
...
...
@@ -70,6 +53,7 @@ services:
-
CELERY_BROKER_URL=redis://:${REDIS_PASSWORD}@redis_db:6379
networks
:
-
internal
-
web
depends_on
:
-
database
-
redis_db
...
...
@@ -79,7 +63,7 @@ services:
-
"
./id_rsa:/usr/src/app/backend/id_rsa"
worker
:
image
:
registry.git.rwth-aachen.de/polaris/entwicklung/rights-engine/
backend
:latest
image
:
registry.git.rwth-aachen.de/polaris/entwicklung/rights-engine/
rights-engine
:latest
restart
:
unless-stopped
entrypoint
:
celery
command
:
-A backend worker --loglevel=debug
...
...
@@ -87,6 +71,7 @@ services:
-
CELERY_BROKER_URL=redis://:${REDIS_PASSWORD}@redis_db:6379
networks
:
-
internal
-
web
depends_on
:
-
database
-
redis_db
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment