mirror of https://github.com/portainer/portainer
83 lines
2.7 KiB
JavaScript
83 lines
2.7 KiB
JavaScript
|
import { RegistryTypes } from 'Extensions/registry-management/models/registryTypes';
|
||
|
|
||
|
angular.module('portainer.extensions.registrymanagement')
|
||
|
.factory('RegistryServiceSelector', ['$q', 'RegistryV2Service', 'RegistryGitlabService',
|
||
|
function RegistryServiceSelector($q, RegistryV2Service, RegistryGitlabService) {
|
||
|
'use strict';
|
||
|
const service = {};
|
||
|
|
||
|
service.ping = ping;
|
||
|
service.repositories = repositories;
|
||
|
service.getRepositoriesDetails = getRepositoriesDetails;
|
||
|
service.tags = tags;
|
||
|
service.getTagsDetails = getTagsDetails;
|
||
|
service.tag = tag;
|
||
|
service.addTag = addTag;
|
||
|
service.deleteManifest = deleteManifest;
|
||
|
|
||
|
service.shortTagsWithProgress = shortTagsWithProgress;
|
||
|
service.deleteTagsWithProgress = deleteTagsWithProgress;
|
||
|
service.retagWithProgress = retagWithProgress;
|
||
|
|
||
|
function ping(registry, forceNewConfig) {
|
||
|
let service = RegistryV2Service;
|
||
|
return service.ping(registry, forceNewConfig)
|
||
|
}
|
||
|
|
||
|
function repositories(registry) {
|
||
|
let service = RegistryV2Service;
|
||
|
if (registry.Type === RegistryTypes.GITLAB) {
|
||
|
service = RegistryGitlabService;
|
||
|
}
|
||
|
return service.repositories(registry);
|
||
|
}
|
||
|
|
||
|
function getRepositoriesDetails(registry, repositories) {
|
||
|
let service = RegistryV2Service;
|
||
|
return service.getRepositoriesDetails(registry, repositories);
|
||
|
}
|
||
|
|
||
|
function tags(registry, repository) {
|
||
|
let service = RegistryV2Service;
|
||
|
return service.tags(registry, repository);
|
||
|
}
|
||
|
|
||
|
function getTagsDetails(registry, repository, tags) {
|
||
|
let service = RegistryV2Service;
|
||
|
return service.getTagsDetails(registry, repository, tags);
|
||
|
}
|
||
|
|
||
|
function tag(registry, repository, tag) {
|
||
|
let service = RegistryV2Service;
|
||
|
return service.tag(registry, repository, tag);
|
||
|
}
|
||
|
|
||
|
function addTag(registry, repository, tag, manifest) {
|
||
|
let service = RegistryV2Service;
|
||
|
return service.addTag(registry, repository, tag, manifest);
|
||
|
}
|
||
|
|
||
|
function deleteManifest(registry, repository, digest) {
|
||
|
let service = RegistryV2Service;
|
||
|
return service.deleteManifest(registry, repository, digest);
|
||
|
}
|
||
|
|
||
|
function shortTagsWithProgress(registry, repository, tagsList) {
|
||
|
let service = RegistryV2Service;
|
||
|
return service.shortTagsWithProgress(registry, repository, tagsList);
|
||
|
}
|
||
|
|
||
|
function deleteTagsWithProgress(registry, repository, modifiedDigests, impactedTags) {
|
||
|
let service = RegistryV2Service;
|
||
|
return service.deleteTagsWithProgress(registry, repository, modifiedDigests, impactedTags);
|
||
|
}
|
||
|
|
||
|
function retagWithProgress(registry, repository, modifiedTags, modifiedDigests, impactedTags) {
|
||
|
let service = RegistryV2Service;
|
||
|
return service.retagWithProgress(registry, repository, modifiedTags, modifiedDigests, impactedTags);
|
||
|
}
|
||
|
|
||
|
return service;
|
||
|
}
|
||
|
]);
|