You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dlab.apache.org by bh...@apache.org on 2019/08/08 08:54:47 UTC

[incubator-dlab] branch dlab_refactored updated: DLAB-000 added possibility to populate cloud properties from ss config

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

bhliva pushed a commit to branch dlab_refactored
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git


The following commit(s) were added to refs/heads/dlab_refactored by this push:
     new cfc2fa2  DLAB-000 added possibility to populate cloud properties from ss config
cfc2fa2 is described below

commit cfc2fa2efb2adf2d5c231fcc3bf14e2f7f1a8f77
Author: bhliva <bo...@epam.com>
AuthorDate: Thu Aug 8 11:54:26 2019 +0300

    DLAB-000 added possibility to populate cloud properties from ss config
---
 services/self-service/self-service.yml             | 15 ++++++++
 .../dlab/backendapi/SelfServiceApplication.java    |  1 +
 .../dlab/backendapi/conf/CloudConfiguration.java   | 20 +++++++++++
 .../SelfServiceApplicationConfiguration.java       |  9 ++++-
 .../java/com/epam/dlab/backendapi/dao/EnvDAO.java  |  2 +-
 .../com/epam/dlab/backendapi/dao/SettingsDAO.java  | 40 +++++++++++++++++++++
 .../dlab/backendapi/domain/EnvStatusListener.java  |  2 +-
 .../backendapi/listeners/MongoStartupListener.java | 42 ++++++++++++++++++----
 .../backendapi/modules/AwsSelfServiceModule.java   |  2 +-
 .../backendapi/modules/AzureSelfServiceModule.java |  2 +-
 .../epam/dlab/backendapi/modules/DevModule.java    |  2 +-
 .../backendapi/modules/GcpSelfServiceModule.java   |  6 +---
 .../dlab/backendapi/modules/ModuleFactory.java     |  2 +-
 .../dlab/backendapi/modules/ProductionModule.java  |  2 +-
 .../backendapi/resources/KeycloakResource.java     |  2 +-
 .../backendapi/resources/SecurityResource.java     |  4 +--
 .../resources/aws/ComputationalResourceAws.java    |  2 +-
 .../azure/ComputationalResourceAzure.java          |  2 +-
 .../resources/gcp/ComputationalResourceGcp.java    |  2 +-
 .../schedulers/internal/ManagedScheduler.java      |  2 +-
 .../backendapi/service/KeycloakServiceImpl.java    |  2 +-
 .../aws/AwsInfrastructureTemplateService.java      |  2 +-
 .../gcp/GcpInfrastructureTemplateService.java      |  2 +-
 .../service/impl/AccessKeyServiceImpl.java         |  2 +-
 .../service/impl/GuacamoleServiceImpl.java         |  2 +-
 .../impl/InfrastructureInfoServiceBase.java        |  2 +-
 .../impl/InfrastructureTemplateServiceBase.java    |  2 +-
 .../epam/dlab/backendapi/util/RequestBuilder.java  |  2 +-
 ...fServiceCloudConfigurationSequenceProvider.java |  2 +-
 .../aws/AwsInfrastructureTemplateServiceTest.java  |  2 +-
 .../gcp/GcpInfrastructureTemplateServiceTest.java  |  2 +-
 .../service/impl/AccessKeyServiceImplTest.java     |  2 +-
 .../service/impl/ComputationalServiceImplTest.java |  2 +-
 .../dlab/backendapi/util/RequestBuilderTest.java   |  2 +-
 34 files changed, 147 insertions(+), 42 deletions(-)

diff --git a/services/self-service/self-service.yml b/services/self-service/self-service.yml
index 1da59b3..5a6cb10 100644
--- a/services/self-service/self-service.yml
+++ b/services/self-service/self-service.yml
@@ -194,3 +194,18 @@ jerseyClient:
   gzipEnabledForRequests: false
   chunkedEncodingEnabled: true
 
