You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by is...@apache.org on 2022/06/22 14:57:37 UTC

[airavata-custos] branch berametal updated: Merge integration services

This is an automated email from the ASF dual-hosted git repository.

isjarana pushed a commit to branch berametal
in repository https://gitbox.apache.org/repos/asf/airavata-custos.git


The following commit(s) were added to refs/heads/berametal by this push:
     new 6d54c9c6 Merge integration services
     new eca3af08 Merge pull request #285 from isururanawaka/berametalWithMerge
6d54c9c6 is described below

commit 6d54c9c6c958ecd87e47199dfa91ed7f2ad27c31
Author: Isuru Ranawaka <ir...@gmail.com>
AuthorDate: Wed Jun 22 10:56:21 2022 -0400

    Merge integration services
---
 .../agent/profile/client/AgentProfileClient.java   |   4 +-
 .../management/client/ClusterManagementClient.java |   4 +-
 .../store/client/CredentialStoreServiceClient.java |   4 +-
 .../custos/logging/client/LoggingClient.java       |   4 +-
 .../client/FederatedAuthenticationClient.java      |   4 +-
 .../iam/admin/client/IamAdminServiceClient.java    |   4 +-
 .../custos/identity/client/IdentityClient.java     |   4 +-
 .../custos/messaging/client/MessagingClient.java   |   4 +-
 .../secret/client/ResourceSecretClient.java        |   4 +-
 .../custos/sharing/client/SharingClient.java       |   4 +-
 .../profile/client/async/TenantProfileClient.java  |   4 +-
 .../user/profile/client/UserProfileClient.java     |   4 +-
 custos-core-services-server/pom.xml                |   2 +-
 .../src/main/dist/conf/application.properties      |   2 +-
 .../dist/custos-core-services-server-assembly.xml  |   2 +-
 .../src/main/resources/application.properties      |   2 +-
 .../sharingManagementService-staging.properties    |   4 +-
 .../tenantManagementService-production.properties  |   2 +-
 custos-integration-services-server/pom.xml         |  15 +--
 .../src/main/dist/conf/application.properties      |  61 +--------
 ...custos-integration-services-server-assembly.xml |   2 +-
 .../services/api/IntegrationServicesServer.java    | 140 +++++++++++++--------
 .../src/main/resources/application.properties      |  58 +--------
 .../agent-management-service/pom.xml               |   8 +-
 .../group-management-service/pom.xml               |   8 +-
 .../identity-management-service/pom.xml            |  24 ++--
 .../log-management-service/pom.xml                 |  24 ++--
 .../resource-secret-management-service/pom.xml     |  24 ++--
 .../sharing-management-service/pom.xml             |  24 ++--
 .../tenant-management-service/pom.xml              |  24 ++--
 .../user-management-service/pom.xml                |  24 ++--
 custos-rest-proxy/Dockerfile                       |   3 +
 custos-rest-proxy/src/main/resources/README.MD     |  23 ++++
 custos-rest-proxy/src/main/resources/custos.pb     | Bin 0 -> 287662 bytes
 custos-rest-proxy/src/main/resources/envoy.yaml    |  58 +++++++++
 custos-rest-proxy/src/main/resources/generator.txt |   1 +
 36 files changed, 299 insertions(+), 284 deletions(-)

