* feat(app/docker): backport docker/components changes * feat(app/docker): backport docker/helpers changes * feat(app/docker): backport docker/views/container changes * feat(app/docker): backport docker/views/images changes * feat(app/docker): backport docker/views/registries changes * feat(app/docker): backport docker/views/services changes * feat(app/docker): backport docker changes * feat(app/kubernetes): backport kubernetes/components changes * feat(app/kubernetes): backport kubernetes/converters changes * feat(app/kubernetes): backport kubernetes/models changes * feat(app/kubernetes): backport kubernetes/registries changes * feat(app/kubernetes): backport kubernetes/services changes * feat(app/kubernetes): backport kubernetes/views/applications changes * feat(app/kubernetes): backport kubernetes/views/configurations changes * feat(app/kubernetes): backport kubernetes/views/configure changes * feat(app/kubernetes): backport kubernetes/views/resource-pools changes * feat(app/kubernetes): backport kubernetes/views changes * feat(app/portainer): backport portainer/components/accessManagement changes * feat(app/portainer): backport portainer/components/datatables changes * feat(app/portainer): backport portainer/components/forms changes * feat(app/portainer): backport portainer/components/registry-details changes * feat(app/portainer): backport portainer/models changes * feat(app/portainer): backport portainer/rest changes * feat(app/portainer): backport portainer/services changes * feat(app/portainer): backport portainer/views changes * feat(app/portainer): backport portainer changes * feat(app): backport app changes * config(project): gitignore + jsconfig changes gitignore all files under api/cmd/portainer but main.go and enable Code Editor autocomplete on import ... from '@/...'
49 lines
1.7 KiB
JavaScript
49 lines
1.7 KiB
JavaScript
class DockerRegistryAccessController {
|
|
/* @ngInject */
|
|
constructor($async, $state, Notifications, RegistryService, EndpointService) {
|
|
this.$async = $async;
|
|
this.$state = $state;
|
|
this.Notifications = Notifications;
|
|
this.EndpointService = EndpointService;
|
|
this.RegistryService = RegistryService;
|
|
|
|
this.updateAccess = this.updateAccess.bind(this);
|
|
}
|
|
|
|
updateAccess() {
|
|
return this.$async(async () => {
|
|
this.state.actionInProgress = true;
|
|
try {
|
|
await this.EndpointService.updateRegistryAccess(this.state.endpointId, this.state.registryId, this.registryEndpointAccesses);
|
|
this.Notifications.success('Access successfully updated');
|
|
this.$state.reload();
|
|
} catch (err) {
|
|
this.state.actionInProgress = false;
|
|
this.Notifications.error('Failure', err, 'Unable to update accesses');
|
|
}
|
|
});
|
|
}
|
|
|
|
$onInit() {
|
|
return this.$async(async () => {
|
|
try {
|
|
this.state = {
|
|
viewReady: false,
|
|
actionInProgress: false,
|
|
endpointId: this.$state.params.endpointId,
|
|
registryId: this.$state.params.id,
|
|
};
|
|
this.registry = await this.RegistryService.registry(this.state.registryId, this.state.endpointId);
|
|
this.registryEndpointAccesses = this.registry.RegistryAccesses[this.state.endpointId] || {};
|
|
} catch (err) {
|
|
this.Notifications.error('Failure', err, 'Unable to retrieve registry details');
|
|
} finally {
|
|
this.state.viewReady = true;
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
export default DockerRegistryAccessController;
|
|
angular.module('portainer.docker').controller('DockerRegistryAccessController', DockerRegistryAccessController);
|