e19bc8abc7
* feat(registry): registry or direct url selector * feat(app): push pull container creation * feat(app): push pull container duplicate * feat(app): push pull container details recreate * feat(app): push pull container details commit * feat(app): push pull images * feat(app): push pull image tag * feat(app): push pull image push * feat(app): push pull image pull * feat(app): push pull service creation * feat(app): push pull templates create container * feat(app): push pull templates create stacks * feat(app): push pull template edit * feat(app): push pull service details update * fix(app): refactor registry selector + registry auto select * feat(app): remove autocomplete on registry selector * style(image-registry): reword simple/advanced mode * Revert "feat(app): remove autocomplete on registry selector" This reverts commit 97ec2ddd62715405c4089bd2c0cdda4028263d94. * refactor(registry-selector): reverse registry and image fields * feat(app): autocomplete on registry selector * feat(registry-selector): change gitlab registry autocomplete * feat(registry-selector): autocomplete for dockerhub * feat(registry-selector): gitlab url based on locked value instead of name * fix(registry-selector): gitlab registries URL are not modified anymore * fix(registry-selector): change gitlab image autofill on duplicate * fix(registry-selector): gitlab registries now only suggest their own images and not all from gitlab * fix(registry-selector): psuh pull issues with gitlab registries * fix(registry-selector): dockerhub registry selection on duplicate for dockerhub images * fix(templates): registry retrieval for template * feat(images): add autocomplete on image pull panel * fix(registry-selector): add latest tag when no tag is specified * fix(registry-selector): latest tag now applied for non gitlab registries
44 lines
2.0 KiB
JavaScript
44 lines
2.0 KiB
JavaScript
import {deleteImageHandler, jsonObjectsToArrayHandler} from './response/handlers';
|
|
import {imageGetResponse} from './response/image';
|
|
|
|
angular.module('portainer.docker')
|
|
.factory('Image', ['$resource', 'API_ENDPOINT_ENDPOINTS', 'EndpointProvider', 'HttpRequestHelper', 'ImagesInterceptor',
|
|
function ImageFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider, HttpRequestHelper, ImagesInterceptor) {
|
|
'use strict';
|
|
|
|
return $resource(API_ENDPOINT_ENDPOINTS + '/:endpointId/docker/images/:id/:action', {
|
|
endpointId: EndpointProvider.endpointID
|
|
},
|
|
{
|
|
query: {method: 'GET', params: {all: 0, action: 'json'}, isArray: true, interceptor: ImagesInterceptor, timeout: 15000},
|
|
get: {method: 'GET', params: {action: 'json'}},
|
|
search: {method: 'GET', params: {action: 'search'}},
|
|
history: {method: 'GET', params: {action: 'history'}, isArray: true},
|
|
insert: {method: 'POST', params: {id: '@id', action: 'insert'}},
|
|
tag: {method: 'POST', params: {id: '@id', action: 'tag', force: 0, repo: '@repo'}, ignoreLoadingBar: true},
|
|
inspect: {method: 'GET', params: {id: '@id', action: 'json'}},
|
|
push: {
|
|
method: 'POST', params: {action: 'push', id: '@imageName'},
|
|
isArray: true, transformResponse: jsonObjectsToArrayHandler,
|
|
headers: { 'X-Registry-Auth': HttpRequestHelper.registryAuthenticationHeader },
|
|
ignoreLoadingBar: true
|
|
},
|
|
create: {
|
|
method: 'POST', params: {action: 'create', fromImage: '@fromImage'},
|
|
isArray: true, transformResponse: jsonObjectsToArrayHandler,
|
|
headers: { 'X-Registry-Auth': HttpRequestHelper.registryAuthenticationHeader },
|
|
ignoreLoadingBar: true
|
|
},
|
|
download: {
|
|
method: 'GET', params: {action:'get', names: '@names'},
|
|
transformResponse: imageGetResponse,
|
|
responseType: 'blob',
|
|
ignoreLoadingBar: true
|
|
},
|
|
remove: {
|
|
method: 'DELETE', params: {id: '@id', force: '@force'},
|
|
isArray: true, transformResponse: deleteImageHandler
|
|
}
|
|
});
|
|
}]);
|