+cloudProperties:
+  os: debian
+  serviceBaseName: dev
+  edgeInstanceSize: t2.medium
+  subnetId: subnet-22db937a
+  region: us-west-2
+  confTagResourceId: user:tag
+  securityGroupIds: sg-4d42dc35,sg-f19a0389,sg-71e27b09,sg-d3e67fab
+  ssnInstanceSize: t2.large
+  notebookVpcId: vpc-83c469e4
+  notebookSubnetId: subnet-22db937a
+  confKeyDir: /root/keys/
+  vpcId: vpc-83c469e4
+
+
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/SelfServiceApplication.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/SelfServiceApplication.java
index 3284e04..78ae616 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/SelfServiceApplication.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/SelfServiceApplication.java
@@ -21,6 +21,7 @@ package com.epam.dlab.backendapi;
 
 import com.epam.dlab.auth.UserInfo;
 import com.epam.dlab.backendapi.auth.SelfServiceSecurityAuthorizer;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.dao.IndexCreator;
 import com.epam.dlab.backendapi.domain.EnvStatusListener;
 import com.epam.dlab.backendapi.domain.ExploratoryLibCache;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/conf/CloudConfiguration.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/conf/CloudConfiguration.java
new file mode 100644
index 0000000..045590b
--- /dev/null
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/conf/CloudConfiguration.java
@@ -0,0 +1,20 @@
+package com.epam.dlab.backendapi.conf;
+
+import lombok.Data;
+
+@Data
+public class CloudConfiguration {
+
+	private final String os;
+	private final String serviceBaseName;
+	private final String edgeInstanceSize;
+	private final String subnetId;
+	private final String region;
+	private final String confTagResourceId;
+	private final String securityGroupIds;
+	private final String ssnInstanceSize;
+	private final String notebookVpcId;
+	private final String notebookSubnetId;
+	private final String confKeyDir;
+	private final String vpcId;
+}
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/SelfServiceApplicationConfiguration.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/conf/SelfServiceApplicationConfiguration.java
similarity index 97%
rename from services/self-service/src/main/java/com/epam/dlab/backendapi/SelfServiceApplicationConfiguration.java
rename to services/self-service/src/main/java/com/epam/dlab/backendapi/conf/SelfServiceApplicationConfiguration.java
index 7a53b8a..9d070c8 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/SelfServiceApplicationConfiguration.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/conf/SelfServiceApplicationConfiguration.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package com.epam.dlab.backendapi;
+package com.epam.dlab.backendapi.conf;
 
 import com.epam.dlab.ServiceConfiguration;
 import com.epam.dlab.backendapi.domain.SchedulerConfigurationData;
