Repository: ambari Updated Branches: refs/heads/trunk 677e233c7 -> c41f360a9
AMBARI-12797: [PluggableStackDefinition] Add ability to filter list of operating systems from repoinfo (jluniya) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/c41f360a Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/c41f360a Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/c41f360a Branch: refs/heads/trunk Commit: c41f360a973a47554c36c0333dd84ead239bf25d Parents: 677e233 Author: Jayush Luniya <[email protected]> Authored: Mon Aug 17 23:42:29 2015 -0700 Committer: Jayush Luniya <[email protected]> Committed: Mon Aug 17 23:42:29 2015 -0700 ---------------------------------------------------------------------- .../pluggable_stack_definition/GenerateStackDefinition.py | 9 +++++++++ .../main/python/pluggable_stack_definition/configs/PHD.json | 4 ++++ 2 files changed, 13 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/c41f360a/ambari-common/src/main/python/pluggable_stack_definition/GenerateStackDefinition.py ---------------------------------------------------------------------- diff --git a/ambari-common/src/main/python/pluggable_stack_definition/GenerateStackDefinition.py b/ambari-common/src/main/python/pluggable_stack_definition/GenerateStackDefinition.py index 6e0e255..92d5b70 100644 --- a/ambari-common/src/main/python/pluggable_stack_definition/GenerateStackDefinition.py +++ b/ambari-common/src/main/python/pluggable_stack_definition/GenerateStackDefinition.py @@ -335,6 +335,15 @@ def process_repoinfo_xml(file_path, config_data, stack_version_changes, stack): ######################################################################################### tree = ET.parse(file_path) root = tree.getroot() + remove_list = list() + if 'family' in stack: + for os_tag in root.iter("os"): + os_family = os_tag.get('family') + if os_family not in stack.family: + remove_list.append(os_tag) + for os_tag in remove_list: + root.remove(os_tag) + # Update all base urls for baseurl_tag in root.getiterator('baseurl'): baseurl_tag.text = 'http://SET_REPO_URL' http://git-wip-us.apache.org/repos/asf/ambari/blob/c41f360a/ambari-common/src/main/python/pluggable_stack_definition/configs/PHD.json ---------------------------------------------------------------------- diff --git a/ambari-common/src/main/python/pluggable_stack_definition/configs/PHD.json b/ambari-common/src/main/python/pluggable_stack_definition/configs/PHD.json index ca6f49c..f3beb6e 100644 --- a/ambari-common/src/main/python/pluggable_stack_definition/configs/PHD.json +++ b/ambari-common/src/main/python/pluggable_stack_definition/configs/PHD.json @@ -25,6 +25,7 @@ { "version": "2.0.6", "baseVersion": "2.0.6", + "family": "redhat6,suse11", "active": "false", "services": [ { @@ -64,6 +65,7 @@ "version": "2.1", "baseVersion": "2.1", "active": "false", + "family": "redhat6,suse11", "services": [ { "name": "HDFS" @@ -101,6 +103,7 @@ "version": "3.0", "baseVersion": "2.2", "active": "true", + "family": "redhat6,suse11", "services": [ { "name": "HDFS" @@ -169,6 +172,7 @@ "version": "3.3", "baseVersion": "2.3", "active": "true", + "family": "redhat6,redhat7,suse11", "services": [ { "name": "HDFS"
