Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • add-sonar-integration
  • main
  • open_tool_for_self_hosting
3 results

Target

Select target project
  • dojo_project/projects/backend/dojobackend
  • dojo_project/projects/backend/dojo-test-backend
2 results
Select Git revision
  • add-sonar-integration
  • main
  • open_tool_for_self_hosting
3 results
Show changes
Commits on Source (8)
...@@ -50,7 +50,6 @@ deploy: ...@@ -50,7 +50,6 @@ deploy:
npx @dotenvx/dotenvx@0.45.0 decrypt npx @dotenvx/dotenvx@0.45.0 decrypt
mv .env.production ../../.env mv .env.production ../../.env
rm .env.keys rm .env.keys
cp ../../.env ../.env
# Deploy # Deploy
- cd ../../ - cd ../../
......
Subproject commit 9839397a3be3239080d0fa59244e1cdbd692de08 Subproject commit 64a454911069e285f830a57db85ca26165ab965f
version: '3.8'
services: services:
dojo-database: dojo-database:
container_name: dojo-database container_name: dojo-database
...@@ -34,7 +33,7 @@ services: ...@@ -34,7 +33,7 @@ services:
deploy: deploy:
resources: resources:
limits: limits:
cpus: '3.0' cpus: ${CPU_LIMIT}
build: build:
context: ./API/ context: ./API/
dockerfile: Dockerfile_ExpressAPI dockerfile: Dockerfile_ExpressAPI
......
#################################################################################
# This file have to be copied to .env and filled with the correct values
#################################################################################
########################### Database env vars
DATABASE_ROOT_PASSWORD=xxxxxxxxxxxxxx
########################### Session env vars
JWT_SECRET_KEY=xxxxxxxxxxxxxx
LOGIN_GITLAB_CLIENT_ID=xxxxxxxxxxxx
LOGIN_GITLAB_CLIENT_SECRET=xxxxxxxxxxx
########################### Checkers env vars
DOCKERHUB_REPO_ASSIGNMENT_CHECKER=xxxxxxxxxxxxx # HEPIA example: dojohesso/dojo_assignment_checker
DOCKERHUB_REPO_EXERCISE_CHECKER=xxxxxxxxxxxxx # HEPIA example: dojohesso/dojo_exercise_checker
########################### Gitlab env vars
GITLAB_DOMAIN=xxxxxxxxxxx # HEPIA example: gitedu.hesge.ch
GITLAB_URL=https://${GITLAB_DOMAIN}/
GITLAB_URLS='["${GITLAB_URL}"]' # All possible urls for the same gitlab instance (for example HEPIA have https://githepia.hesge.ch too so the value is : '["${GITLAB_URL}", "https://githepia.hesge.ch/"]').
GITLAB_DOJO_ACCOUNT_ID=xxxx
GITLAB_DOJO_ACCOUNT_USERNAME=xxxxxxx
GITLAB_DOJO_ACCOUNT_TOKEN=xxxxxxxx
GITLAB_GROUP_ROOT_ID=xxxx
GITLAB_GROUP_TEMPLATES_ID=xxxxx
GITLAB_GROUP_ASSIGNMENTS_ID=xxxxx
GITLAB_GROUP_EXERCISES_ID=xxxxx
GITLAB_GROUP_DELETED_ASSIGNMENTS_ID=xxxxx
GITLAB_GROUP_DELETED_EXERCISES_ID=xxxxx
# WARNING: DO NOT MODIFY THE NEXT TWO LINES
DATABASE_CONNEXION_LIMIT_PER_PROCESS=2
DATABASE_URL=mysql://root:${DATABASE_ROOT_PASSWORD}@dojo-database:3306/dojo?connection_limit=${DATABASE_CONNEXION_LIMIT_PER_PROCESS}
\ No newline at end of file
########################### Server env vars
API_PORT=30992
LOGS_FOLDER=logs
########################### Database env vars
DATABASE_ROOT_PASSWORD=password
DATABASE_URL="mysql://root:password@dojo-database:port/database"
########################### Session env vars
JWT_SECRET_KEY=secret
SESSION_TIMEOUT=0
ROLES_WITH_TEACHING_STAFF_PERMISSIONS='["teacher", "adjsci", "colsci", "assi"]'
########################### Gitlab env vars
GITLAB_API_URL=url
GITLAB_URLS='["url"]'
GITLAB_DOJO_ACCOUNT_ID=0
GITLAB_DOJO_ACCOUNT_USERNAME=username
GITLAB_DOJO_ACCOUNT_TOKEN=token
GITLAB_GROUP_ROOT_ID=0
GITLAB_GROUP_TEMPLATES_ID=0
GITLAB_GROUP_ENONCES_ID=0
GITLAB_GROUP_EXERCICES_ID=0
########################### Enonce env vars
ENONCE_DEFAULT_DESCRIPTION="description"
ENONCE_DEFAULT_INIT_README=false
ENONCE_DEFAULT_SHARED_RUNNERS_ENABLED=true
ENONCE_DEFAULT_VISIBILITY=internal
ENONCE_DEFAULT_WIKI_ENABLED=false
ENONCE_DEFAULT_TEMPLATE=https://{{USERNAME}}:{{TOKEN}}@url.git
########################### Exercice env vars
EXERCICE_DEFAULT_DESCRIPTION="description"
EXERCICE_DEFAULT_VISIBILITY=private
EXERCICE_MAX_SAME_NAME=10
########################### App env vars
USER_PASSWORD_LENGTH=6
USER_PASSWORD_SALT_ROUNDS=13
\ No newline at end of file
...@@ -23,13 +23,17 @@ if [ $? -ne 0 ]; then ...@@ -23,13 +23,17 @@ if [ $? -ne 0 ]; then
DOCKER_COMPOSE_COMMAND="docker-compose" DOCKER_COMPOSE_COMMAND="docker-compose"
fi fi
${DOCKER_COMPOSE_COMMAND} kill CPU_LIMIT=$(($(nproc)-1))
CPU_LIMIT=$(($CPU_LIMIT <= 0 ? 1 : $CPU_LIMIT))
CPU_LIMIT=${CPU_LIMIT} ${DOCKER_COMPOSE_COMMAND} kill
# If argument is --run, run the docker compose file # If argument is --run, run the docker compose file
if [ "$1" = "--run" ]; then if [ "$1" = "--run" ]; then
# Check if .env file exists # Check if .env file exists
if [ -f $ENV_FILE ]; then if [ -f $ENV_FILE ]; then
${DOCKER_COMPOSE_COMMAND} --env-file ${ENV_FILE} up --build -d cp -f $ENV_FILE API/$ENV_FILE
CPU_LIMIT=${CPU_LIMIT} ${DOCKER_COMPOSE_COMMAND} --env-file ${ENV_FILE} up --build -d
else else
echo "Need a file named ${ENV_FILE} providing environment variables." echo "Need a file named ${ENV_FILE} providing environment variables."
exit 2 exit 2
......