mirror of https://github.com/portainer/portainer
83 lines
2.6 KiB
JavaScript
83 lines
2.6 KiB
JavaScript
import {genericHandler, logsHandler} from './response/handlers';
|
|
|
|
angular.module('portainer.docker')
|
|
.factory('Container', ['$resource', 'API_ENDPOINT_ENDPOINTS', 'EndpointProvider', 'ContainersInterceptor',
|
|
function ContainerFactory($resource, API_ENDPOINT_ENDPOINTS, EndpointProvider, ContainersInterceptor) {
|
|
'use strict';
|
|
return $resource(API_ENDPOINT_ENDPOINTS + '/:endpointId/docker/containers/:id/:action', {
|
|
name: '@name',
|
|
endpointId: EndpointProvider.endpointID
|
|
},
|
|
{
|
|
query: {
|
|
method: 'GET', params: { all: 0, action: 'json', filters: '@filters' },
|
|
isArray: true, interceptor: ContainersInterceptor, timeout: 15000
|
|
},
|
|
get: {
|
|
method: 'GET', params: { action: 'json' }
|
|
},
|
|
stop: {
|
|
method: 'POST', params: { id: '@id', action: 'stop' }
|
|
},
|
|
restart: {
|
|
method: 'POST', params: { id: '@id', action: 'restart' }
|
|
},
|
|
kill: {
|
|
method: 'POST', params: { id: '@id', action: 'kill' }
|
|
},
|
|
pause: {
|
|
method: 'POST', params: { id: '@id', action: 'pause' }
|
|
},
|
|
unpause: {
|
|
method: 'POST', params: { id: '@id', action: 'unpause' }
|
|
},
|
|
logs: {
|
|
method: 'GET', params: { id: '@id', action: 'logs' },
|
|
timeout: 4500, ignoreLoadingBar: true,
|
|
transformResponse: logsHandler
|
|
},
|
|
stats: {
|
|
method: 'GET', params: { id: '@id', stream: false, action: 'stats' },
|
|
timeout: 4500, ignoreLoadingBar: true
|
|
},
|
|
top: {
|
|
method: 'GET', params: { id: '@id', action: 'top' },
|
|
timeout: 4500, ignoreLoadingBar: true
|
|
},
|
|
start: {
|
|
method: 'POST', params: {id: '@id', action: 'start'},
|
|
transformResponse: genericHandler
|
|
},
|
|
create: {
|
|
method: 'POST', params: {action: 'create'},
|
|
transformResponse: genericHandler,
|
|
ignoreLoadingBar: true
|
|
},
|
|
remove: {
|
|
method: 'DELETE', params: {id: '@id', v: '@v', force: '@force'},
|
|
transformResponse: genericHandler
|
|
},
|
|
rename: {
|
|
method: 'POST', params: { id: '@id', action: 'rename', name: '@name' },
|
|
transformResponse: genericHandler
|
|
},
|
|
exec: {
|
|
method: 'POST', params: {id: '@id', action: 'exec'},
|
|
transformResponse: genericHandler, ignoreLoadingBar: true
|
|
},
|
|
inspect: {
|
|
method: 'GET', params: { id: '@id', action: 'json' }
|
|
},
|
|
update: {
|
|
method: 'POST', params: { id: '@id', action: 'update'}
|
|
},
|
|
prune: {
|
|
method: 'POST', params: { action: 'prune', filters: '@filters' }
|
|
},
|
|
resize: {
|
|
method: 'POST', params: {id: '@id', action: 'resize', h: '@height', w: '@width'},
|
|
transformResponse: genericHandler, ignoreLoadingBar: true
|
|
}
|
|
});
|
|
}]);
|