You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by be...@apache.org on 2018/05/25 16:39:29 UTC
[ambari] branch branch-feature-AMBARI-14714 updated: AMBARI-23032
export cluster as blueprint for 3.0 update (#1367)
This is an automated email from the ASF dual-hosted git repository.
benyoka pushed a commit to branch branch-feature-AMBARI-14714
in repository https://gitbox.apache.org/repos/asf/ambari.git
The following commit(s) were added to refs/heads/branch-feature-AMBARI-14714 by this push:
new 7bbf158 AMBARI-23032 export cluster as blueprint for 3.0 update (#1367)
7bbf158 is described below
commit 7bbf1586fcadcf368aa80b85f94ead553d9d444c
Author: benyoka <be...@users.noreply.github.com>
AuthorDate: Fri May 25 18:39:26 2018 +0200
AMBARI-23032 export cluster as blueprint for 3.0 update (#1367)
* AMBARI-23032 fix execptions, export cluster settings and single mpacks (benyoka)
* AMBARI-23032 fix review comments (benyoka)
* AMBARI-23032 better method naming (benyoka)
* AMBARI-23032 fix review comments #2 (benyoka)
* AMBARI-23032 fix review comments #3 (benyoka)
* AMBARI-23032 fix swallowed exceptions during mpack installation
* AMBARI-23032 prepare for mpack info in component
* AMBARI-23032 fix exceptions during installation and blueprint export (benyoka)
* AMBARI-23032 revert accidental changes (benyoka)
* AMBARI-23032 revert accidental changes #2 (benyoka)
* AMBARI-23032 fixed a number of unit tests (benyoka)
* AMBARI-23032 make sure Blueprints tag is exported (benyoka)
* Merge branch-feature-AMBARI-14714
* AMBARI-23032 fix import error (benyoka)
* AMBARI-23032 fix equals() in Component (benyoka)
---
.../server/api/query/render/ClusterBlueprintRenderer.java | 10 +++++-----
.../server/controller/internal/ExportBlueprintRequest.java | 2 +-
.../main/java/org/apache/ambari/server/topology/Component.java | 3 ++-
.../server/api/query/render/ClusterBlueprintRendererTest.java | 4 ++++
4 files changed, 12 insertions(+), 7 deletions(-)
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/api/query/render/ClusterBlueprintRenderer.java b/ambari-server/src/main/java/org/apache/ambari/server/api/query/render/ClusterBlueprintRenderer.java
index e2c9bfd..c7ad7e3 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/api/query/render/ClusterBlueprintRenderer.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/api/query/render/ClusterBlueprintRenderer.java
@@ -244,13 +244,13 @@ public class ClusterBlueprintRenderer extends BaseRenderer implements Renderer {
* Adds mpack instances to the exported blueprint resource.
*/
private void addMpackInstances(Resource blueprintResource, TreeNode<Resource> clusterNode) {
- List<Map<String, Object>> mpackInstances = clusterNode.getChild("stack_versions").getChildren().stream().map(
+ // TODO: find a way to add mpack uri
+ List<Map<String, Object>> mpackInstances = clusterNode.getChild("servicegroups").getChildren().stream().map(
child -> {
- Map<String, Object> stackVersionProps = child.getObject().getPropertiesMap().get("ClusterStackVersions");
+ Map<String, Object> serviceGroupProps = child.getObject().getPropertiesMap().get("ServiceGroupInfo");
return ImmutableMap.of(
- "name", stackVersionProps.get("stack"),
- "version", stackVersionProps.get("version"),
- "url", stackVersionProps.get("mpack_uri"));
+ "name", serviceGroupProps.get("mpack_name"),
+ "version", serviceGroupProps.get("mpack_version"));
}).
collect(toList());
blueprintResource.setProperty(BlueprintResourceProvider.MPACK_INSTANCES_PROPERTY_ID, mpackInstances);
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ExportBlueprintRequest.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ExportBlueprintRequest.java
index 14179f4..dc3f2d5 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ExportBlueprintRequest.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ExportBlueprintRequest.java
@@ -82,7 +82,7 @@ public class ExportBlueprintRequest implements TopologyRequest {
// create service group to mpack map
serviceGroupToMpack = clusterNode.getChild("servicegroups").getChildren().stream().
map(tn -> tn.getObject().getPropertiesMap().get(ServiceGroupResourceProvider.RESPONSE_KEY)).
- collect(toMap(m -> m.get("service_group_name").toString(), m -> new StackId(m.get("version").toString())));
+ collect(toMap(m -> m.get("service_group_name").toString(), m -> new StackId(m.get("stack").toString())));
createConfiguration(clusterNode);
//todo: should be parsing Configuration from the beginning
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/topology/Component.java b/ambari-server/src/main/java/org/apache/ambari/server/topology/Component.java
index 40d81fa..eac584f 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/topology/Component.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/topology/Component.java
@@ -88,6 +88,7 @@ public class Component {
public String getMpackInstance() {
return this.mpackInstance;
}
+
/**
* @return the service instance this component belongs to. Can be {@code null} if component does not belong to a service
* instance (there is a single service of the component's service type)
@@ -99,7 +100,7 @@ public class Component {
/**
* Gets the provision action associated with this component.
*
- * @return the provision action for this component, whichRequest's Mpack instances isRequest's Mpack instances is
+ * @return the provision action for this component, which
* may be null if the default action is to be used
*/
public ProvisionAction getProvisionAction() {
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/query/render/ClusterBlueprintRendererTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/query/render/ClusterBlueprintRendererTest.java
index 34e3bd3..5298d1f 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/query/render/ClusterBlueprintRendererTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/query/render/ClusterBlueprintRendererTest.java
@@ -287,6 +287,8 @@ public class ClusterBlueprintRendererTest {
serviceGroupResource.setProperty("ServiceGroupInfo/cluster_name", "c1");
serviceGroupResource.setProperty("ServiceGroupInfo/service_group_id", "1");
serviceGroupResource.setProperty("ServiceGroupInfo/service_group_name", "core");
+ serviceGroupResource.setProperty("ServiceGroupInfo/mpack_name", "HDP");
+ serviceGroupResource.setProperty("ServiceGroupInfo/mpack_version", "1.3.3");
TreeNode<Resource> serviceGroup1Tree = serviceGroupsTree.addChild(serviceGroupResource, "ServiceGroup:1");
clusterTree.addChild(serviceGroupsTree);
@@ -710,6 +712,8 @@ public class ClusterBlueprintRendererTest {
serviceGroupResource.setProperty("ServiceGroupInfo/cluster_name", "c1");
serviceGroupResource.setProperty("ServiceGroupInfo/service_group_id", "1");
serviceGroupResource.setProperty("ServiceGroupInfo/service_group_name", "core");
+ serviceGroupResource.setProperty("ServiceGroupInfo/mpack_name", "HDP");
+ serviceGroupResource.setProperty("ServiceGroupInfo/mpack_version", "1.3.3");
TreeNode<Resource> serviceGroup1Tree = serviceGroupsTree.addChild(serviceGroupResource, "ServiceGroup:1");
clusterTree.addChild(serviceGroupsTree);
--
To stop receiving notification emails like this one, please contact
benyoka@apache.org.