mirror of https://github.com/portainer/portainer
34 lines
961 B
JavaScript
34 lines
961 B
JavaScript
|
import gitlabResponseGetLink from './transform/gitlabResponseGetLink'
|
||
|
|
||
|
angular.module('portainer.extensions.registrymanagement')
|
||
|
.factory('Gitlab', ['$resource', 'API_ENDPOINT_REGISTRIES',
|
||
|
function GitlabFactory($resource, API_ENDPOINT_REGISTRIES) {
|
||
|
'use strict';
|
||
|
return function(env) {
|
||
|
const headers = {};
|
||
|
if (env) {
|
||
|
headers['Private-Token'] = env.token;
|
||
|
headers['X-Gitlab-Domain'] = env.url
|
||
|
}
|
||
|
|
||
|
const baseUrl = API_ENDPOINT_REGISTRIES + '/:id/proxies/gitlab/api/v4/projects';
|
||
|
|
||
|
return $resource(baseUrl, {id:'@id'},
|
||
|
{
|
||
|
projects: {
|
||
|
method: 'GET',
|
||
|
params: { membership: 'true' },
|
||
|
transformResponse: gitlabResponseGetLink,
|
||
|
headers: headers
|
||
|
},
|
||
|
repositories :{
|
||
|
method: 'GET',
|
||
|
url: baseUrl + '/:projectId/registry/repositories',
|
||
|
params: { tags: true },
|
||
|
headers: headers,
|
||
|
transformResponse: gitlabResponseGetLink
|
||
|
}
|
||
|
});
|
||
|
};
|
||
|
}]);
|