diff --git a/custos-core-services-client-stubs/agent-profile-core-service-client-stub/src/main/java/org/apache/custos/agent/profile/client/AgentProfileClient.java b/custos-core-services-client-stubs/agent-profile-core-service-client-stub/src/main/java/org/apache/custos/agent/profile/client/AgentProfileClient.java
index 0beb47c4..119dfc65 100644
--- a/custos-core-services-client-stubs/agent-profile-core-service-client-stub/src/main/java/org/apache/custos/agent/profile/client/AgentProfileClient.java
+++ b/custos-core-services-client-stubs/agent-profile-core-service-client-stub/src/main/java/org/apache/custos/agent/profile/client/AgentProfileClient.java
@@ -46,8 +46,8 @@ public class AgentProfileClient {
 
 
     public AgentProfileClient(List<ClientInterceptor> clientInterceptorList,
-                              @Value("${agent.profile.core.service.dns.name}") String serviceHost,
-                              @Value("${agent.profile.core.service.port}") int servicePort) {
+                              @Value("${core.services.server.hostname}") String serviceHost,
+                              @Value("${core.services.server.port}") int servicePort) {
         this.clientInterceptorList = clientInterceptorList;
         managedChannel = ManagedChannelBuilder.forAddress(
                 serviceHost, servicePort).usePlaintext(true).intercept(clientInterceptorList).build();
diff --git a/custos-core-services-client-stubs/cluster-management-core-service-client-stub/src/main/java/org/apache/custos/cluster/management/client/ClusterManagementClient.java b/custos-core-services-client-stubs/cluster-management-core-service-client-stub/src/main/java/org/apache/custos/cluster/management/client/ClusterManagementClient.java
index 1b772bb2..7a7e0dbf 100644
--- a/custos-core-services-client-stubs/cluster-management-core-service-client-stub/src/main/java/org/apache/custos/cluster/management/client/ClusterManagementClient.java
+++ b/custos-core-services-client-stubs/cluster-management-core-service-client-stub/src/main/java/org/apache/custos/cluster/management/client/ClusterManagementClient.java
@@ -41,8 +41,8 @@ public class ClusterManagementClient {
 
 
     public ClusterManagementClient(List<ClientInterceptor> clientInterceptorList,
-                                   @Value("${cluster.management.core.service.dns.name}") String serviceHost,
-                                   @Value("${cluster.management.core.service.port}") int servicePort) {
+                                   @Value("${core.services.server.hostname}") String serviceHost,
+                                   @Value("${core.services.server.port}") int servicePort) {
         this.clientInterceptorList = clientInterceptorList;
         managedChannel = ManagedChannelBuilder.forAddress(
                 serviceHost, servicePort).usePlaintext(true).intercept(clientInterceptorList).build();
diff --git a/custos-core-services-client-stubs/credential-store-core-service-client-stubs/src/main/java/org/apache/custos/credential/store/client/CredentialStoreServiceClient.java b/custos-core-services-client-stubs/credential-store-core-service-client-stubs/src/main/java/org/apache/custos/credential/store/client/CredentialStoreServiceClient.java
index 0ef71bfc..6b183ecf 100644
--- a/custos-core-services-client-stubs/credential-store-core-service-client-stubs/src/main/java/org/apache/custos/credential/store/client/CredentialStoreServiceClient.java
+++ b/custos-core-services-client-stubs/credential-store-core-service-client-stubs/src/main/java/org/apache/custos/credential/store/client/CredentialStoreServiceClient.java
@@ -45,8 +45,8 @@ public class CredentialStoreServiceClient {
 
 
     public CredentialStoreServiceClient(List<ClientInterceptor> clientInterceptorList,
-                                        @Value("${credential.store.service.dns.name}") String serviceHost,
-                                        @Value("${credential.store.service.port}") int servicePort) {
+                                        @Value("${core.services.server.hostname}") String serviceHost,
+                                        @Value("${core.services.server.port}") int servicePort) {
         this.clientInterceptorList = clientInterceptorList;
         managedChannel = ManagedChannelBuilder.forAddress(
                 serviceHost, servicePort).usePlaintext(true).intercept(clientInterceptorList).build();
diff --git a/custos-core-services-client-stubs/custos-logging-client-stub/src/main/java/org/apache/custos/logging/client/LoggingClient.java b/custos-core-services-client-stubs/custos-logging-client-stub/src/main/java/org/apache/custos/logging/client/LoggingClient.java
index 233f40b8..1975f59c 100644
--- a/custos-core-services-client-stubs/custos-logging-client-stub/src/main/java/org/apache/custos/logging/client/LoggingClient.java
+++ b/custos-core-services-client-stubs/custos-logging-client-stub/src/main/java/org/apache/custos/logging/client/LoggingClient.java
@@ -47,8 +47,8 @@ public class LoggingClient {
 
 
     public LoggingClient(List<ClientInterceptor> clientInterceptorList,
-                         @Value("${custos.logging.core.service.dns.name}") String serviceHost,
-                         @Value("${custos.logging.core.service.port}") int servicePort) {
+                         @Value("${core.services.server.hostname}") String serviceHost,
+                         @Value("${core.services.server.port}") int servicePort) {
         this.clientInterceptorList = clientInterceptorList;
         managedChannel = ManagedChannelBuilder.forAddress(
                 serviceHost, servicePort).usePlaintext(true).intercept(clientInterceptorList).build();
diff --git a/custos-core-services-client-stubs/federated-authentication-core-service-client-stub/src/main/java/org/apache/custos/federated/authentication/client/FederatedAuthenticationClient.java b/custos-core-services-client-stubs/federated-authentication-core-service-client-stub/src/main/java/org/apache/custos/federated/authentication/client/FederatedAuthenticationClient.java
index e0962d21..a7d7f786 100644
--- a/custos-core-services-client-stubs/federated-authentication-core-service-client-stub/src/main/java/org/apache/custos/federated/authentication/client/FederatedAuthenticationClient.java
+++ b/custos-core-services-client-stubs/federated-authentication-core-service-client-stub/src/main/java/org/apache/custos/federated/authentication/client/FederatedAuthenticationClient.java
@@ -44,8 +44,8 @@ public class FederatedAuthenticationClient {
 
 
     public FederatedAuthenticationClient(List<ClientInterceptor> clientInterceptorList,
-                                         @Value("${federated.authentication.service.dns.name}") String serviceHost,
-                                         @Value("${federated.authentication.service.port}") int servicePort) {
+                                         @Value("${core.services.server.hostname}") String serviceHost,
+                                         @Value("${core.services.server.port}") int servicePort) {
         this.clientInterceptorList = clientInterceptorList;
         managedChannel = ManagedChannelBuilder.forAddress(
                 serviceHost, servicePort).usePlaintext(true).intercept(clientInterceptorList).build();
diff --git a/custos-core-services-client-stubs/iam-admin-core-service-client-stub/src/main/java/org/apache/custos/iam/admin/client/IamAdminServiceClient.java b/custos-core-services-client-stubs/iam-admin-core-service-client-stub/src/main/java/org/apache/custos/iam/admin/client/IamAdminServiceClient.java
index 361e002c..cdbea586 100644
--- a/custos-core-services-client-stubs/iam-admin-core-service-client-stub/src/main/java/org/apache/custos/iam/admin/client/IamAdminServiceClient.java
+++ b/custos-core-services-client-stubs/iam-admin-core-service-client-stub/src/main/java/org/apache/custos/iam/admin/client/IamAdminServiceClient.java
@@ -47,8 +47,8 @@ public class IamAdminServiceClient {
 
 
     public IamAdminServiceClient(List<ClientInterceptor> clientInterceptorList,
-                                 @Value("${iam.admin.service.dns.name}") String serviceHost,
-                                 @Value("${iam.admin.service.port}") int servicePort,
+                                 @Value("${core.services.server.hostname}") String serviceHost,
+                                 @Value("${core.services.server.port}") int servicePort,
                                  @Value("${iam.server.url}") String url) {
         this.clientInterceptorList = clientInterceptorList;
         managedChannel = ManagedChannelBuilder.forAddress(
diff --git a/custos-core-services-client-stubs/identity-core-service-client-stub/src/main/java/org/apache/custos/identity/client/IdentityClient.java b/custos-core-services-client-stubs/identity-core-service-client-stub/src/main/java/org/apache/custos/identity/client/IdentityClient.java
index 02593247..51e7b90d 100644
--- a/custos-core-services-client-stubs/identity-core-service-client-stub/src/main/java/org/apache/custos/identity/client/IdentityClient.java
+++ b/custos-core-services-client-stubs/identity-core-service-client-stub/src/main/java/org/apache/custos/identity/client/IdentityClient.java
@@ -45,8 +45,8 @@ public class IdentityClient {
 
 
     public IdentityClient(List<ClientInterceptor> clientInterceptorList,
-                          @Value("${identity.service.dns.name}") String serviceHost,
-                          @Value("${identity.service.port}") int servicePort) {
+                          @Value("${core.services.server.hostname}") String serviceHost,
+                          @Value("${core.services.server.port}") int servicePort) {
         this.clientInterceptorList = clientInterceptorList;
         managedChannel = ManagedChannelBuilder.forAddress(
                 serviceHost, servicePort).usePlaintext(true).intercept(clientInterceptorList).build();
diff --git a/custos-core-services-client-stubs/messaging-core-service-client-stub/src/main/java/org/apache/custos/messaging/client/MessagingClient.java b/custos-core-services-client-stubs/messaging-core-service-client-stub/src/main/java/org/apache/custos/messaging/client/MessagingClient.java
index 95515d63..003aa6c1 100644
--- a/custos-core-services-client-stubs/messaging-core-service-client-stub/src/main/java/org/apache/custos/messaging/client/MessagingClient.java
+++ b/custos-core-services-client-stubs/messaging-core-service-client-stub/src/main/java/org/apache/custos/messaging/client/MessagingClient.java
@@ -46,8 +46,8 @@ public class MessagingClient {
 
 
     public MessagingClient(List<ClientInterceptor> clientInterceptorList,
-                           @Value("${messaging.core.service.dns.name}") String serviceHost,
-                           @Value("${messaging.core.service.port}") int servicePort) {
+                           @Value("${core.services.server.hostname}") String serviceHost,
+                           @Value("${core.services.server.port}") int servicePort) {
         this.clientInterceptorList = clientInterceptorList;
         managedChannel = ManagedChannelBuilder.forAddress(
                 serviceHost, servicePort).usePlaintext(true).intercept(clientInterceptorList).build();
diff --git a/custos-core-services-client-stubs/resource-secret-core-service-client-stub/src/main/java/org/apache/custos/resource/secret/client/ResourceSecretClient.java b/custos-core-services-client-stubs/resource-secret-core-service-client-stub/src/main/java/org/apache/custos/resource/secret/client/ResourceSecretClient.java
index 584ab1b4..c2e4e34e 100644
--- a/custos-core-services-client-stubs/resource-secret-core-service-client-stub/src/main/java/org/apache/custos/resource/secret/client/ResourceSecretClient.java
+++ b/custos-core-services-client-stubs/resource-secret-core-service-client-stub/src/main/java/org/apache/custos/resource/secret/client/ResourceSecretClient.java
@@ -37,8 +37,8 @@ public class ResourceSecretClient {
     private final List<ClientInterceptor> clientInterceptorList;
 
     public ResourceSecretClient(List<ClientInterceptor> clientInterceptorList,
-                                @Value("${resource.secret.service.dns.name}") String serviceHost,
-                                @Value("${resource.secret.service.port}") int servicePort) {
+                                @Value("${core.services.server.hostname}") String serviceHost,
+                                @Value("${core.services.server.port}") int servicePort) {
         this.clientInterceptorList = clientInterceptorList;
         managedChannel = ManagedChannelBuilder.forAddress(
                 serviceHost, servicePort).usePlaintext(true).intercept(clientInterceptorList).build();
diff --git a/custos-core-services-client-stubs/sharing-core-service-client-stub/src/main/java/org/apache/custos/sharing/client/SharingClient.java b/custos-core-services-client-stubs/sharing-core-service-client-stub/src/main/java/org/apache/custos/sharing/client/SharingClient.java
index 5d1b084b..5be38fe7 100644
--- a/custos-core-services-client-stubs/sharing-core-service-client-stub/src/main/java/org/apache/custos/sharing/client/SharingClient.java
+++ b/custos-core-services-client-stubs/sharing-core-service-client-stub/src/main/java/org/apache/custos/sharing/client/SharingClient.java
@@ -42,8 +42,8 @@ public class SharingClient {
 
 
     public SharingClient(List<ClientInterceptor> clientInterceptorList,
-                         @Value("${sharing.core.service.dns.name}") String serviceHost,
-                         @Value("${sharing.core.service.port}") int servicePort) {
+                         @Value("${core.services.server.hostname}") String serviceHost,
+                         @Value("${core.services.server.port}") int servicePort) {
         this.clientInterceptorList = clientInterceptorList;
         managedChannel = ManagedChannelBuilder.forAddress(
                 serviceHost, servicePort).usePlaintext(true).intercept(clientInterceptorList).build();
diff --git a/custos-core-services-client-stubs/tenant-profile-core-service-client-stub/src/main/java/org/apache/custos/tenant/profile/client/async/TenantProfileClient.java b/custos-core-services-client-stubs/tenant-profile-core-service-client-stub/src/main/java/org/apache/custos/tenant/profile/client/async/TenantProfileClient.java
index 6b059af2..e37d8beb 100644
--- a/custos-core-services-client-stubs/tenant-profile-core-service-client-stub/src/main/java/org/apache/custos/tenant/profile/client/async/TenantProfileClient.java
+++ b/custos-core-services-client-stubs/tenant-profile-core-service-client-stub/src/main/java/org/apache/custos/tenant/profile/client/async/TenantProfileClient.java
@@ -47,8 +47,8 @@ public class TenantProfileClient {
 
 
     public TenantProfileClient(List<ClientInterceptor> clientInterceptorList,
-                               @Value("${tenant.profile.core.service.dns.name}") String serviceHost,
-                               @Value("${tenant.profile.core.service.port}") int servicePort) {
+                               @Value("${core.services.server.hostname}") String serviceHost,
+                               @Value("${core.services.server.port}") int servicePort) {
         this.clientInterceptorList = clientInterceptorList;
         managedChannel = ManagedChannelBuilder.forAddress(
                 serviceHost, servicePort).usePlaintext(true).intercept(clientInterceptorList).build();
diff --git a/custos-core-services-client-stubs/user-profile-core-service-client-stub/src/main/java/org/apache/custos/user/profile/client/UserProfileClient.java b/custos-core-services-client-stubs/user-profile-core-service-client-stub/src/main/java/org/apache/custos/user/profile/client/UserProfileClient.java
index 775a658b..b3d53daf 100644
--- a/custos-core-services-client-stubs/user-profile-core-service-client-stub/src/main/java/org/apache/custos/user/profile/client/UserProfileClient.java
+++ b/custos-core-services-client-stubs/user-profile-core-service-client-stub/src/main/java/org/apache/custos/user/profile/client/UserProfileClient.java
@@ -46,8 +46,8 @@ public class UserProfileClient {
 
 
     public UserProfileClient(List<ClientInterceptor> clientInterceptorList,
-                             @Value("${user.profile.core.service.dns.name}") String serviceHost,
-                             @Value("${user.profile.core.service.port}") int servicePort) {
+                             @Value("${core.services.server.hostname}") String serviceHost,
+                             @Value("${core.services.server.port}") int servicePort) {
         this.clientInterceptorList = clientInterceptorList;
         managedChannel = ManagedChannelBuilder.forAddress(
                 serviceHost, servicePort).usePlaintext(true).intercept(clientInterceptorList).build();
diff --git a/custos-core-services-server/pom.xml b/custos-core-services-server/pom.xml
index 560cfcbf..d8c35be1 100644
--- a/custos-core-services-server/pom.xml
+++ b/custos-core-services-server/pom.xml
@@ -191,7 +191,7 @@
                         </goals>
                         <configuration>
                             <tarLongFileMode>posix</tarLongFileMode>
-                            <finalName>${artifactId}-${project.version}</finalName>
+                            <finalName>Custos-Core-Services-Server-${project.version}</finalName>
                             <descriptors>
                                 <descriptor>src/main/dist/${artifactId}-assembly.xml</descriptor>
                             </descriptors>
diff --git a/custos-core-services-server/src/main/dist/conf/application.properties b/custos-core-services-server/src/main/dist/conf/application.properties
index 169677ab..ae805047 100644
--- a/custos-core-services-server/src/main/dist/conf/application.properties
+++ b/custos-core-services-server/src/main/dist/conf/application.properties
@@ -28,7 +28,7 @@ management.endpoints.web.exposure.include=*
 management.endpoint.metrics.enabled=true
 spring.jmx.enabled=true
 
-spring.datasource.url = jdbc:mysql://@mysql.host@:3306/core_agent_profile?useSSL=false&serverTimezone=UTC&useLegacyDatetimeCode=false&createDatabaseIfNotExist=true
+spring.datasource.url = jdbc:mysql://@mysql.host@:3306/core-services-db?useSSL=false&serverTimezone=UTC&useLegacyDatetimeCode=false&createDatabaseIfNotExist=true
 spring.datasource.username = @spring.datasource.username@
 spring.datasource.password = @spring.datasource.password@
 
diff --git a/custos-core-services-server/src/main/dist/custos-core-services-server-assembly.xml b/custos-core-services-server/src/main/dist/custos-core-services-server-assembly.xml
index 28eff2c4..a6048b1e 100644
--- a/custos-core-services-server/src/main/dist/custos-core-services-server-assembly.xml
+++ b/custos-core-services-server/src/main/dist/custos-core-services-server-assembly.xml
@@ -34,7 +34,7 @@
 
     <id>bin</id>
     <includeBaseDirectory>true</includeBaseDirectory>
-    <baseDirectory>${artifactId}-${project.version}</baseDirectory>
+    <baseDirectory>Custos-Core-Services-Server-${project.version}</baseDirectory>
     <formats>
         <format>tar.gz</format>
         <format>zip</format>
diff --git a/custos-core-services-server/src/main/resources/application.properties b/custos-core-services-server/src/main/resources/application.properties
index f76f0e12..c0467e7b 100644
--- a/custos-core-services-server/src/main/resources/application.properties
+++ b/custos-core-services-server/src/main/resources/application.properties
@@ -28,7 +28,7 @@ management.endpoints.web.exposure.include=*
 management.endpoint.metrics.enabled=true
 spring.jmx.enabled=true
 
-spring.datasource.url = jdbc:mysql://@mysql.host@:3306/core_agent_profile?useSSL=false&serverTimezone=UTC&useLegacyDatetimeCode=false&createDatabaseIfNotExist=true
+spring.datasource.url = jdbc:mysql://@mysql.host@:3306/core-services-db?useSSL=false&serverTimezone=UTC&useLegacyDatetimeCode=false&createDatabaseIfNotExist=true
 spring.datasource.username = @spring.datasource.username@
 spring.datasource.password = @spring.datasource.password@
 
diff --git a/custos-core-services/utility-services/custos-configuration-service/src/main/resources/sharingManagementService-staging.properties b/custos-core-services/utility-services/custos-configuration-service/src/main/resources/sharingManagementService-staging.properties
index d25415f3..76a5bce1 100644
--- a/custos-core-services/utility-services/custos-configuration-service/src/main/resources/sharingManagementService-staging.properties
+++ b/custos-core-services/utility-services/custos-configuration-service/src/main/resources/sharingManagementService-staging.properties
@@ -17,7 +17,7 @@
 #  under the License.
 #
 
-tenant.profile.core.service.dns.name=tenant-profile-core-service.custos.svc.cluster.local
+tenant.profilecore.service.host=tenant-profile-core-service.custos.svc.cluster.local
 tenant.profile.core.service.port=7000
 iam.admin.service.dns.name=iam-admin-core-service.custos.svc.cluster.local
 iam.admin.service.port=7000
@@ -27,7 +27,7 @@ federated.authentication.service.dns.name=federeted-authentication-core-service.
 federated.authentication.service.port=7000
 identity.service.dns.name=identity-core-service.custos.svc.cluster.local
 identity.service.port=7000
-user.profile.core.service.dns.name=user-profile-core-service.custos.svc.cluster.local
+user.profilecore.service.host=user-profile-core-service.custos.svc.cluster.local
 user.profile.core.service.port=7000
 iam.server.url=https://keycloak.staging.usecustos.org:30170/auth/
 sharing.core.service.dns.name=sharing-core-service.custos.svc.cluster.local
diff --git a/custos-core-services/utility-services/custos-configuration-service/src/main/resources/tenantManagementService-production.properties b/custos-core-services/utility-services/custos-configuration-service/src/main/resources/tenantManagementService-production.properties
index 1300b951..d9c7d52a 100644
--- a/custos-core-services/utility-services/custos-configuration-service/src/main/resources/tenantManagementService-production.properties
+++ b/custos-core-services/utility-services/custos-configuration-service/src/main/resources/tenantManagementService-production.properties
@@ -1,4 +1,4 @@
-tenant.profile.core.service.dns.name=tenant-profile-core-service.custos.svc.cluster.local
+tenant.profilecore.service.host=tenant-profile-core-service.custos.svc.cluster.local
 tenant.profile.core.service.port=7000
 iam.admin.service.dns.name=iam-admin-core-service.custos.svc.cluster.local
 iam.admin.service.port=7000
diff --git a/custos-integration-services-server/pom.xml b/custos-integration-services-server/pom.xml
index 44aa6a32..b1df3e27 100644
--- a/custos-integration-services-server/pom.xml
+++ b/custos-integration-services-server/pom.xml
@@ -65,19 +65,6 @@
             <artifactId>grpc-netty</artifactId>
         </dependency>
 
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-data-jpa</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>mysql</groupId>
-            <artifactId>mysql-connector-java</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>javax.persistence</groupId>
-            <artifactId>persistence-api</artifactId>
-        </dependency>
-
         <dependency>
             <groupId>org.apache.custos</groupId>
             <artifactId>agent-management-service</artifactId>
@@ -168,7 +155,7 @@
                         </goals>
                         <configuration>
                             <tarLongFileMode>posix</tarLongFileMode>
-                            <finalName>${artifactId}-${project.version}</finalName>
+                            <finalName>Custos-Integration-Services-Server-${project.version}</finalName>
                             <descriptors>
                                 <descriptor>src/main/dist/${artifactId}-assembly.xml</descriptor>
                             </descriptors>
diff --git a/custos-integration-services-server/src/main/dist/conf/application.properties b/custos-integration-services-server/src/main/dist/conf/application.properties
index dc5672c0..05e8fc2e 100644
--- a/custos-integration-services-server/src/main/dist/conf/application.properties
+++ b/custos-integration-services-server/src/main/dist/conf/application.properties
@@ -20,7 +20,7 @@
 grpc.port=7000
 server.port=8080
 ##spring.zipkin.baseUrl=http://149.165.169.49:9411/
-spring.application.name=custos-core-services-server
+spring.application.name=custos-integrations-services-server
 ##spring.sleuth.sampler.probability=1
 spring.main.allow-bean-definition-overriding=true
 management.security.enabled=false
@@ -28,61 +28,10 @@ management.endpoints.web.exposure.include=*
 management.endpoint.metrics.enabled=true
 spring.jmx.enabled=true
 
-
-
-
-## Hibernate Properties
-# The SQL dialect makes Hibernate generate better SQL for the chosen database
-spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5InnoDBDialect
-spring.jpa.properties.hibernate.enable_lazy_load_no_trans=true
-# Hibernate ddl auto (create, create-drop, validate, update)
-spring.jpa.hibernate.ddl-auto = update
-spring.profiles.active=@spring.profiles.active@
+spring.profiles.active=dev
 logging.level.root=INFO
 
-
-ciLogon.admin.client.id=${cilogon.production.id}
-ciLogon.admin.client.secret=${cilogon.production.sec}
-ciLogon.admin.auth.endpoint=https://test.cilogon.org/oauth2/oidc-cm
-
-
-iam.server.client.id=admin-cli
-iam.server.truststore.path=/home/ubuntu/keystore/keycloak-client-truststore.pkcs12
-iam.server.truststore.password=keycloak
+core.services.server.port=7000
+core.services.server.hostname=localhost
 iam.server.url=https://keycloak.custos.scigap.org:31000/auth/
-iam.server.admin.username=${iam.dev.username}
-iam.server.admin.password=${iam.dev.password}
-iam.server.super.admin.realm.id=master
-iam.federated.cilogon.authorization.endpoint=https://cilogon.org/authorize
-iam.federated.cilogon.token.endpoint=https://cilogon.org/oauth2/token
-iam.federated.cilogon.token.userinfo.endpoint=https://cilogon.org/oauth2/userinfo
-iam.federated.cilogon.issuer=https://cilogon.org
-iam.federated.cilogon.jwksUri=https://cilogon.org/oauth2/certs
-introspection.endpoint=https://custos.scigap.org:32036/identity-management/v1.0.0/token/introspect
-issuer=https://custos.scigap.org/
-authorization.endpoint=https://custos.scigap.org/apiserver/identity-management/v1.0.0/authorize
-token.endpoint=https://custos.scigap.org/apiserver/identity-management/v1.0.0/token
-end.session.endpoint=https://custos.scigap.org/apiserver/identity-management/v1.0.0/logout
-user.info.endpoint=https://custos.scigap.org/apiserver/user-management/v1.0.0/userinfo
-jwks_uri=https://custos.scigap.org/apiserver/identity-management/v1.0.0/certs
-registration.endpoint=https://custos.scigap.org/apiserver/tenant-management/v1.0.0/oauth2/tenant
-cluster.management.core.service.dns.name=cluster-management-core-service.keycloak.svc.cluster.local
-cluster.management.core.service.port=7000
-
-
-custos.identity.auth.cache.enabled=true
-custos.identity.auth.cache.size=1024
-
-
-
-core.messaging.service.broker.url=custos07.sciencegateways.iu.edu:9092
-core.messaging.service.publisher.id=custosEventPublisher
-mail.smtp.auth=true
-mail.smtp.starttls.enable=true
-mail.smtp.host=smtp.gmail.com
-mail.smtp.port=587
-mail.smtp.ssl.trust=smtp.gmail.com
-mail.sender.username=custosemailagent@gmail.com
-mail.sender.password=${custos.email.password}
-user.profile.core.service.dns.name=user-profile-core-service.custos.svc.cluster.local
-user.profile.core.service.port=7000
+tenant.base.uri=https://service.staging.usecustos.org/apiserver/tenant-management/v1.0.0/oauth2/tenant
diff --git a/custos-integration-services-server/src/main/dist/custos-integration-services-server-assembly.xml b/custos-integration-services-server/src/main/dist/custos-integration-services-server-assembly.xml
index 28eff2c4..2bc7c1d7 100644
--- a/custos-integration-services-server/src/main/dist/custos-integration-services-server-assembly.xml
+++ b/custos-integration-services-server/src/main/dist/custos-integration-services-server-assembly.xml
@@ -34,7 +34,7 @@
 
     <id>bin</id>
     <includeBaseDirectory>true</includeBaseDirectory>
-    <baseDirectory>${artifactId}-${project.version}</baseDirectory>
+    <baseDirectory>Custos-Integration-Services-Server-${project.version}</baseDirectory>
     <formats>
         <format>tar.gz</format>
         <format>zip</format>
diff --git a/custos-integration-services-server/src/main/java/org/apache/custos/integration/services/api/IntegrationServicesServer.java b/custos-integration-services-server/src/main/java/org/apache/custos/integration/services/api/IntegrationServicesServer.java
index ebda5d6b..597239fe 100644
--- a/custos-integration-services-server/src/main/java/org/apache/custos/integration/services/api/IntegrationServicesServer.java
+++ b/custos-integration-services-server/src/main/java/org/apache/custos/integration/services/api/IntegrationServicesServer.java
@@ -19,66 +19,108 @@
 
 package org.apache.custos.integration.services.api;
 
+import io.grpc.ServerInterceptor;
+import org.apache.custos.agent.management.interceptors.AgentManagementClientAuthInterceptorImpl;
+import org.apache.custos.agent.management.interceptors.AgentManagementInputValidator;
+import org.apache.custos.agent.management.interceptors.AgentManagementSuperTenantRestrictedOperationsInterceptorImpl;
+import org.apache.custos.agent.management.interceptors.AgentManagementUserAuthInterceptorImpl;
+import org.apache.custos.group.management.interceptors.GroupManagementClientAuthInterceptorImpl;
+import org.apache.custos.group.management.interceptors.GroupManagementInputValidator;
+import org.apache.custos.identity.management.interceptors.IdentityManagementAgentAuthInterceptor;
+import org.apache.custos.identity.management.interceptors.IdentityManagementAuthInterceptorImpl;
+import org.apache.custos.identity.management.interceptors.IdentityManagementInputValidator;
+import org.apache.custos.integration.core.interceptor.IntegrationServiceInterceptor;
+import org.apache.custos.integration.core.interceptor.ServiceInterceptor;
+import org.apache.custos.integration.services.commons.interceptors.LoggingInterceptor;
+import org.apache.custos.log.management.interceptors.LogManagementAuthInterceptorImpl;
+import org.apache.custos.log.management.interceptors.LogManagementInputValidator;
+import org.apache.custos.resource.secret.management.interceptors.ResourceSecretManagementAuthInterceptorImpl;
+import org.apache.custos.resource.secret.management.interceptors.ResourceSecretManagementInputValidator;
+import org.apache.custos.sharing.management.interceptors.SharingManagementAuthInterceptorImpl;
+import org.apache.custos.sharing.management.interceptors.SharingManagementInputValidator;
+import org.apache.custos.tenant.management.interceptors.TenantManagementAuthInterceptorImpl;
+import org.apache.custos.tenant.management.interceptors.TenantManagementDynamicRegistrationValidator;
+import org.apache.custos.tenant.management.interceptors.TenantManagementInputValidator;
+import org.apache.custos.tenant.management.interceptors.TenantManagementSuperTenantRestrictedOperationsInterceptorImpl;
+import org.apache.custos.user.management.interceptors.UserManagementAuthInterceptorImpl;
+import org.apache.custos.user.management.interceptors.UserManagementInputValidator;
+import org.apache.custos.user.management.interceptors.UserManagementSuperTenantRestrictedOperationsInterceptorImpl;
+import org.lognet.springboot.grpc.GRpcGlobalInterceptor;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.autoconfigure.domain.EntityScan;
+import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.ComponentScan;
-import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
-import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
+
+import java.util.Stack;
 
 
 @SpringBootApplication
-@EnableJpaAuditing
-@EnableJpaRepositories(basePackages = "org.apache.custos")
 @ComponentScan(basePackages = "org.apache.custos")
-@EntityScan(basePackages = "org.apache.custos")
 public class IntegrationServicesServer {
     public static void main(String[] args) {
         SpringApplication.run(IntegrationServicesServer.class, args);
     }
 
 
-//
-//    @Bean
-//    public Stack<Validator> getInterceptorSet(AgentInputValidator inputValidator,
-//                                                       ClusterManagementInputValidator clusterManagementInputValidator,
-//                                                       CredentialStoreInputValidator credentialStoreInputValidator,
-//                                                       CustosLoggingInputValidator custosLoggingInputValidator,
-//                                                       FederatedAuthenticationInputValidator federatedAuthenticationInputValidator,
-//                                                       IAMInputValidator iamInputValidator,
-//                                                       IdentityInputValidator identityInputValidator,
-//                                                       ResourceSecretInputValidator resourceSecretInputValidator,
-//                                                       SharingInputValidator sharingInputValidator,
-//                                                       TenantProfileInputValidator tenantProfileInputValidator,
-//                                                       UserProfileInputValidator userProfileInputValidator) {
-//        Stack<Validator> interceptors = new Stack<>();
-//        interceptors.add(inputValidator);
-//        interceptors.add(clusterManagementInputValidator);
-//        interceptors.add(credentialStoreInputValidator);
-//        interceptors.add(custosLoggingInputValidator);
-//        interceptors.add(federatedAuthenticationInputValidator);
-//        interceptors.add(iamInputValidator);
-//        interceptors.add(identityInputValidator);
-//        interceptors.add(resourceSecretInputValidator);
-//        interceptors.add(sharingInputValidator);
-//        interceptors.add(tenantProfileInputValidator);
-//        interceptors.add(userProfileInputValidator);
-//
-//        return interceptors;
-//    }
-//
-//
-//
-//
-//    @Bean
-//    @GRpcGlobalInterceptor
-//    ServerInterceptor validationInterceptor(Stack<Validator> validators){
-//        return new ServiceInterceptor(validators);
-//    }
-//
-//    @Bean
-//    public MessageProducer registerMessageProducer(@Value("${core.messaging.service.broker.url}") String borkerURL,
-//                                                   @Value("${core.messaging.service.publisher.id}") String publisherId) {
-//        return new MessageProducer(borkerURL, publisherId);
-//    }
+
+    @Bean
+    public Stack<IntegrationServiceInterceptor> getInterceptorSet(AgentManagementClientAuthInterceptorImpl agentManagementClientAuthInterceptor,
+                                                                  AgentManagementInputValidator agentManagementInputValidator,
+                                                                  AgentManagementSuperTenantRestrictedOperationsInterceptorImpl agentManagementSuperTenantRestrictedOperationsInterceptor,
+                                                                  AgentManagementUserAuthInterceptorImpl agentManagementUserAuthInterceptor,
+                                                                  GroupManagementClientAuthInterceptorImpl groupManagementClientAuthInterceptor,
+                                                                  GroupManagementInputValidator groupManagementInputValidator,
+                                                                  IdentityManagementAgentAuthInterceptor identityManagementAgentAuthInterceptor,
+                                                                  IdentityManagementAuthInterceptorImpl identityManagementAuthInterceptor,
+                                                                  IdentityManagementInputValidator identityManagementInputValidator,
+                                                                  LogManagementInputValidator logManagementInputValidator,
+                                                                  LogManagementAuthInterceptorImpl logManagementAuthInterceptor,
+                                                                  ResourceSecretManagementAuthInterceptorImpl resourceSecretManagementAuthInterceptor,
+                                                                  ResourceSecretManagementInputValidator resourceSecretManagementInputValidator,
+                                                                  SharingManagementAuthInterceptorImpl sharingManagementAuthInterceptor,
+                                                                  SharingManagementInputValidator sharingManagementInputValidator,
+                                                                  TenantManagementAuthInterceptorImpl tenantManagementAuthInterceptor,
+                                                                  TenantManagementDynamicRegistrationValidator tenantManagementDynamicRegistrationValidator,
+                                                                  TenantManagementInputValidator tenantManagementInputValidator,
+                                                                  TenantManagementSuperTenantRestrictedOperationsInterceptorImpl tenantManagementSuperTenantRestrictedOperationsInterceptor,
+                                                                  UserManagementAuthInterceptorImpl userManagementAuthInterceptor,
+                                                                  UserManagementInputValidator userManagementInputValidator,
+                                                                  UserManagementSuperTenantRestrictedOperationsInterceptorImpl userManagementSuperTenantRestrictedOperationsInterceptor,
+                                                                  LoggingInterceptor loggingInterceptor) {
+        Stack<IntegrationServiceInterceptor> interceptors = new Stack<>();
+        interceptors.add(agentManagementClientAuthInterceptor);
+        interceptors.add(agentManagementInputValidator);
+        interceptors.add(agentManagementSuperTenantRestrictedOperationsInterceptor);
+        interceptors.add(agentManagementUserAuthInterceptor);
+        interceptors.add(groupManagementClientAuthInterceptor);
+        interceptors.add(groupManagementInputValidator);
+        interceptors.add(identityManagementAgentAuthInterceptor);
+        interceptors.add(identityManagementAuthInterceptor);
+        interceptors.add(logManagementInputValidator);
+        interceptors.add(logManagementAuthInterceptor);
+        interceptors.add(identityManagementInputValidator);
+        interceptors.add(resourceSecretManagementAuthInterceptor);
+        interceptors.add(resourceSecretManagementInputValidator);
+        interceptors.add(sharingManagementAuthInterceptor);
+        interceptors.add(sharingManagementInputValidator);
+        interceptors.add(tenantManagementAuthInterceptor);
+        interceptors.add(tenantManagementDynamicRegistrationValidator);
+        interceptors.add(tenantManagementInputValidator);
+        interceptors.add(tenantManagementSuperTenantRestrictedOperationsInterceptor);
+        interceptors.add(userManagementAuthInterceptor);
+        interceptors.add(userManagementInputValidator);
+        interceptors.add(userManagementSuperTenantRestrictedOperationsInterceptor);
+        interceptors.add(loggingInterceptor);
+
+
+        return interceptors;
+    }
+
+    @Bean
+    @GRpcGlobalInterceptor
+    ServerInterceptor validationInterceptor(Stack<IntegrationServiceInterceptor> integrationServiceInterceptors) {
+        return new ServiceInterceptor(integrationServiceInterceptors);
+    }
+
+
 }
diff --git a/custos-integration-services-server/src/main/resources/application.properties b/custos-integration-services-server/src/main/resources/application.properties
index 5b8cb5a3..ecaa7468 100644
--- a/custos-integration-services-server/src/main/resources/application.properties
+++ b/custos-integration-services-server/src/main/resources/application.properties
@@ -20,7 +20,7 @@
 grpc.port=7000
 server.port=8080
 ##spring.zipkin.baseUrl=http://149.165.169.49:9411/
-spring.application.name=agentProfileCoreService
+spring.application.name=custos-integrations-services-server
 ##spring.sleuth.sampler.probability=1
 spring.main.allow-bean-definition-overriding=true
 management.security.enabled=false
@@ -28,59 +28,11 @@ management.endpoints.web.exposure.include=*
 management.endpoint.metrics.enabled=true
 spring.jmx.enabled=true
 
-
-## Hibernate Properties
-# The SQL dialect makes Hibernate generate better SQL for the chosen database
-spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5InnoDBDialect
-spring.jpa.properties.hibernate.enable_lazy_load_no_trans=true
-# Hibernate ddl auto (create, create-drop, validate, update)
-spring.jpa.hibernate.ddl-auto = update
-spring.profiles.active=@spring.profiles.active@
+spring.profiles.active=dev
 logging.level.root=INFO
 
-
-ciLogon.admin.client.id=${cilogon.production.id}
-ciLogon.admin.client.secret=${cilogon.production.sec}
-ciLogon.admin.auth.endpoint=https://test.cilogon.org/oauth2/oidc-cm
-
-
-iam.server.client.id=admin-cli
-iam.server.truststore.path=/home/ubuntu/keystore/keycloak-client-truststore.pkcs12
-iam.server.truststore.password=keycloak
+core.services.server.port=7000
+core.services.server.hostname=localhost
 iam.server.url=https://keycloak.custos.scigap.org:31000/auth/
-iam.server.admin.username=${iam.dev.username}
-iam.server.admin.password=${iam.dev.password}
-iam.server.super.admin.realm.id=master
-iam.federated.cilogon.authorization.endpoint=https://cilogon.org/authorize
-iam.federated.cilogon.token.endpoint=https://cilogon.org/oauth2/token
-iam.federated.cilogon.token.userinfo.endpoint=https://cilogon.org/oauth2/userinfo
-iam.federated.cilogon.issuer=https://cilogon.org
-iam.federated.cilogon.jwksUri=https://cilogon.org/oauth2/certs
-introspection.endpoint=https://custos.scigap.org:32036/identity-management/v1.0.0/token/introspect
-issuer=https://custos.scigap.org/
-authorization.endpoint=https://custos.scigap.org/apiserver/identity-management/v1.0.0/authorize
-token.endpoint=https://custos.scigap.org/apiserver/identity-management/v1.0.0/token
-end.session.endpoint=https://custos.scigap.org/apiserver/identity-management/v1.0.0/logout
-user.info.endpoint=https://custos.scigap.org/apiserver/user-management/v1.0.0/userinfo
-jwks_uri=https://custos.scigap.org/apiserver/identity-management/v1.0.0/certs
-registration.endpoint=https://custos.scigap.org/apiserver/tenant-management/v1.0.0/oauth2/tenant
-cluster.management.core.service.dns.name=cluster-management-core-service.keycloak.svc.cluster.local
-cluster.management.core.service.port=7000
-
-
-custos.identity.auth.cache.enabled=true
-custos.identity.auth.cache.size=1024
-
-
+tenant.base.uri=https://service.staging.usecustos.org/apiserver/tenant-management/v1.0.0/oauth2/tenant
 
-core.messaging.service.broker.url=custos07.sciencegateways.iu.edu:9092
-core.messaging.service.publisher.id=custosEventPublisher
-mail.smtp.auth=true
-mail.smtp.starttls.enable=true
-mail.smtp.host=smtp.gmail.com
-mail.smtp.port=587
-mail.smtp.ssl.trust=smtp.gmail.com
-mail.sender.username=custosemailagent@gmail.com
-mail.sender.password=${custos.email.password}
-user.profile.core.service.dns.name=user-profile-core-service.custos.svc.cluster.local
-user.profile.core.service.port=7000
diff --git a/custos-integration-services/agent-management-service-parent/agent-management-service/pom.xml b/custos-integration-services/agent-management-service-parent/agent-management-service/pom.xml
index 41bead62..931cddcf 100644
--- a/custos-integration-services/agent-management-service-parent/agent-management-service/pom.xml
+++ b/custos-integration-services/agent-management-service-parent/agent-management-service/pom.xml
@@ -79,10 +79,10 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-starter-config</artifactId>
-        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-config</artifactId>-->
+<!--        </dependency>-->
         <dependency>
             <groupId>org.springframework.cloud</groupId>
             <artifactId>spring-cloud-starter-sleuth</artifactId>
diff --git a/custos-integration-services/group-management-service-parent/group-management-service/pom.xml b/custos-integration-services/group-management-service-parent/group-management-service/pom.xml
index f65f1a35..f3976f01 100644
--- a/custos-integration-services/group-management-service-parent/group-management-service/pom.xml
+++ b/custos-integration-services/group-management-service-parent/group-management-service/pom.xml
@@ -75,10 +75,10 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-starter-config</artifactId>
-        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-config</artifactId>-->
+<!--        </dependency>-->
         <dependency>
             <groupId>org.springframework.cloud</groupId>
             <artifactId>spring-cloud-starter-sleuth</artifactId>
diff --git a/custos-integration-services/identity-management-service-parent/identity-management-service/pom.xml b/custos-integration-services/identity-management-service-parent/identity-management-service/pom.xml
index c887cc95..02fd5f0d 100644
--- a/custos-integration-services/identity-management-service-parent/identity-management-service/pom.xml
+++ b/custos-integration-services/identity-management-service-parent/identity-management-service/pom.xml
@@ -67,18 +67,18 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-starter-config</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-starter-sleuth</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-sleuth-zipkin</artifactId>
-        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-config</artifactId>-->
+<!--        </dependency>-->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-sleuth</artifactId>-->
+<!--        </dependency>-->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-sleuth-zipkin</artifactId>-->
+<!--        </dependency>-->
         <dependency>
             <groupId>io.zipkin.brave</groupId>
             <artifactId>brave-instrumentation-grpc</artifactId>
diff --git a/custos-integration-services/log-management-service-parent/log-management-service/pom.xml b/custos-integration-services/log-management-service-parent/log-management-service/pom.xml
index a5991512..c0585420 100644
--- a/custos-integration-services/log-management-service-parent/log-management-service/pom.xml
+++ b/custos-integration-services/log-management-service-parent/log-management-service/pom.xml
@@ -95,18 +95,18 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-starter-config</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-starter-sleuth</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-sleuth-zipkin</artifactId>
-        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-config</artifactId>-->
+<!--        </dependency>-->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-sleuth</artifactId>-->
+<!--        </dependency>-->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-sleuth-zipkin</artifactId>-->
+<!--        </dependency>-->
         <dependency>
             <groupId>io.zipkin.brave</groupId>
             <artifactId>brave-instrumentation-grpc</artifactId>
diff --git a/custos-integration-services/resource-secret-management-service-parent/resource-secret-management-service/pom.xml b/custos-integration-services/resource-secret-management-service-parent/resource-secret-management-service/pom.xml
index 5e48fc29..28dde53f 100644
--- a/custos-integration-services/resource-secret-management-service-parent/resource-secret-management-service/pom.xml
+++ b/custos-integration-services/resource-secret-management-service-parent/resource-secret-management-service/pom.xml
@@ -90,18 +90,18 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-starter-config</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-starter-sleuth</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-sleuth-zipkin</artifactId>
-        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-config</artifactId>-->
+<!--        </dependency>-->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-sleuth</artifactId>-->
+<!--        </dependency>-->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-sleuth-zipkin</artifactId>-->
+<!--        </dependency>-->
         <dependency>
             <groupId>io.zipkin.brave</groupId>
             <artifactId>brave-instrumentation-grpc</artifactId>
diff --git a/custos-integration-services/sharing-management-service-parent/sharing-management-service/pom.xml b/custos-integration-services/sharing-management-service-parent/sharing-management-service/pom.xml
index e6f455df..3c3d8360 100644
--- a/custos-integration-services/sharing-management-service-parent/sharing-management-service/pom.xml
+++ b/custos-integration-services/sharing-management-service-parent/sharing-management-service/pom.xml
@@ -84,18 +84,18 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-starter-config</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-starter-sleuth</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-sleuth-zipkin</artifactId>
-        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-config</artifactId>-->
+<!--        </dependency>-->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-sleuth</artifactId>-->
+<!--        </dependency>-->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-sleuth-zipkin</artifactId>-->
+<!--        </dependency>-->
         <dependency>
             <groupId>io.zipkin.brave</groupId>
             <artifactId>brave-instrumentation-grpc</artifactId>
diff --git a/custos-integration-services/tenant-management-service-parent/tenant-management-service/pom.xml b/custos-integration-services/tenant-management-service-parent/tenant-management-service/pom.xml
index 20279aa4..b92afc34 100644
--- a/custos-integration-services/tenant-management-service-parent/tenant-management-service/pom.xml
+++ b/custos-integration-services/tenant-management-service-parent/tenant-management-service/pom.xml
@@ -92,18 +92,18 @@
               <groupId>org.springframework.boot</groupId>
               <artifactId>spring-boot-starter-actuator</artifactId>
           </dependency>
-          <dependency>
-              <groupId>org.springframework.cloud</groupId>
-              <artifactId>spring-cloud-starter-config</artifactId>
-          </dependency>
-          <dependency>
-              <groupId>org.springframework.cloud</groupId>
-              <artifactId>spring-cloud-starter-sleuth</artifactId>
-          </dependency>
-          <dependency>
-              <groupId>org.springframework.cloud</groupId>
-              <artifactId>spring-cloud-sleuth-zipkin</artifactId>
-          </dependency>
+<!--          <dependency>-->
+<!--              <groupId>org.springframework.cloud</groupId>-->
+<!--              <artifactId>spring-cloud-starter-config</artifactId>-->
+<!--          </dependency>-->
+<!--          <dependency>-->
+<!--              <groupId>org.springframework.cloud</groupId>-->
+<!--              <artifactId>spring-cloud-starter-sleuth</artifactId>-->
+<!--          </dependency>-->
+<!--          <dependency>-->
+<!--              <groupId>org.springframework.cloud</groupId>-->
+<!--              <artifactId>spring-cloud-sleuth-zipkin</artifactId>-->
+<!--          </dependency>-->
           <dependency>
               <groupId>io.zipkin.brave</groupId>
               <artifactId>brave-instrumentation-grpc</artifactId>
diff --git a/custos-integration-services/user-management-service-parent/user-management-service/pom.xml b/custos-integration-services/user-management-service-parent/user-management-service/pom.xml
index 6c1f1147..c00723ae 100644
--- a/custos-integration-services/user-management-service-parent/user-management-service/pom.xml
+++ b/custos-integration-services/user-management-service-parent/user-management-service/pom.xml
@@ -74,18 +74,18 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-starter-config</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-starter-sleuth</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework.cloud</groupId>
-            <artifactId>spring-cloud-sleuth-zipkin</artifactId>
-        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-config</artifactId>-->
+<!--        </dependency>-->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-starter-sleuth</artifactId>-->
+<!--        </dependency>-->
+<!--        <dependency>-->
+<!--            <groupId>org.springframework.cloud</groupId>-->
+<!--            <artifactId>spring-cloud-sleuth-zipkin</artifactId>-->
+<!--        </dependency>-->
         <dependency>
             <groupId>io.zipkin.brave</groupId>
             <artifactId>brave-instrumentation-grpc</artifactId>
diff --git a/custos-rest-proxy/Dockerfile b/custos-rest-proxy/Dockerfile
new file mode 100644
index 00000000..fe01bd17
--- /dev/null
+++ b/custos-rest-proxy/Dockerfile
@@ -0,0 +1,3 @@
+FROM envoyproxy/envoy:v1.14.1
+COPY src/main/resources/custos.pb /data/custos.pb
+COPY src/main/resources/envoy.yaml  /etc/envoy/envoy.yaml
\ No newline at end of file
diff --git a/custos-rest-proxy/src/main/resources/README.MD b/custos-rest-proxy/src/main/resources/README.MD
new file mode 100644
index 00000000..8f32c96b
--- /dev/null
+++ b/custos-rest-proxy/src/main/resources/README.MD
@@ -0,0 +1,23 @@
+#Build .pb file
+1. Install protoc plugin 
+    
+    resource : https://grpc.io/docs/languages/go/quickstart/
+             : https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/grpc_json_transcoder_filter
+2. Download   GOOGLE_APIS package
+   
+2. Generate  .pb file
+   
+     protoc -I<PATH_TO_GOOGLE_API>/googleapis  -I/airavata-data-lake/data-resource-management-service/drms-stubs/src/main/proto -I/airavata-data-lake/data-orchestrator/data-orchestrator-service/data-orchestrator-api-stub/src/main/proto  --include_imports --include_source_info     --descriptor_set_out=drms.pb  /airavata-data-lake/data-resource-management-service/drms-stubs/src/main/proto/preference/StoragePreferenceService.proto   /airavata-data-lake/data-resource-management-service/drms- [...]
+
+3. copy .pb file into datalake-rest-proxy/src/main/resources
+
+#  Run DRMS envoy proxy locally
+
+
+
+1. Build docker image 
+ `docker build -t drms-rest-proxy .`
+   
+2. Run docker image 
+   `docker run --rm -it       -p 10000:50000        drms-rest-proxy:latest      -c /etc/envoy/envoy.yaml `
+    
\ No newline at end of file
diff --git a/custos-rest-proxy/src/main/resources/custos.pb b/custos-rest-proxy/src/main/resources/custos.pb
new file mode 100644
index 00000000..b4d17c2f
Binary files /dev/null and b/custos-rest-proxy/src/main/resources/custos.pb differ
diff --git a/custos-rest-proxy/src/main/resources/envoy.yaml b/custos-rest-proxy/src/main/resources/envoy.yaml
new file mode 100644
index 00000000..5747de95
--- /dev/null
+++ b/custos-rest-proxy/src/main/resources/envoy.yaml
@@ -0,0 +1,58 @@
+admin:
+  access_log_path: /tmp/admin_access.log
+  address:
+    socket_address: { address: 0.0.0.0, port_value: 9901 }
+
+static_resources:
+  listeners:
+    - name: main-listener
+      address:
+        socket_address: { address: 0.0.0.0, port_value: 50000 }
+      filter_chains:
+        - filters:
+            - name: envoy.http_connection_manager
+              config:
+                stat_prefix: grpc_json
+                codec_type: AUTO
+                route_config:
+                  name: local_route
+                  virtual_hosts:
+                    - name: local_service
+                      domains: ["*"]
+                      routes:
+                        - match: { prefix: "/" }
+                          route: { cluster: grpc-custos-service, timeout: { seconds: 60 } }
+                access_log:
+                  - name: envoy.file_access_log
+                    config:
+                      path: "/dev/stdout"
+                http_filters:
+                  - name: envoy.grpc_json_transcoder
+                    config:
+                      proto_descriptor: "/data/drms.pb"
+                      services: ["org.apache.custos.agent.management.service.AgentManagementService",
+                                 "org.apache.custos.group.management.service.GroupManagementService",
+                                 "org.apache.custos.identity.management.service.IdentityManagementService",
+                                 "org.apache.custos.log.management.service.LogManagementService",
+                                 "org.apache.custos.resource.secret.management.service.ResourceSecretManagementService",
+                                 "org.apache.custos.sharing.management.service.SharingManagementService",
+                                 "org.apache.custos.tenant.management.service.TenantManagementService",
+                                 "org.apache.custos.user.management.service.UserManagementService"]
+                      convert_grpc_status: true
+                      print_options:
+                        add_whitespace: true
+                        always_print_primitive_fields: true
+                        always_print_enums_as_ints: false
+                        preserve_proto_field_names: false
+                  - name: envoy.router
+  clusters:
+    - name: grpc-custos-service
+      connect_timeout: 1.25s
+      type: logical_dns
+      lb_policy: round_robin
+      dns_lookup_family: V4_ONLY
+      http2_protocol_options: {}
+      hosts:
+        - socket_address:
+            address: host.docker.internal
+            port_value: 7070
diff --git a/custos-rest-proxy/src/main/resources/generator.txt b/custos-rest-proxy/src/main/resources/generator.txt
new file mode 100644
index 00000000..6e4121b2
--- /dev/null
+++ b/custos-rest-proxy/src/main/resources/generator.txt
@@ -0,0 +1 @@
+protoc -I/Users/isururanawaka/Documents/GOOGLE_APIS/googleapis  -I/Users/isururanawaka/Documents/Airavata_Repository/airavata-custos/custos-integration-services/agent-management-service-parent/agent-management-service/src/main/proto -I/Users/isururanawaka/Documents/Airavata_Repository/airavata-custos/custos-integration-services/group-management-service-parent/group-management-service/src/main/proto -I/Users/isururanawaka/Documents/Airavata_Repository/airavata-custos/custos-integration-se [...]
\ No newline at end of file