From 3d4af7c54fcb2aba9e9e62e9e821b28cc137b4f0 Mon Sep 17 00:00:00 2001 From: xAt0mZ Date: Wed, 3 Jul 2019 00:33:46 +0200 Subject: [PATCH] feat(registry): disable browse for quay.io registry (#2971) * feat(registry): disable browse for quay.io registry * refactor(registry): browsable urls check done with function --- .../registries-datatable/registriesDatatable.html | 4 ++-- .../registries-datatable/registriesDatatable.js | 3 ++- app/portainer/views/registries/registries.html | 1 + app/portainer/views/registries/registriesController.js | 8 ++++++++ 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/app/portainer/components/datatables/registries-datatable/registriesDatatable.html b/app/portainer/components/datatables/registries-datatable/registriesDatatable.html index f26e77443..45ebc13a8 100644 --- a/app/portainer/components/datatables/registries-datatable/registriesDatatable.html +++ b/app/portainer/components/datatables/registries-datatable/registriesDatatable.html @@ -62,10 +62,10 @@ Manage access - + Browse - + Browse (extension) diff --git a/app/portainer/components/datatables/registries-datatable/registriesDatatable.js b/app/portainer/components/datatables/registries-datatable/registriesDatatable.js index f0247eb40..a235dfcad 100644 --- a/app/portainer/components/datatables/registries-datatable/registriesDatatable.js +++ b/app/portainer/components/datatables/registries-datatable/registriesDatatable.js @@ -10,6 +10,7 @@ angular.module('portainer.app').component('registriesDatatable', { reverseOrder: '<', accessManagement: '<', removeAction: '<', - registryManagement: '<' + registryManagement: '<', + canBrowse: '<' } }); diff --git a/app/portainer/views/registries/registries.html b/app/portainer/views/registries/registries.html index 670baba7e..3bf7d8eb7 100644 --- a/app/portainer/views/registries/registries.html +++ b/app/portainer/views/registries/registries.html @@ -77,6 +77,7 @@ access-management="applicationState.application.authentication && isAdmin" remove-action="removeAction" registry-management="registryManagementAvailable" + can-browse="canBrowse" > diff --git a/app/portainer/views/registries/registriesController.js b/app/portainer/views/registries/registriesController.js index c504cf5e6..bdb0a062d 100644 --- a/app/portainer/views/registries/registriesController.js +++ b/app/portainer/views/registries/registriesController.js @@ -1,3 +1,5 @@ +import _ from 'lodash-es'; + angular.module('portainer.app') .controller('RegistriesController', ['$q', '$scope', '$state', 'RegistryService', 'DockerHubService', 'ModalService', 'Notifications', 'ExtensionService', 'Authentication', function ($q, $scope, $state, RegistryService, DockerHubService, ModalService, Notifications, ExtensionService, Authentication) { @@ -10,6 +12,12 @@ function ($q, $scope, $state, RegistryService, DockerHubService, ModalService, N dockerHubPassword: '' }; + const nonBrowsableUrls = ['quay.io']; + + $scope.canBrowse = function(item) { + return ! _.includes(nonBrowsableUrls, item.URL); + } + $scope.updateDockerHub = function() { var dockerhub = $scope.dockerhub; dockerhub.Password = $scope.formValues.dockerHubPassword;