downloadCsarUri: "/onboarding-api/v1.0/vendor-software-products/packages"
healthCheckUri: "/onboarding-api/v1.0/healthcheck"
-dcae:
- protocol: http
- host: <%= @host_ip %>
- port: <%= @catalog_port %>
- healthCheckUri: "/dcae/healthCheck"
-
# #GSS IDNS
switchoverDetector:
gBeFqdn:
# MUST BE ALSO CHANGE IN THE startup.sh FILE
default['jetty'][:truststore_pwd] = "z+KEj;t+,KN^iimSiS89e#p0"
-#Reserved for DCAE backend
-default['DCAE']['BE'][:http_port] = 8082
-default['DCAE']['BE'][:https_port] = 8444
-default['DCAE_BE_VIP'] = "dcae-be"
-
#BasicAuth
default['basic_auth']['enabled'] = false
default['basic_auth'][:user_name] = "testName"
:cassandra_usr => node['cassandra'][:cassandra_user],
:cassandra_truststore_password => node['cassandra'][:truststore_password],
:cassandra_ssl_enabled => "#{ENV['cassandra_ssl_enabled']}",
- :dcae_be_vip => node['DCAE_BE_VIP'],
:dmaap_active => node['DMAAP']['active']
})
end
downloadCsarUri: "/onboarding-api/v1.0/vendor-software-products/packages"
healthCheckUri: "/onboarding-api/v1.0/healthcheck"
-dcae:
- host: <%= @dcae_be_vip %>
- <% if node[:disableHttp] -%>
- protocol: https
- port: <%= node['DCAE']['BE'][:https_port] %>
- <% else %>
- protocol: http
- port: <%= node['DCAE']['BE'][:http_port] %>
- <% end -%>
- healthCheckUri: "/dcae/healthCheck"
-
# #GSS IDNS
switchoverDetector:
gBeFqdn:
import static org.apache.http.HttpStatus.SC_OK;
import static org.openecomp.sdc.common.api.Constants.HC_COMPONENT_BE;
import static org.openecomp.sdc.common.api.Constants.HC_COMPONENT_CASSANDRA;
-import static org.openecomp.sdc.common.api.Constants.HC_COMPONENT_DCAE;
import static org.openecomp.sdc.common.api.Constants.HC_COMPONENT_DMAAP_PRODUCER;
import static org.openecomp.sdc.common.api.Constants.HC_COMPONENT_ECOMP_PORTAL;
import static org.openecomp.sdc.common.api.Constants.HC_COMPONENT_JANUSGRAPH;
// Amdocs
healthCheckInfos.add(getHostedComponentsBeHealthCheck(HC_COMPONENT_ON_BOARDING, buildOnBoardingHealthCheckUrl()));
- //DCAE
- healthCheckInfos.add(getHostedComponentsBeHealthCheck(HC_COMPONENT_DCAE, buildDcaeHealthCheckUrl()));
-
- //ECOMP Portal
+ //ECOMP Portal
healthCheckInfos.add(portalHealthCheck.getHealthCheckInfo());
//CADI
return null;
}
- @VisibleForTesting
- String buildDcaeHealthCheckUrl() {
-
- Configuration.DcaeConfig dcaeConfig = ConfigurationManager.getConfigurationManager().getConfiguration().getDcae();
-
- if (dcaeConfig != null) {
- return String.format(hcUrl, dcaeConfig.getProtocol(), dcaeConfig.getHost(),
- dcaeConfig.getPort(),dcaeConfig.getHealthCheckUri());
- }
-
- log.error("DCAE health check configuration is missing.");
- return null;
- }
-
public class HealthCheckScheduledTask implements Runnable {
@Override
public void run() {
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;
-import static org.openecomp.sdc.common.api.Constants.HC_COMPONENT_DCAE;
import static org.openecomp.sdc.common.api.Constants.HC_COMPONENT_ON_BOARDING;
@RunWith(MockitoJUnitRunner.class)
Assert.assertEquals("PORTAL is not available", hci.getDescription());
}
- @Test
- public void testGetDcaeHealthCheck() throws Exception {
- HealthCheckBusinessLogic testSubject;
- List<HealthCheckInfo> healthCheckInfos = new LinkedList<>();
-
- // default test
- testSubject = createTestSubject();
- String url = testSubject.buildDcaeHealthCheckUrl();
- Deencapsulation.invoke(testSubject, "getHostedComponentsBeHealthCheck", HC_COMPONENT_DCAE, url);
- }
-
@Test
public void testGetHostedComponentsBeHealthCheck() throws Exception {
HealthCheckBusinessLogic testSubject;
Deencapsulation.invoke(testSubject, "buildOnBoardingHealthCheckUrl");
}
- @Test
- public void testBuildDcaeHealthCheckUrl() throws Exception {
- HealthCheckBusinessLogic testSubject;
-
- // default test
- testSubject = createTestSubject();
- Deencapsulation.invoke(testSubject, "buildDcaeHealthCheckUrl");
- }
-}
\ No newline at end of file
+}
downloadCsarUri: "/onboarding-api/v1.0/vendor-software-products/packages"
healthCheckUri: "/onboarding-api/v1.0/healthcheck"
-dcae:
- protocol: http
- host: 127.0.0.1
- port: 8080
- healthCheckUri: "/dcae/healthCheck"
-
ecompPortal:
protocol: https
host: ecomp-portal-web-tdevn2.mtn23a.ecomp.cci.att.com
default['ONBOARDING_BE'][:http_port] = 8081
default['ONBOARDING_BE'][:https_port] = 8445
-#Reserved for DCAE backend
-default['DCAE']['FE'][:http_port] = 8183
-default['DCAE']['FE'][:https_port] = 9444
-default['DCAE_FE_VIP'] = "dcaed-fe"
-
#BasicAuth
default['basic_auth']['enabled'] = true
default['basic_auth'][:user_name] = "testName"
portBe: <%= node['ONBOARDING_BE'][:http_port] %>
<% end -%>
-dcae:
- host: <%= @dcae_fe_vip %>
- <% if node[:disableHttp] -%>
- protocol: https
- port: <%= node['DCAE']['FE'][:https_port] %>
- <% else %>
- protocol: http
- port: <%= node['DCAE']['FE'][:http_port] %>
- <% end -%>
- healthCheckUri: "/dcaed/healthCheck"
-
-identificationHeaderFields:
+identificationHeaderFields:
-
- &HTTP_IV_USER HTTP_IV_USER
- &iv-user iv-user
import java.util.Map;
import static org.openecomp.sdc.common.api.Constants.HC_COMPONENT_CATALOG_FACADE_MS;
-import static org.openecomp.sdc.common.api.Constants.HC_COMPONENT_DCAE;
import static org.openecomp.sdc.common.api.Constants.HC_COMPONENT_ON_BOARDING;
public class HealthCheckScheduledTask implements Runnable {
private static final String LOG_TARGET_ENTITY_BE = "SDC.BE";
private static final String LOG_TARGET_ENTITY_CONFIG = "SDC.FE.Configuration";
private static final String LOG_TARGET_SERVICE_NAME_OB = "getOnboardingConfig";
- private static final String LOG_TARGET_SERVICE_NAME_DCAE = "getDCAEConfig";
private static final String LOG_TARGET_SERVICE_NAME_FACADE = "getCatalogFacadeConfig";
private static final String LOG_SERVICE_NAME = "/rest/healthCheck";
private static LogFieldsMdcHandler mdcFieldsHandler = new LogFieldsMdcHandler();
private static final String URL = "%s://%s:%s/sdc2/rest/healthCheck";
private final List<String> healthCheckFeComponents =
- Arrays.asList(HC_COMPONENT_ON_BOARDING, HC_COMPONENT_DCAE, HC_COMPONENT_CATALOG_FACADE_MS);
+ Arrays.asList(HC_COMPONENT_ON_BOARDING, HC_COMPONENT_CATALOG_FACADE_MS);
private static final HealthCheckUtil healthCheckUtil = new HealthCheckUtil();
private static final String DEBUG_CONTEXT = "HEALTH_FE";
private static final String EXTERNAL_HC_URL = "%s://%s:%s%s";
private static String ONBOARDING_HC_URL;
- private static String DCAE_HC_URL;
private static String CATALOG_FACADE_MS_HC_URL;
private final HealthCheckService service;
return ONBOARDING_HC_URL;
}
- static String getDcaeHcUrl() {
- return DCAE_HC_URL;
- }
-
static String getCatalogFacadeMsHcUrl() {
return CATALOG_FACADE_MS_HC_URL;
}
case HC_COMPONENT_ON_BOARDING:
healthCheckUri = service.getConfig().getOnboarding().getHealthCheckUriFe();
break;
- case HC_COMPONENT_DCAE:
- healthCheckUri = service.getConfig().getDcae().getHealthCheckUri();
- break;
case HC_COMPONENT_CATALOG_FACADE_MS:
healthCheckUri = service.getConfig().getCatalogFacadeMs().getHealthCheckUri();
break;
case HC_COMPONENT_ON_BOARDING:
healthCheckUrl = getOnboardingHealthCheckUrl();
break;
- case HC_COMPONENT_DCAE:
- healthCheckUrl = getDcaeHealthCheckUrl();
- break;
case HC_COMPONENT_CATALOG_FACADE_MS:
healthCheckUrl = getCatalogFacadeHealthCheckUrl();
break;
healthCheckInfos.add(new HealthCheckInfo(Constants.HC_COMPONENT_CASSANDRA, HealthCheckInfo.HealthCheckStatus.UNKNOWN, null, null));
healthCheckInfos.add(new HealthCheckInfo(Constants.HC_COMPONENT_DISTRIBUTION_ENGINE, HealthCheckInfo.HealthCheckStatus.UNKNOWN, null, null));
healthCheckInfos.add(new HealthCheckInfo(Constants.HC_COMPONENT_ON_BOARDING, HealthCheckInfo.HealthCheckStatus.UNKNOWN, null, null));
- healthCheckInfos.add(new HealthCheckInfo(Constants.HC_COMPONENT_DCAE, HealthCheckInfo.HealthCheckStatus.UNKNOWN, null, null));
healthCheckInfos.add(new HealthCheckInfo(HC_COMPONENT_CATALOG_FACADE_MS, HealthCheckInfo.HealthCheckStatus.UNKNOWN, null, null));
return new HealthCheckWrapper(healthCheckInfos, "UNKNOWN", "UNKNOWN");
}
return ONBOARDING_HC_URL;
}
- private String getDcaeHealthCheckUrl() {
- Configuration.DcaeConfig dcaeConfig = service.getConfig().getDcae();
- ErrorLogOptionalData errorLogOptionalData = ErrorLogOptionalData.newBuilder().targetEntity(LOG_TARGET_ENTITY_CONFIG)
- .targetServiceName(LOG_TARGET_SERVICE_NAME_DCAE).build();
-
- if (StringUtils.isEmpty(DCAE_HC_URL)) {
- if (dcaeConfig != null) {
- DCAE_HC_URL = buildHealthCheckUrl(
- dcaeConfig.getProtocol(), dcaeConfig.getHost(),
- dcaeConfig.getPort(), dcaeConfig.getHealthCheckUri());
- }
- else {
- log.error(EcompLoggerErrorCode.BUSINESS_PROCESS_ERROR, LOG_SERVICE_NAME, errorLogOptionalData,
- "DCAE health check configuration is missing.");
- }
- }
- return DCAE_HC_URL;
- }
-
private String getCatalogFacadeHealthCheckUrl() {
Configuration.CatalogFacadeMsConfig catalogFacadeMsConfig = service.getConfig().getCatalogFacadeMs();
ErrorLogOptionalData errorLogOptionalData = ErrorLogOptionalData.newBuilder().targetEntity(LOG_TARGET_ENTITY_CONFIG)
@Mock
private Configuration.CatalogFacadeMsConfig catalogFacadeMsConfig;
@Mock
- private Configuration.DcaeConfig dcaeConfig;
- @Mock
private Configuration.OnboardingConfig onboardingConfig;
@Mock
private Configuration configuration;
buildHealthCheckUrl(any(String.class), any(String.class), any(Integer.class), any(String.class));
}
- @Test
- public void getDcaeUrlWhenConfigurationIsProvided() {
- when(configuration.getDcae()).thenReturn(dcaeConfig);
- assertNull(HealthCheckScheduledTask.getDcaeHcUrl());
- healthCheckScheduledTask.getExternalComponentHcUrl(Constants.HC_COMPONENT_DCAE);
- assertEquals(HC_URL, HealthCheckScheduledTask.getDcaeHcUrl());
- }
-
@Test
public void getExcludedComponentListWhenCatalogFacadeMsConfigExists() {
when(configuration.getCatalogFacadeMs()).thenReturn(catalogFacadeMsConfig);
when(onboardingConfig.getPortFe()).thenReturn(PORT);
when(onboardingConfig.getHealthCheckUriFe()).thenReturn(URI);
- when(dcaeConfig.getProtocol()).thenReturn(PROTOCOL);
- when(dcaeConfig.getHost()).thenReturn(HOST);
- when(dcaeConfig.getPort()).thenReturn(PORT);
- when(dcaeConfig.getHealthCheckUri()).thenReturn(URI);
-
when(catalogFacadeMsConfig.getProtocol()).thenReturn(PROTOCOL);
when(catalogFacadeMsConfig.getHost()).thenReturn(HOST);
when(catalogFacadeMsConfig.getPort()).thenReturn(PORT);
downloadCsarUri: "/onboarding-api/v1.0/vendor-software-products/packages"
healthCheckUri: "/onboarding-api/v1.0/healthcheck"
-dcae:
- protocol: http
- host: 127.0.0.1
- port: 8080
- healthCheckUri: "/dcae/healthCheck"
-
switchoverDetector:
gBeFqdn: AIO-BE.ecomp.idns.cip.com
gFeFqdn: AIO-FE.ecomp.idns.cip.com
downloadCsarUri: "/onboarding-api/v1.0/vendor-software-products/packages"
healthCheckUri: "/onboarding-api/v1.0/healthcheck"
-dcae:
- protocol: http
- host: 127.0.0.1
- port: 8080
- healthCheckUri: "/dcae/healthCheck"
switchoverDetector:
gBeFqdn: AIO-BE.ecomp.idns.cip.com
private OnboardingConfig onboarding;
- private DcaeConfig dcae;
-
private BasicAuthConfig basicAuth;
private CassandrConfig cassandraConfig;
}
}
- public DcaeConfig getDcae() {
- return dcae;
- }
-
- public void setDcae(DcaeConfig dcae) {
- this.dcae = dcae;
- }
-
- public static class DcaeConfig {
-
- String protocol = "http";
- String host;
- Integer port;
- String healthCheckUri;
-
- public String getProtocol() {
- return protocol;
- }
-
- public void setProtocol(String protocol) {
- this.protocol = protocol;
- }
-
- public String getHost() {
- return host;
- }
-
- public void setHost(String host) {
- this.host = host;
- }
-
- public Integer getPort() {
- return port;
- }
-
- public void setPort(Integer port) {
- this.port = port;
- }
-
- public String getHealthCheckUri() {
- return healthCheckUri;
- }
-
- public void setHealthCheckUri(String healthCheckUri) {
- this.healthCheckUri = healthCheckUri;
- }
- }
-
public static class EcompPortalConfig {
private String protocol = "https";
private String host;
//external HealthCheck components
public static final String HC_COMPONENT_ON_BOARDING = "ON_BOARDING";
- public static final String HC_COMPONENT_DCAE = "DCAE";
public static final String HC_COMPONENT_ECOMP_PORTAL = "PORTAL";
private OnboardingConfig onboarding;
- private DcaeConfig dcae;
-
private CookieConfig authCookie;
private BasicAuthConfig basicAuth;
this.onboarding = onboarding;
}
- public DcaeConfig getDcae() {
- return dcae;
- }
-
- public void setDcae(DcaeConfig dcae) {
- this.dcae = dcae;
- }
-
public CookieConfig getAuthCookie() {
return authCookie;
}
}
}
- public static class DcaeConfig {
-
- String protocol = "http";
- String host;
- Integer port;
- String healthCheckUri;
-
- public String getProtocol() {
- return protocol;
- }
-
- public void setProtocol(String protocol) {
- this.protocol = protocol;
- }
-
- public String getHost() {
- return host;
- }
-
- public void setHost(String host) {
- this.host = host;
- }
-
- public Integer getPort() {
- return port;
- }
-
- public void setPort(Integer port) {
- this.port = port;
- }
-
- public String getHealthCheckUri() {
- return healthCheckUri;
- }
-
- public void setHealthCheckUri(String healthCheckUri) {
- this.healthCheckUri = healthCheckUri;
- }
- }
-
public static class CookieConfig {
String cookieName = "AuthenticationCookie";
String path = "";
));
}
@Test
- public void validateBeanForDcaeConfig() {
- assertThat(Configuration.DcaeConfig.class, allOf(
- hasValidBeanConstructor(),
- hasValidGettersAndSettersExcluding()
- ));
- }
- @Test
public void validateBeanForEcompPortalConfig() {
assertThat(Configuration.EcompPortalConfig.class, allOf(
hasValidBeanConstructor(),
));
}
- @Test
- public void validateDcaeConfigBean() {
- assertThat(Configuration.DcaeConfig.class, allOf(
- hasValidBeanConstructor(),
- hasValidGettersAndSetters()
- ));
- }
-
@Test
public void validateGetHealthCheckSocketTimeoutInMsReturnsProperTime() {
final int defaultTestTimeout = 100;
"FE_VIP": "yyy",
"ES_VIP": "yyy",
"KB_VIP": "yyy",
- "DCAE_BE_VIP": "yyy",
- "DCAE_FE_VIP": "yyy",
"interfaces": {
"application": "eth0",
"private": "eth1"
# Url for onboarding health check
healthCheckUri: "/onboarding-api/v1.0/healthcheck"
- dcae:
- # The ip of the onboarding docker
- host: <%= @dcae_be_vip %>
- # The protocol to use
- protocol: <https/http>
- # The port the docker is listening on
- port: <port>
- # The url of the health check to use
- healthCheckUri: "/dcae/healthCheck"
-
-
#GSS IDNS
# Switchover configuration is used for Geo redundancy to provide automatic failovers
switchoverDetector:
"BE_VIP": "sdc-BE",
"ONBOARDING_BE_VIP": "sdc-onboard-BE",
"FE_VIP": "sdc-FE",
- "DCAE_BE_VIP": "localhost",
- "DCAE_FE_VIP": "localhost",
- "DCAE_TOSCA_LAB_VIP": "localhost",
"interfaces": {
"application": "eth0",
"private": "eth1"
"BE_VIP": "yyy",
"ONBOARDING_BE_VIP": "yyy",
"FE_VIP": "yyy",
- "DCAE_BE_VIP": "yyy",
- "DCAE_FE_VIP": "yyy",
- "DCAE_TOSCA_LAB_VIP": "yyy",
"interfaces": {
"application": "eth0",
"private": "eth1"