Skip to content
Snippets Groups Projects
Commit 907c37ca authored by michael.minelli's avatar michael.minelli
Browse files

Config => Adapt to shared modifications

parent 859add2a
No related branches found
No related tags found
No related merge requests found
......@@ -195,6 +195,7 @@ web_modules/
.flaskenv*
!.env.project
!.env.vault
!config.env
# parcel-bundler cache (https://parceljs.org/)
.cache
......
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="MaterialThemeProjectNewConfig">
<option name="metadata">
<MTProjectMetadataState>
<option name="userId" value="-6f2668ee:1924765eb2a:-7fc3" />
</MTProjectMetadataState>
</option>
</component>
</project>
\ No newline at end of file
......@@ -2,5 +2,6 @@
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
<mapping directory="$PROJECT_DIR$/ExpressAPI/src/shared" vcs="Git" />
</component>
</project>
\ No newline at end of file
jetbrainsConfiguration/dataSources/
\ No newline at end of file
########################### Server env vars
API_PORT=30992
LOGS_FOLDER=logs
########################### Requests env vars
REQUEST_CLIENT_VALIDATION="{
'version': {
'DojoCLI': '>=5.0.0',
'DojoExerciseChecker': '>=5.0.0',
'DojoAssignmentChecker': '>=5.0.0'
}
}"
########################### DojoCLI env vars
DOJO_CLI_VERSION_UPDATE_PERIOD_MS=7200000
DOJO_CLI_GITLAB_REPOSITORY_ID=12972
########################### Session env vars
SESSION_TIMEOUT=0
LOGIN_SERVER_PORT=30992
LOGIN_SERVER_ROUTE=login
LOGIN_GITLAB_URL_REDIRECT=http://localhost:${LOGIN_SERVER_PORT}/${LOGIN_SERVER_ROUTE}
LOGIN_GITLAB_URL_TOKEN=${GITLAB_URL}/oauth/token
########################### Gitlab env vars
GITLAB_API_URL=${GITLAB_URL}/api/v4
GITLAB_REPOSITORY_CREATION_TIMEOUT=5000
GITLAB_BADGE_PIPELINE_LINK=${GITLAB_URL}/%{project_path}/-/pipelines
GITLAB_BADGE_PIPELINE_IMAGE_URL=${GITLAB_URL}/%{project_path}/badges/%{default_branch}/pipeline.svg
########################### Assignment env vars
ASSIGNMENT_DEFAULT_DESCRIPTION="Dojo assignment repository.\n\nName of the assignment: {{ASSIGNMENT_NAME}}"
ASSIGNMENT_DEFAULT_INIT_README=false
ASSIGNMENT_DEFAULT_SHARED_RUNNERS_ENABLED=true
ASSIGNMENT_DEFAULT_VISIBILITY=private
ASSIGNMENT_DEFAULT_WIKI_ENABLED=false
ASSIGNMENT_FILENAME=dojo_assignment.json
ASSIGNMENT_BASE_FILES='["${ASSIGNMENT_FILENAME}", "README.md", "docker-compose.yml"]'
ASSIGNMENT_DEFAULT_TEMPLATE=https://{{USERNAME}}:{{TOKEN}}@${GITLAB_DOMAIN}/dojo/template/empty_template.git
########################### Exercise env vars
EXERCISE_DEFAULT_DESCRIPTION="Dojo exercise repository based on the the assignment: {{ASSIGNMENT_NAME}}"
EXERCISE_DEFAULT_VISIBILITY=private
EXERCISE_MAX_PER_ASSIGNMENT=2
EXERCISE_MAX_SAME_NAME=10
EXERCISE_PIPELINE_RESULTS_FOLDER=\$CI_PROJECT_DIR/Results_of_exercise_\$DOJO_EXERCISE_ID
EXERCISE_RESULTS_FOLDER=/dojoFiles/results/
\ No newline at end of file
......@@ -33,13 +33,21 @@ class Config {
public readonly login: {
gitlab: {
client: {
secret: string
id: string, secret: string
}, url: {
redirect: string, token: string
}
}
};
public readonly dockerhub: {
repositories: {
assignmentChecker: string, exerciseChecker: string
}
};
public readonly gitlab: {
urls: Array<string>; repository: {
url: string; urls: Array<string>; repository: {
timeoutAfterCreation: number;
}; account: {
id: number; username: string; token: string;
......@@ -82,12 +90,25 @@ class Config {
this.login = {
gitlab: {
client: {
id : process.env.LOGIN_GITLAB_CLIENT_ID || '',
secret: process.env.LOGIN_GITLAB_CLIENT_SECRET || ''
},
url : {
redirect: process.env.LOGIN_GITLAB_URL_REDIRECT ?? '',
token : process.env.LOGIN_GITLAB_URL_TOKEN ?? ''
}
}
};
this.dockerhub = {
repositories: {
assignmentChecker: process.env.DOCKERHUB_REPO_ASSIGNMENT_CHECKER ?? '',
exerciseChecker : process.env.DOCKERHUB_REPO_EXERCISE_CHECKER ?? ''
}
};
this.gitlab = {
url : process.env.GITLAB_URL || '',
urls : JSON5.parse(process.env.GITLAB_URLS || '[]'),
account : {
id : Number(process.env.GITLAB_DOJO_ACCOUNT_ID || 0),
......
......@@ -2,7 +2,6 @@ import Config
import { StatusCodes } from 'http-status-codes';
import GitlabVisibility from '../shared/types/Gitlab/GitlabVisibility.js';
import express from 'express';
import SharedConfig from '../shared/config/SharedConfig.js';
import { CommitSchema, ExpandedUserSchema, Gitlab, MemberSchema, ProjectBadgeSchema, ProjectSchema, ReleaseSchema, RepositoryFileExpandedSchema, RepositoryFileSchema, RepositoryTreeSchema } from '@gitbeaker/rest';
import logger from '../shared/logging/WinstonLogger.js';
import { AccessLevel, EditProjectOptions, ProjectVariableSchema, ProtectedBranchAccessLevel, ProtectedBranchSchema } from '@gitbeaker/core';
......@@ -12,13 +11,13 @@ import SharedGitlabManager
class GitlabManager extends SharedGitlabManager {
constructor() {
super(Config.gitlab.account.token);
super(Config.gitlab.url, Config.gitlab.account.token);
}
getUserProfile(token: string): Promise<ExpandedUserSchema> | undefined {
try {
const profileApi = new Gitlab({
host : SharedConfig.gitlab.URL,
host : Config.gitlab.url,
oauthToken: token
});
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment