-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/61201/
-----------------------------------------------------------

Review request for Ambari, Jayush Luniya and Madhuvanthi Radhakrishnan.


Bugs: AMBARI-21594
    https://issues.apache.org/jira/browse/AMBARI-21594


Repository: ambari


Description
-------

**ServiceGroup (SG)** : is defined as sub-resource of cluster. It would later 
be used to logically group a set of services (coming out of Management Pack 
selected).
 
**Example of a Service groups can be a:** 
- “Core” Service Group  containing HDFS and Zookeeper. This will be formed by 
default.
- “Streaming” Service Group containing Kafka, Storm, Nifi.
- “Data Science” Service Group containing Hive, Spark, Zeppelin.
- “EDW” Service Group containing Hive, Spark.

As part of this review, following has been implemented:
- SG added as sub-resource of cluster.
- GET, POST and DELETE API for SG.

------------------------------------------------------------------------------------------------------------------------------------

*API calls and response:*

*1.* 
====
POST:
====

API: http://c6404.ambari.apache.org:8080/api/v1/clusters/c1/servicegroups
*Body :*


[
{
  "ServiceGroupInfo" : {
    "cluster_id": "2",
    "service_group_name": "CORE"
  }
},
{
  "ServiceGroupInfo" : {
    "cluster_id": "2",
    "service_group_name": "EDW"
  }
}
]


*Response:* 201 CREATED


{
  "resources" : [
    {
      "href" : 
"http://c6404.ambari.apache.org:8080/api/v1/clusters/c1/servicegroups/CORE";,
      "ServiceGroupInfo" : {
        "cluster_id" : 2,
        "cluster_name" : "c1",
        "service_group_id" : 804,
        "service_group_name" : "CORE"
      }
    },
    {
      "href" : 
"http://c6404.ambari.apache.org:8080/api/v1/clusters/c1/servicegroups/EDW";,
      "ServiceGroupInfo" : {
        "cluster_id" : 2,
        "cluster_name" : "c1",
        "service_group_id" : 803,
        "service_group_name" : "EDW"
      }
    }
  ]
}


*2.*
===
GET :
===

API: http://c6404.ambari.apache.org:8080/api/v1/clusters/c1/servicegroups/

*Body:*

[]


*Response:* 200 OK


{
  "href" : 
"http://c6404.ambari.apache.org:8080/api/v1/clusters/c1/servicegroups/";,
  "items" : [
    {
      "href" : 
"http://c6404.ambari.apache.org:8080/api/v1/clusters/c1/servicegroups/CORE";,
      "ServiceGroupInfo" : {
        "cluster_name" : "c1",
        "service_group_name" : "CORE"
      }
    },
    {
      "href" : 
"http://c6404.ambari.apache.org:8080/api/v1/clusters/c1/servicegroups/EDW";,
      "ServiceGroupInfo" : {
        "cluster_name" : "c1",
        "service_group_name" : "EDW"
      }
    }
  ]
}


API: http://c6404.ambari.apache.org:8080/api/v1/clusters/c1/servicegroups/CORE

*Body:*

[]


*Response:* 200 OK

{
  "href" : 
"http://c6404.ambari.apache.org:8080/api/v1/clusters/c1/servicegroups/CORE";,
  "ServiceGroupInfo" : {
    "cluster_id" : 2,
    "cluster_name" : "c1",
    "service_group_id" : 804,
    "service_group_name" : "CORE"
  }
}


*3.*
=======
DELETE:
=======

API: http://c6404.ambari.apache.org:8080/api/v1/clusters/c1/servicegroups/CORE

*Body:*

[]


*Response:* 200 OK


[]


Diffs
-----

  
ambari-server/src/main/java/org/apache/ambari/server/ServiceGroupNotFoundException.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/api/resources/ClusterResourceDefinition.java
 f689841 
  
ambari-server/src/main/java/org/apache/ambari/server/api/resources/ResourceInstanceFactoryImpl.java
 73963df 
  
ambari-server/src/main/java/org/apache/ambari/server/api/resources/ServiceGroupResourceDefinition.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/api/services/ClusterService.java
 44d50731 
  
ambari-server/src/main/java/org/apache/ambari/server/api/services/ServiceGroupService.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementController.java
 d792717 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
 12e4a08 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/ControllerModule.java
 28c0d10 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/ResourceProviderFactory.java
 3912138 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/ServiceGroupRequest.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/ServiceGroupResponse.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java
 3228a7f 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceGroupResourceProvider.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/spi/Resource.java
 1994501 
  ambari-server/src/main/java/org/apache/ambari/server/events/AmbariEvent.java 
9a5ee79 
  
ambari-server/src/main/java/org/apache/ambari/server/events/ServiceGroupEvent.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/events/ServiceGroupInstalledEvent.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/events/ServiceGroupRemovedEvent.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/orm/dao/ServiceGroupDAO.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/orm/entities/ClusterEntity.java
 c22449c 
  
ambari-server/src/main/java/org/apache/ambari/server/orm/entities/ServiceGroupEntity.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/orm/entities/ServiceGroupEntityPK.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/serveraction/servicegroup/ServiceGroupServerAction.java
 PRE-CREATION 
  ambari-server/src/main/java/org/apache/ambari/server/state/Cluster.java 
9597ba1 
  ambari-server/src/main/java/org/apache/ambari/server/state/ServiceGroup.java 
PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/ServiceGroupFactory.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/ServiceGroupImpl.java
 PRE-CREATION 
  
ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java
 c950d67 
  ambari-server/src/main/resources/Ambari-DDL-Derby-CREATE.sql 0595e07 
  ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql 6275ddc 
  ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql 451eb87 
  ambari-server/src/main/resources/Ambari-DDL-Postgres-CREATE.sql 4c539fa 
  ambari-server/src/main/resources/Ambari-DDL-SQLAnywhere-CREATE.sql 6bf2203 
  ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql 0462dd9 
  ambari-server/src/main/resources/META-INF/persistence.xml 4f0099b 
  ambari-server/src/main/resources/key_properties.json 5d76062 
  ambari-server/src/main/resources/properties.json 11ca7f6 


Diff: https://reviews.apache.org/r/61201/diff/1/


Testing
-------


Thanks,

Swapan Shridhar

Reply via email to