diff --git a/ExpressAPI/src/managers/GitlabManager.ts b/ExpressAPI/src/managers/GitlabManager.ts index 65a27c378c6101d3e0b95bae6f8715cd18724eb3..74180c495f713256146c38afa7039e7aac941fe9 100644 --- a/ExpressAPI/src/managers/GitlabManager.ts +++ b/ExpressAPI/src/managers/GitlabManager.ts @@ -72,6 +72,16 @@ class GitlabManager { return response.data; } + async editRepository(repoId: number, newAttributes: Partial<GitlabRepository>): Promise<GitlabRepository> { + const response = await axios.put<GitlabRepository>(this.getApiUrl(GitlabRoutes.REPOSITORY_EDIT).replace('{{id}}', String(repoId)), newAttributes); + + return response.data; + } + + async changeRepositoryVisibility(repoId: number, visibility: GitlabVisibility): Promise<GitlabRepository> { + return await this.editRepository(repoId, { visibility: visibility.toString() }); + } + async addRepositoryMember(repoId: number, userId: number, accessLevel: GitlabAccessLevel): Promise<GitlabMember> { const response = await axios.post<GitlabMember>(this.getApiUrl(GitlabRoutes.REPOSITORY_MEMBER_ADD).replace('{{id}}', String(repoId)), { user_id : userId,