Repository: ambari Updated Branches: refs/heads/branch-3.0-perf 04f8c53fe -> 8cc384cae
AMBARI-20737 Able to hide the Use Public Repository option on Register Version page on Ambari Admin View (dili) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/1f4a72fd Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/1f4a72fd Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/1f4a72fd Branch: refs/heads/branch-3.0-perf Commit: 1f4a72fd0cca8d822ea8ebb7368452c54d53f8bb Parents: b64e856 Author: Di Li <d...@apache.org> Authored: Mon Apr 17 12:17:27 2017 -0400 Committer: Andrew Onishuk <aonis...@hortonworks.com> Committed: Mon Apr 24 14:59:56 2017 +0300 ---------------------------------------------------------------------- .../stackVersions/StackVersionsCreateCtrl.js | 19 +++++++++++++++++++ .../ui/admin-web/app/scripts/services/Stack.js | 3 ++- .../views/stackVersions/stackVersionPage.html | 3 +-- .../VersionDefinitionResourceProvider.java | 4 ++++ .../ambari/server/stack/StackManagerTest.java | 12 ++++++++++++ 5 files changed, 38 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/1f4a72fd/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/stackVersions/StackVersionsCreateCtrl.js ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/stackVersions/StackVersionsCreateCtrl.js b/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/stackVersions/StackVersionsCreateCtrl.js index b3c27dc..69c35c0 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/stackVersions/StackVersionsCreateCtrl.js +++ b/ambari-admin/src/main/resources/ui/admin-web/app/scripts/controllers/stackVersions/StackVersionsCreateCtrl.js @@ -29,6 +29,7 @@ angular.module('ambariAdminConsole') $scope.stackIds = []; $scope.allVersions = []; $scope.networkLost = false; + $scope.stackRepoUpdateLinkExists = true; $scope.skipValidation = false; $scope.useRedhatSatellite = false; @@ -543,6 +544,23 @@ angular.module('ambariAdminConsole') })[0]; }; + /** + * Return true if at least one stacks have the repo URL link in the repoinfo.xml + * @return boolean + * */ + $scope.setStackRepoUpdateLinkExists = function (versions) { + var stackRepoUpdateLinkExists = versions.find(function(_version){ + return _version.stackRepoUpdateLinkExists; + }); + + //Found at least one version with the stack repo update link + if (stackRepoUpdateLinkExists){ + $scope.stackRepoUpdateLinkExists = true; + } else { + $scope.stackRepoUpdateLinkExists = false; + } + }; + $scope.setNetworkIssues = function (versions) { $scope.networkLost = !versions.find(function(_version){ return !_version.stackDefault; @@ -576,6 +594,7 @@ angular.module('ambariAdminConsole') $scope.selectedPublicRepoVersion = $scope.activeStackVersion; $scope.setVersionSelected($scope.activeStackVersion); $scope.setNetworkIssues(versions); + $scope.setStackRepoUpdateLinkExists(versions); $scope.validateRepoUrl(); $scope.availableStackRepoList = versions.length == 1 ? [] : versions; } http://git-wip-us.apache.org/repos/asf/ambari/blob/1f4a72fd/ambari-admin/src/main/resources/ui/admin-web/app/scripts/services/Stack.js ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/scripts/services/Stack.js b/ambari-admin/src/main/resources/ui/admin-web/app/scripts/services/Stack.js index e028906..b496987 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/scripts/services/Stack.js +++ b/ambari-admin/src/main/resources/ui/admin-web/app/scripts/services/Stack.js @@ -88,7 +88,7 @@ angular.module('ambariAdminConsole') }, allPublicStackVersions: function() { - var url = '/version_definitions?fields=VersionDefinition/stack_default,operating_systems/repositories/Repositories/*,VersionDefinition/stack_services,VersionDefinition/repository_version' + + var url = '/version_definitions?fields=VersionDefinition/stack_default,VersionDefinition/stack_repo_update_link_exists,operating_systems/repositories/Repositories/*,VersionDefinition/stack_services,VersionDefinition/repository_version' + '&VersionDefinition/show_available=true'; var deferred = $q.defer(); $http.get(Settings.baseUrl + url, {mock: 'version/versions.json'}) @@ -100,6 +100,7 @@ angular.module('ambariAdminConsole') stackName: version.VersionDefinition.stack_name, stackVersion: version.VersionDefinition.stack_version, stackDefault: version.VersionDefinition.stack_default, + stackRepoUpdateLinkExists: version.VersionDefinition.stack_repo_update_link_exists, stackNameVersion: version.VersionDefinition.stack_name + '-' + version.VersionDefinition.stack_version, displayName: version.VersionDefinition.stack_name + '-' + version.VersionDefinition.repository_version.split('-')[0], //HDP-2.3.4.0 displayNameFull: version.VersionDefinition.stack_name + '-' + version.VersionDefinition.repository_version, //HDP-2.3.4.0-23 http://git-wip-us.apache.org/repos/asf/ambari/blob/1f4a72fd/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/stackVersionPage.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/stackVersionPage.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/stackVersionPage.html index 3bee2a1..fe08802 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/stackVersionPage.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/stackVersionPage.html @@ -115,8 +115,7 @@ </div> <div id="upload-definition-file-panel" ng-if="createController"> - - <div class="col-sm-12 big-radio clearfix" ng-class="{'disabled' : networkLost || useRedhatSatellite}"> + <div class="col-sm-12 big-radio clearfix hide-soft" ng-class="{'disabled' : networkLost || useRedhatSatellite,'visible':stackRepoUpdateLinkExists}"> <input type="radio" ng-model="selectedOption.index" value="1" ng-change="togglePublicLocalOptionSelect()" ng-disabled="networkLost || useRedhatSatellite"> <span>{{'versions.usePublic' | translate}}</span> <a id="public-disabled-link" href="javascript:void(0);" ng-if="networkLost" ng-click="showPublicRepoDisabledDialog()">{{'versions.networkIssues.networkLost'| translate}}</a> http://git-wip-us.apache.org/repos/asf/ambari/blob/1f4a72fd/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/VersionDefinitionResourceProvider.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/VersionDefinitionResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/VersionDefinitionResourceProvider.java index 352aa2d..7914fd9 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/VersionDefinitionResourceProvider.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/VersionDefinitionResourceProvider.java @@ -102,6 +102,7 @@ public class VersionDefinitionResourceProvider extends AbstractAuthorizedResourc protected static final String VERSION_DEF_AVAILABLE_SERVICES = "VersionDefinition/services"; protected static final String VERSION_DEF_STACK_SERVICES = "VersionDefinition/stack_services"; protected static final String VERSION_DEF_STACK_DEFAULT = "VersionDefinition/stack_default"; + protected static final String VERSION_DEF_STACK_REPO_UPDATE_LINK_EXISTS = "VersionDefinition/stack_repo_update_link_exists"; protected static final String VERSION_DEF_DISPLAY_NAME = "VersionDefinition/display_name"; protected static final String VERSION_DEF_VALIDATION = "VersionDefinition/validation"; protected static final String SHOW_AVAILABLE = "VersionDefinition/show_available"; @@ -157,6 +158,7 @@ public class VersionDefinitionResourceProvider extends AbstractAuthorizedResourc VERSION_DEF_AVAILABLE_SERVICES, VERSION_DEF_STACK_SERVICES, VERSION_DEF_STACK_DEFAULT, + VERSION_DEF_STACK_REPO_UPDATE_LINK_EXISTS, VERSION_DEF_DISPLAY_NAME, VERSION_DEF_VALIDATION, VERSION_DEF_MIN_JDK, @@ -617,6 +619,7 @@ public class VersionDefinitionResourceProvider extends AbstractAuthorizedResourc setResourceProperty(resource, VERSION_DEF_RELEASE_NOTES, xml.release.releaseNotes, requestedIds); setResourceProperty(resource, VERSION_DEF_RELEASE_VERSION, xml.release.version, requestedIds); setResourceProperty(resource, VERSION_DEF_STACK_DEFAULT, xml.isStackDefault(), requestedIds); + setResourceProperty(resource, VERSION_DEF_STACK_REPO_UPDATE_LINK_EXISTS, (stack.getRepositoryXml().getLatestURI() != null), requestedIds); setResourceProperty(resource, VERSION_DEF_DISPLAY_NAME, xml.release.display, requestedIds); if (null != validations) { @@ -686,6 +689,7 @@ public class VersionDefinitionResourceProvider extends AbstractAuthorizedResourc setResourceProperty(resource, VERSION_DEF_STACK_SERVICES, xml.getStackServices(stack), requestedIds); setResourceProperty(resource, VERSION_DEF_MIN_JDK, stack.getMinJdk(), requestedIds); setResourceProperty(resource, VERSION_DEF_MAX_JDK, stack.getMaxJdk(), requestedIds); + setResourceProperty(resource, VERSION_DEF_STACK_REPO_UPDATE_LINK_EXISTS, (stack.getRepositoryXml().getLatestURI() != null), requestedIds); } return resource; http://git-wip-us.apache.org/repos/asf/ambari/blob/1f4a72fd/ambari-server/src/test/java/org/apache/ambari/server/stack/StackManagerTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/stack/StackManagerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/stack/StackManagerTest.java index 507c560..8c7ab9d 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/stack/StackManagerTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/stack/StackManagerTest.java @@ -1025,4 +1025,16 @@ public class StackManagerTest { assertTrue(logsearchLogfeederRoleCommand + " should be dependent of " + infraSolrRoleCommand, logsearchLogfeederBlockers.contains(infraSolrRoleCommand)); assertTrue(logsearchLogfeederRoleCommand + " should be dependent of " + logsearchServerRoleCommand, logsearchLogfeederBlockers.contains(logsearchServerRoleCommand)); } + + @Test + public void testVersionDefinitionStackRepoUpdateLinkExists(){ + // Get the base sqoop service + StackInfo stack = stackManager.getStack("HDP", "2.1.1"); + String latestUri = stack.getRepositoryXml().getLatestURI(); + assertTrue(latestUri != null); + + stack = stackManager.getStack("HDP", "2.0.8"); + latestUri = stack.getRepositoryXml().getLatestURI(); + assertTrue(latestUri == null); + } }