mirror of
https://github.com/portainer/portainer.git
synced 2025-07-19 13:29:41 +02:00
* feat(api): gitlab registry type * feat(registries): early support for gitlab registries * feat(app): registry service selector * feat(registry): gitlab support : list repositories and tags - remove features missing * feat(registry): gitlab registry remove features * feat(registry): gitlab switch to registry V2 API for repositories and tags * feat(api): use development extension binary * fix(registry): avoid 401 on gitlab retrieve to disconnect the user * feat(registry): gitlab browse projects without extension * style(app): code cleaning * refactor(app): PR review changes + refactor on types * fix(gitlab): remove gitlab info from registrymanagementconfig and force gitlab type * style(api): go fmt * feat(api): update APIVersion and ExtensionDefinitionsURL * fix(api): fix invalid RM extension URL * feat(registry): PAT scope help * feat(registry): defaults on registry creation * style(registry-creation): update layout and text for Gitlab registry * feat(registry-creation): update gitlab notice
34 lines
981 B
JavaScript
34 lines
981 B
JavaScript
import _ from 'lodash-es';
|
|
import { RepositoryTagViewModel } from '../models/repositoryTag';
|
|
|
|
angular.module('portainer.extensions.registrymanagement')
|
|
.factory('RegistryV2Helper', [function RegistryV2HelperFactory() {
|
|
'use strict';
|
|
|
|
var helper = {};
|
|
|
|
function historyRawToParsed(rawHistory) {
|
|
return _.map(rawHistory, (item) => angular.fromJson(item.v1Compatibility));
|
|
}
|
|
|
|
helper.manifestsToTag = function (manifests) {
|
|
var v1 = manifests.v1;
|
|
var v2 = manifests.v2;
|
|
|
|
var history = historyRawToParsed(v1.history);
|
|
var name = v1.tag;
|
|
var os = history[0].os;
|
|
var arch = v1.architecture;
|
|
var size = v2.layers.reduce(function (a, b) {
|
|
return {
|
|
size: a.size + b.size
|
|
};
|
|
}).size;
|
|
var imageId = v2.config.digest;
|
|
var imageDigest = v2.digest;
|
|
|
|
return new RepositoryTagViewModel(name, os, arch, size, imageDigest, imageId, v2, history);
|
|
};
|
|
|
|
return helper;
|
|
}]);
|