@@ -129,6 +129,9 @@ public class SelfServiceApplicationConfiguration extends ServiceConfiguration {
 	@NotNull
 	private Map<String, String> guacamole;
 
+	@JsonProperty("cloudProperties")
+	private CloudConfiguration cloudConfiguration;
+
 	private KeycloakConfiguration keycloakConfiguration = new KeycloakConfiguration();
 
 	public Map<String, String> getGuacamole() {
@@ -258,6 +261,10 @@ public class SelfServiceApplicationConfiguration extends ServiceConfiguration {
 		return mongoMigrationEnabled;
 	}
 
+	public CloudConfiguration getCloudConfiguration() {
+		return cloudConfiguration;
+	}
+
 	@NotNull
 	public RESTServiceFactory getMavenApiFactory() {
 		return mavenApiFactory;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/EnvDAO.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/EnvDAO.java
index b2c6c2b..1e3cca9 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/EnvDAO.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/EnvDAO.java
@@ -21,7 +21,7 @@ package com.epam.dlab.backendapi.dao;
 
 import com.epam.dlab.auth.UserInfo;
 import com.epam.dlab.backendapi.SelfServiceApplication;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.domain.EnvStatusListener;
 import com.epam.dlab.backendapi.resources.aws.ComputationalResourceAws;
 import com.epam.dlab.backendapi.resources.dto.HealthStatusEnum;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/SettingsDAO.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/SettingsDAO.java
index 16af300..56de6e4 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/SettingsDAO.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/SettingsDAO.java
@@ -45,6 +45,10 @@ public class SettingsDAO extends BaseDAO {
 		return getSetting(SERIVICE_BASE_NAME);
 	}
 
+	public void setServiceBaseName(String sbn) {
+		setSetting(SERIVICE_BASE_NAME, sbn);
+	}
+
 	/**
 	 * Returns the name of OS family.
 	 */
@@ -52,6 +56,10 @@ public class SettingsDAO extends BaseDAO {
 		return getSetting(CONF_OS_FAMILY);
 	}
 
+	public void setConfOsFamily(String osFamily) {
+		setSetting(CONF_OS_FAMILY, osFamily);
+	}
+
 	/**
 	 * Returns the name of directory for user key.
 	 */
@@ -59,6 +67,10 @@ public class SettingsDAO extends BaseDAO {
 		return getSetting(CONF_KEY_DIRECTORY);
 	}
 
+	public void setConfKeyDir(String confKeyDir) {
+		setSetting(CONF_KEY_DIRECTORY, confKeyDir);
+	}
+
 	/**
 	 * Returns the name of tag for resource id.
 	 */
@@ -66,6 +78,10 @@ public class SettingsDAO extends BaseDAO {
 		return getSetting(CONF_TAG_RESOURCE_ID);
 	}
 
+	public void setConfTagResourceId(String confTagResourceId) {
+		setSetting(CONF_TAG_RESOURCE_ID, confTagResourceId);
+	}
+
 	public Optional<Integer> getMaxBudget() {
 		return getOptionalSetting(CONF_MAX_BUDGET)
 				.map(Integer::valueOf);
@@ -79,6 +95,10 @@ public class SettingsDAO extends BaseDAO {
 		return getSetting(AWS_REGION);
 	}
 
+	public void setAwsRegion(String awsRegion) {
+		setSetting(AWS_REGION, awsRegion);
+	}
+
 	/**
 	 * Returns the id of security group.
 	 */
@@ -86,6 +106,10 @@ public class SettingsDAO extends BaseDAO {
 		return getSetting(AWS_SECURITY_GROUPS);
 	}
 
+	public void setAwsSecurityGroups(String awsSecurityGroups) {
+		setSetting(AWS_SECURITY_GROUPS, awsSecurityGroups);
+	}
+
 	/**
 	 * Returns the id of virtual private cloud for AWS account.
 	 */
@@ -93,9 +117,17 @@ public class SettingsDAO extends BaseDAO {
 		return getSetting(AWS_VPC_ID);
 	}
 
+	public void setAwsVpcId(String awsVpcId) {
+		setSetting(AWS_VPC_ID, awsVpcId);
+	}
+
 	/**
 	 * Returns the id of virtual private cloud subnet for AWS account.
 	 */
+	public void setAwsSubnetId(String awsSubnetId) {
+		setSetting(AWS_SUBNET_ID, awsSubnetId);
+	}
+
 	public String getAwsSubnetId() {
 		return getSetting(AWS_SUBNET_ID);
 	}
@@ -104,10 +136,18 @@ public class SettingsDAO extends BaseDAO {
 		return getSetting(AWS_NOTEBOOK_VPC_ID);
 	}
 
+	public void setAwsNotebookVpcId(String awsNotebookVpcId) {
+		setSetting(AWS_NOTEBOOK_VPC_ID, awsNotebookVpcId);
+	}
+
 	public String getAwsNotebookSubnetId() {
 		return getSetting(AWS_NOTEBOOK_SUBNET_ID);
 	}
 
+	public void setAwsNotebookSubnetId(String awsNotebookSubnetId) {
+		setSetting(AWS_NOTEBOOK_SUBNET_ID, awsNotebookSubnetId);
+	}
+
 	public String getAzureRegion() {
 		return getSetting(AZURE_REGION);
 	}
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/domain/EnvStatusListener.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/domain/EnvStatusListener.java
index a1dae09..2064fb5 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/domain/EnvStatusListener.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/domain/EnvStatusListener.java
@@ -21,7 +21,7 @@
 package com.epam.dlab.backendapi.domain;
 
 import com.epam.dlab.auth.UserInfo;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.dao.EnvDAO;
 import com.epam.dlab.backendapi.util.RequestBuilder;
 import com.epam.dlab.constants.ServiceConsts;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/listeners/MongoStartupListener.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/listeners/MongoStartupListener.java
index e6825e9..38d0ae6 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/listeners/MongoStartupListener.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/listeners/MongoStartupListener.java
@@ -1,8 +1,11 @@
 package com.epam.dlab.backendapi.listeners;
 
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.CloudConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.dao.SettingsDAO;
 import com.epam.dlab.backendapi.dao.UserRoleDao;
 import com.epam.dlab.backendapi.resources.dto.UserRoleDto;
+import com.epam.dlab.cloud.CloudProvider;
 import com.fasterxml.jackson.core.type.TypeReference;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.inject.Inject;
@@ -11,6 +14,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.eclipse.jetty.server.Server;
 
 import java.io.IOException;
+import java.io.InputStream;
 import java.util.List;
 
 import static java.lang.String.format;
@@ -22,27 +26,51 @@ public class MongoStartupListener implements ServerLifecycleListener {
 	private static final String ROLES_FILE_FORMAT = "/mongo/%s/mongo_roles.json";
 	private static final ObjectMapper MAPPER = new ObjectMapper();
 	private final UserRoleDao userRoleDao;
+	private final SettingsDAO settingsDAO;
 	private final SelfServiceApplicationConfiguration configuration;
 
 	@Inject
-	public MongoStartupListener(UserRoleDao userRoleDao, SelfServiceApplicationConfiguration configuration) {
+	public MongoStartupListener(UserRoleDao userRoleDao, SettingsDAO settingsDAO,
+								SelfServiceApplicationConfiguration configuration) {
 		this.userRoleDao = userRoleDao;
+		this.settingsDAO = settingsDAO;
 		this.configuration = configuration;
 	}
 
 	@Override
 	public void serverStarted(Server server) {
+		insertRoles();
+		insertCloudSettings();
+	}
+
+	private void insertCloudSettings() {
+		log.debug("Populating DLab cloud properties into database");
+		final CloudConfiguration cloudConfiguration = configuration.getCloudConfiguration();
+		settingsDAO.setServiceBaseName(cloudConfiguration.getServiceBaseName());
+		settingsDAO.setConfKeyDir(cloudConfiguration.getConfKeyDir());
+		settingsDAO.setConfOsFamily(cloudConfiguration.getOs());
+		settingsDAO.setConfTagResourceId(cloudConfiguration.getConfTagResourceId());
+		if (configuration.getCloudProvider() == CloudProvider.AWS) {
+			settingsDAO.setAwsRegion(cloudConfiguration.getRegion());
+			settingsDAO.setAwsVpcId(cloudConfiguration.getVpcId());
+			settingsDAO.setAwsSubnetId(cloudConfiguration.getSubnetId());
+			settingsDAO.setAwsNotebookVpcId(cloudConfiguration.getNotebookVpcId());
+			settingsDAO.setAwsNotebookSubnetId(cloudConfiguration.getNotebookSubnetId());
+			settingsDAO.setAwsSecurityGroups(cloudConfiguration.getSecurityGroupIds());
+		}
+	}
+
+	private void insertRoles() {
 		log.debug("Populating DLab roles into database");
 		userRoleDao.removeAll();
 		userRoleDao.insert(getRoles());
 	}
 
 	private List<UserRoleDto> getRoles() {
-		try {
-			return MAPPER.readValue(getClass().getResourceAsStream(format(ROLES_FILE_FORMAT,
-					configuration.getCloudProvider().getName())),
-					new TypeReference<List<UserRoleDto>>() {
-					});
+		try (InputStream is = getClass().getResourceAsStream(format(ROLES_FILE_FORMAT,
+				configuration.getCloudProvider().getName()))) {
+			return MAPPER.readValue(is, new TypeReference<List<UserRoleDto>>() {
+			});
 		} catch (IOException e) {
 			log.error("Can not marshall dlab roles due to: {}", e.getMessage());
 			throw new IllegalStateException("Can not marshall dlab roles due to: " + e.getMessage());
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/AwsSelfServiceModule.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/AwsSelfServiceModule.java
index ea43416..f4db277 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/AwsSelfServiceModule.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/AwsSelfServiceModule.java
@@ -20,7 +20,7 @@
 package com.epam.dlab.backendapi.modules;
 
 import com.epam.dlab.backendapi.SelfServiceApplication;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.annotation.BudgetLimited;
 import com.epam.dlab.backendapi.dao.BillingDAO;
 import com.epam.dlab.backendapi.dao.KeyDAO;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/AzureSelfServiceModule.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/AzureSelfServiceModule.java
index a091e2c..f1b62e1 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/AzureSelfServiceModule.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/AzureSelfServiceModule.java
@@ -20,7 +20,7 @@
 package com.epam.dlab.backendapi.modules;
 
 import com.epam.dlab.backendapi.SelfServiceApplication;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.annotation.BudgetLimited;
 import com.epam.dlab.backendapi.dao.BillingDAO;
 import com.epam.dlab.backendapi.dao.KeyDAO;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/DevModule.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/DevModule.java
index cd1aabf..c6eebb9 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/DevModule.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/DevModule.java
@@ -23,7 +23,7 @@ import com.epam.dlab.ModuleBase;
 import com.epam.dlab.auth.UserInfo;
 import com.epam.dlab.auth.contract.SecurityAPI;
 import com.epam.dlab.auth.dto.UserCredentialDTO;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.auth.SelfServiceSecurityAuthorizer;
 import com.epam.dlab.backendapi.dao.*;
 import com.epam.dlab.backendapi.service.*;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/GcpSelfServiceModule.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/GcpSelfServiceModule.java
index 49b7c3d..770d811 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/GcpSelfServiceModule.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/GcpSelfServiceModule.java
@@ -20,15 +20,11 @@
 package com.epam.dlab.backendapi.modules;
 
 import com.epam.dlab.backendapi.SelfServiceApplication;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.dao.BillingDAO;
 import com.epam.dlab.backendapi.dao.KeyDAO;
 import com.epam.dlab.backendapi.dao.gcp.GcpBillingDao;
 import com.epam.dlab.backendapi.dao.gcp.GcpKeyDao;
-import com.epam.dlab.backendapi.resources.callback.gcp.EdgeCallbackGcp;
-import com.epam.dlab.backendapi.resources.callback.gcp.KeyUploaderCallbackGcp;
-import com.epam.dlab.backendapi.resources.gcp.ComputationalResourceGcp;
-import com.epam.dlab.backendapi.resources.gcp.GcpOauthResource;
 import com.epam.dlab.backendapi.service.InfrastructureInfoService;
 import com.epam.dlab.backendapi.service.InfrastructureTemplateService;
 import com.epam.dlab.backendapi.service.gcp.GcpInfrastructureInfoService;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/ModuleFactory.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/ModuleFactory.java
index 1722de6..06ac774 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/ModuleFactory.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/ModuleFactory.java
@@ -19,7 +19,7 @@
 
 package com.epam.dlab.backendapi.modules;
 
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.cloud.CloudModule;
 import com.google.inject.AbstractModule;
 import io.dropwizard.setup.Environment;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/ProductionModule.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/ProductionModule.java
index 44a2a2f..f66487a 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/ProductionModule.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/modules/ProductionModule.java
@@ -20,7 +20,7 @@
 package com.epam.dlab.backendapi.modules;
 
 import com.epam.dlab.ModuleBase;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.auth.SelfServiceSecurityAuthorizer;
 import com.epam.dlab.backendapi.dao.*;
 import com.epam.dlab.backendapi.service.*;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/KeycloakResource.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/KeycloakResource.java
index 70b2465..c1802bd 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/KeycloakResource.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/KeycloakResource.java
@@ -1,7 +1,7 @@
 package com.epam.dlab.backendapi.resources;
 
 import com.epam.dlab.auth.UserInfo;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.service.SecurityService;
 import com.google.inject.Inject;
 import io.dropwizard.auth.Auth;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/SecurityResource.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/SecurityResource.java
index 1396fbd..95ea9eb 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/SecurityResource.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/SecurityResource.java
@@ -22,18 +22,16 @@ package com.epam.dlab.backendapi.resources;
 import com.epam.dlab.auth.UserInfo;
 import com.epam.dlab.auth.contract.SecurityAPI;
 import com.epam.dlab.auth.dto.UserCredentialDTO;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.dao.SecurityDAO;
 import com.epam.dlab.backendapi.domain.EnvStatusListener;
 import com.epam.dlab.backendapi.resources.swagger.SwaggerSecurityInfo;
 import com.epam.dlab.backendapi.roles.UserRoles;
-import com.epam.dlab.constants.ServiceConsts;
 import com.epam.dlab.exceptions.DlabException;
 import com.epam.dlab.rest.client.RESTService;
 import com.epam.dlab.rest.dto.ErrorDTO;
 import com.epam.dlab.validation.AwsValidation;
 import com.google.inject.Inject;
-import com.google.inject.name.Named;
 import io.dropwizard.auth.Auth;
 import io.swagger.annotations.*;
 import lombok.extern.slf4j.Slf4j;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/aws/ComputationalResourceAws.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/aws/ComputationalResourceAws.java
index a4487c8..98c0fff 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/aws/ComputationalResourceAws.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/aws/ComputationalResourceAws.java
@@ -21,7 +21,7 @@
 package com.epam.dlab.backendapi.resources.aws;
 
 import com.epam.dlab.auth.UserInfo;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.resources.dto.SparkStandaloneClusterCreateForm;
 import com.epam.dlab.backendapi.resources.dto.aws.AwsComputationalCreateForm;
 import com.epam.dlab.backendapi.resources.swagger.SwaggerSecurityInfo;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/azure/ComputationalResourceAzure.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/azure/ComputationalResourceAzure.java
index e5b4b34..5bb3fdc 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/azure/ComputationalResourceAzure.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/azure/ComputationalResourceAzure.java
@@ -21,7 +21,7 @@ package com.epam.dlab.backendapi.resources.azure;
 
 import com.epam.dlab.auth.UserInfo;
 import com.epam.dlab.auth.rest.UserSessionDurationAuthorizer;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.dao.ComputationalDAO;
 import com.epam.dlab.backendapi.dao.ExploratoryDAO;
 import com.epam.dlab.backendapi.resources.dto.SparkStandaloneClusterCreateForm;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/gcp/ComputationalResourceGcp.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/gcp/ComputationalResourceGcp.java
index 8e3f141..ae2c444 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/gcp/ComputationalResourceGcp.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/gcp/ComputationalResourceGcp.java
@@ -20,7 +20,7 @@
 package com.epam.dlab.backendapi.resources.gcp;
 
 import com.epam.dlab.auth.UserInfo;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.resources.dto.SparkStandaloneClusterCreateForm;
 import com.epam.dlab.backendapi.resources.dto.gcp.GcpComputationalCreateForm;
 import com.epam.dlab.backendapi.resources.swagger.SwaggerSecurityInfo;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/schedulers/internal/ManagedScheduler.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/schedulers/internal/ManagedScheduler.java
index c164d90..c7eddd8 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/schedulers/internal/ManagedScheduler.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/schedulers/internal/ManagedScheduler.java
@@ -20,7 +20,7 @@
 package com.epam.dlab.backendapi.schedulers.internal;
 
 import com.epam.dlab.backendapi.SelfServiceApplication;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.domain.SchedulerConfigurationData;
 import com.epam.dlab.exceptions.DlabException;
 import com.fiestacabin.dropwizard.quartz.GuiceJobFactory;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/KeycloakServiceImpl.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/KeycloakServiceImpl.java
index 6afba62..aaf6c02 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/KeycloakServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/KeycloakServiceImpl.java
@@ -1,6 +1,6 @@
 package com.epam.dlab.backendapi.service;
 
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.exceptions.DlabException;
 import com.google.inject.Inject;
 import de.ahus1.keycloak.dropwizard.KeycloakConfiguration;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/aws/AwsInfrastructureTemplateService.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/aws/AwsInfrastructureTemplateService.java
index 7e03083..62a8f3f 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/aws/AwsInfrastructureTemplateService.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/aws/AwsInfrastructureTemplateService.java
@@ -19,7 +19,7 @@
 
 package com.epam.dlab.backendapi.service.aws;
 
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.resources.dto.aws.AwsEmrConfiguration;
 import com.epam.dlab.backendapi.service.impl.InfrastructureTemplateServiceBase;
 import com.epam.dlab.dto.base.computational.FullComputationalTemplate;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/gcp/GcpInfrastructureTemplateService.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/gcp/GcpInfrastructureTemplateService.java
index 30ecb2f..314698d 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/gcp/GcpInfrastructureTemplateService.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/gcp/GcpInfrastructureTemplateService.java
@@ -19,7 +19,7 @@
 
 package com.epam.dlab.backendapi.service.gcp;
 
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.resources.dto.gcp.GcpDataprocConfiguration;
 import com.epam.dlab.backendapi.service.impl.InfrastructureTemplateServiceBase;
 import com.epam.dlab.dto.base.computational.FullComputationalTemplate;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/AccessKeyServiceImpl.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/AccessKeyServiceImpl.java
index 7759013..fcf05eb 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/AccessKeyServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/AccessKeyServiceImpl.java
@@ -20,7 +20,7 @@
 package com.epam.dlab.backendapi.service.impl;
 
 import com.epam.dlab.auth.UserInfo;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.annotation.BudgetLimited;
 import com.epam.dlab.backendapi.dao.KeyDAO;
 import com.epam.dlab.backendapi.domain.RequestId;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/GuacamoleServiceImpl.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/GuacamoleServiceImpl.java
index 62721ec..f6b992f 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/GuacamoleServiceImpl.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/GuacamoleServiceImpl.java
@@ -1,7 +1,7 @@
 package com.epam.dlab.backendapi.service.impl;
 
 import com.epam.dlab.auth.UserInfo;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.service.GuacamoleService;
 import com.epam.dlab.constants.ServiceConsts;
 import com.epam.dlab.exceptions.DlabException;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/InfrastructureInfoServiceBase.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/InfrastructureInfoServiceBase.java
index e760f25..1734e83 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/InfrastructureInfoServiceBase.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/InfrastructureInfoServiceBase.java
@@ -20,7 +20,7 @@
 package com.epam.dlab.backendapi.service.impl;
 
 import com.epam.dlab.auth.UserInfo;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.dao.BillingDAO;
 import com.epam.dlab.backendapi.dao.EnvDAO;
 import com.epam.dlab.backendapi.dao.ExploratoryDAO;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/InfrastructureTemplateServiceBase.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/InfrastructureTemplateServiceBase.java
index e597d94..f4d26e8 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/InfrastructureTemplateServiceBase.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/InfrastructureTemplateServiceBase.java
@@ -20,7 +20,7 @@
 package com.epam.dlab.backendapi.service.impl;
 
 import com.epam.dlab.auth.UserInfo;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.dao.ProjectDAO;
 import com.epam.dlab.backendapi.dao.SettingsDAO;
 import com.epam.dlab.backendapi.domain.ProjectDTO;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/util/RequestBuilder.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/util/RequestBuilder.java
index c1a1df1..b8705c9 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/util/RequestBuilder.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/util/RequestBuilder.java
@@ -20,7 +20,7 @@
 package com.epam.dlab.backendapi.util;
 
 import com.epam.dlab.auth.UserInfo;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.dao.SettingsDAO;
 import com.epam.dlab.backendapi.domain.ExploratoryLibCache;
 import com.epam.dlab.backendapi.resources.dto.BackupFormDTO;
diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/validation/SelfServiceCloudConfigurationSequenceProvider.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/validation/SelfServiceCloudConfigurationSequenceProvider.java
index 8dc16c8..1fd1748 100644
--- a/services/self-service/src/main/java/com/epam/dlab/backendapi/validation/SelfServiceCloudConfigurationSequenceProvider.java
+++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/validation/SelfServiceCloudConfigurationSequenceProvider.java
@@ -19,7 +19,7 @@
 
 package com.epam.dlab.backendapi.validation;
 
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.validation.CloudConfigurationSequenceProvider;
 
 public class SelfServiceCloudConfigurationSequenceProvider
diff --git a/services/self-service/src/test/java/com/epam/dlab/backendapi/service/aws/AwsInfrastructureTemplateServiceTest.java b/services/self-service/src/test/java/com/epam/dlab/backendapi/service/aws/AwsInfrastructureTemplateServiceTest.java
index a69717d..118e7e8 100644
--- a/services/self-service/src/test/java/com/epam/dlab/backendapi/service/aws/AwsInfrastructureTemplateServiceTest.java
+++ b/services/self-service/src/test/java/com/epam/dlab/backendapi/service/aws/AwsInfrastructureTemplateServiceTest.java
@@ -19,7 +19,7 @@
 
 package com.epam.dlab.backendapi.service.aws;
 
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.resources.dto.aws.AwsEmrConfiguration;
 import com.epam.dlab.dto.base.computational.FullComputationalTemplate;
 import com.epam.dlab.dto.imagemetadata.ComputationalMetadataDTO;
diff --git a/services/self-service/src/test/java/com/epam/dlab/backendapi/service/gcp/GcpInfrastructureTemplateServiceTest.java b/services/self-service/src/test/java/com/epam/dlab/backendapi/service/gcp/GcpInfrastructureTemplateServiceTest.java
index 80c7d7a..2010b76 100644
--- a/services/self-service/src/test/java/com/epam/dlab/backendapi/service/gcp/GcpInfrastructureTemplateServiceTest.java
+++ b/services/self-service/src/test/java/com/epam/dlab/backendapi/service/gcp/GcpInfrastructureTemplateServiceTest.java
@@ -19,7 +19,7 @@
 
 package com.epam.dlab.backendapi.service.gcp;
 
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.resources.dto.gcp.GcpDataprocConfiguration;
 import com.epam.dlab.dto.base.computational.FullComputationalTemplate;
 import com.epam.dlab.dto.imagemetadata.ComputationalMetadataDTO;
diff --git a/services/self-service/src/test/java/com/epam/dlab/backendapi/service/impl/AccessKeyServiceImplTest.java b/services/self-service/src/test/java/com/epam/dlab/backendapi/service/impl/AccessKeyServiceImplTest.java
index 6e6ddbb..c68a3d0 100644
--- a/services/self-service/src/test/java/com/epam/dlab/backendapi/service/impl/AccessKeyServiceImplTest.java
+++ b/services/self-service/src/test/java/com/epam/dlab/backendapi/service/impl/AccessKeyServiceImplTest.java
@@ -20,7 +20,7 @@
 package com.epam.dlab.backendapi.service.impl;
 
 import com.epam.dlab.auth.UserInfo;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.dao.KeyDAO;
 import com.epam.dlab.backendapi.domain.RequestId;
 import com.epam.dlab.backendapi.service.ExploratoryService;
diff --git a/services/self-service/src/test/java/com/epam/dlab/backendapi/service/impl/ComputationalServiceImplTest.java b/services/self-service/src/test/java/com/epam/dlab/backendapi/service/impl/ComputationalServiceImplTest.java
index 78e8459..81813f2 100644
--- a/services/self-service/src/test/java/com/epam/dlab/backendapi/service/impl/ComputationalServiceImplTest.java
+++ b/services/self-service/src/test/java/com/epam/dlab/backendapi/service/impl/ComputationalServiceImplTest.java
@@ -20,7 +20,7 @@
 package com.epam.dlab.backendapi.service.impl;
 
 import com.epam.dlab.auth.UserInfo;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.dao.ComputationalDAO;
 import com.epam.dlab.backendapi.dao.ExploratoryDAO;
 import com.epam.dlab.backendapi.domain.RequestId;
diff --git a/services/self-service/src/test/java/com/epam/dlab/backendapi/util/RequestBuilderTest.java b/services/self-service/src/test/java/com/epam/dlab/backendapi/util/RequestBuilderTest.java
index 82fd834..83da341 100644
--- a/services/self-service/src/test/java/com/epam/dlab/backendapi/util/RequestBuilderTest.java
+++ b/services/self-service/src/test/java/com/epam/dlab/backendapi/util/RequestBuilderTest.java
@@ -20,7 +20,7 @@
 package com.epam.dlab.backendapi.util;
 
 import com.epam.dlab.auth.UserInfo;
-import com.epam.dlab.backendapi.SelfServiceApplicationConfiguration;
+import com.epam.dlab.backendapi.conf.SelfServiceApplicationConfiguration;
 import com.epam.dlab.backendapi.dao.SettingsDAO;
 import com.epam.dlab.backendapi.resources.dto.BackupFormDTO;
 import com.epam.dlab.backendapi.resources.dto.ComputationalCreateFormDTO;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org