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

SharedGitlabManager => Adapt to new config usage

parent 22127072
No related branches found
No related tags found
No related merge requests found
import axios from 'axios';
import SharedConfig from '../config/SharedConfig.js';
import * as GitlabCore from '@gitbeaker/core';
import { GitbeakerRequestError } from '@gitbeaker/requester-utils';
import { Gitlab, PipelineSchema, ProjectSchema, UserSchema } from '@gitbeaker/rest';
......@@ -12,11 +11,11 @@ class SharedGitlabManager {
setToken(token: string) {
this.api = new Gitlab(Object.assign({
host: SharedConfig.gitlab.URL
host: this.gitlabUrl ?? ''
}, this.refreshTokenFunction ? { oauthToken: token } : { token: token }));
}
constructor(token: string, refreshTokenFunction?: () => Promise<string>) {
constructor(public gitlabUrl: string, token: string, public clientId?: string, public urlRedirect?: string, public urlToken?: string, refreshTokenFunction?: () => Promise<string>) {
this.refreshTokenFunction = refreshTokenFunction;
this.setToken(token);
}
......@@ -36,13 +35,17 @@ class SharedGitlabManager {
}
async getTokens(codeOrRefresh: string, isRefresh: boolean = false, clientSecret: string = ''): Promise<GitlabToken> {
const response = await axios.post<GitlabToken>(SharedConfig.login.gitlab.url.token, {
client_id : SharedConfig.login.gitlab.client.id,
if ( !this.urlToken ) {
throw new Error('Error when initializing GitlabManager');
}
const response = await axios.post<GitlabToken>(this.urlToken, {
client_id : this.clientId,
client_secret: clientSecret,
grant_type : isRefresh ? 'refresh_token' : 'authorization_code',
refresh_token: codeOrRefresh,
code : codeOrRefresh,
redirect_uri : SharedConfig.login.gitlab.url.redirect
redirect_uri : this.urlRedirect
});
return response.data;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment