use of com.sequenceiq.cloudbreak.telemetry.databus.DatabusConfigView in project cloudbreak by hortonworks.
the class TelemetryDecoratorTest method testDecorateWithDatabus.
@Test
public void testDecorateWithDatabus() {
// GIVEN
Map<String, SaltPillarProperties> servicePillar = new HashMap<>();
FluentConfigView fluentConfigView = new FluentConfigView.Builder().build();
DatabusConfigView dataConfigView = new DatabusConfigView.Builder().withEnabled(true).withAccessKeyId("myAccessKeyId").withAccessKeySecret("mySecret".toCharArray()).withEndpoint("databusEndpoint").build();
mockConfigServiceResults(dataConfigView, fluentConfigView, new MeteringConfigView.Builder().build());
// WHEN
Map<String, SaltPillarProperties> result = underTest.decoratePillar(servicePillar, createStack(), new Telemetry());
// THEN
Map<String, Object> results = createMapFromFluentPillars(result, "databus");
assertEquals(results.get("accessKeyId"), "myAccessKeyId");
assertEquals(results.get("enabled"), true);
}
use of com.sequenceiq.cloudbreak.telemetry.databus.DatabusConfigView in project cloudbreak by hortonworks.
the class TelemetryDecoratorTest method testDecorateWithSaasMonitoring.
@Test
public void testDecorateWithSaasMonitoring() {
// GIVEN
Map<String, SaltPillarProperties> servicePillar = new HashMap<>();
TelemetryClusterDetails clusterDetails = TelemetryClusterDetails.Builder.builder().withCrn("myClusterCrn").withType("datahub").withVersion("1.0.0").build();
MonitoringConfigView monitoringConfigView = new MonitoringConfigView.Builder().withEnabled(true).withClusterDetails(clusterDetails).build();
NodeStatusConfigView nodeStatusConfigView = new NodeStatusConfigView.Builder().withServerUsername("admin").withServerPassword("admin".toCharArray()).build();
DatabusConfigView dataConfigView = new DatabusConfigView.Builder().build();
TelemetryCommonConfigView telemetryCommonConfigView = new TelemetryCommonConfigView.Builder().withClusterDetails(clusterDetails).build();
MeteringConfigView meteringConfigView = new MeteringConfigView.Builder().build();
mockConfigServiceResults(dataConfigView, new FluentConfigView.Builder().build(), meteringConfigView, monitoringConfigView, nodeStatusConfigView, telemetryCommonConfigView);
given(entitlementService.isCdpSaasEnabled(anyString())).willReturn(true);
// WHEN
Map<String, SaltPillarProperties> result = underTest.decoratePillar(servicePillar, createStack(), new Telemetry());
// THEN
Map<String, Object> results = createMapFromFluentPillars(result, "monitoring");
assertEquals(results.get("clusterType"), "datahub");
assertEquals(results.get("clusterVersion"), "1.0.0");
assertEquals(results.get("clusterCrn"), "myClusterCrn");
assertEquals(results.get("enabled"), true);
}
use of com.sequenceiq.cloudbreak.telemetry.databus.DatabusConfigView in project cloudbreak by hortonworks.
the class TelemetryDecoratorTest method testDecorateWithMetering.
@Test
public void testDecorateWithMetering() {
// GIVEN
Map<String, SaltPillarProperties> servicePillar = new HashMap<>();
MeteringConfigView meteringConfigView = new MeteringConfigView.Builder().withEnabled(true).withPlatform("AWS").withServiceType("DATAHUB").withServiceVersion("1.0.0").withClusterCrn("myClusterCrn").build();
DatabusConfigView dataConfigView = new DatabusConfigView.Builder().build();
mockConfigServiceResults(dataConfigView, new FluentConfigView.Builder().build(), meteringConfigView);
// WHEN
Map<String, SaltPillarProperties> result = underTest.decoratePillar(servicePillar, createStack(), new Telemetry());
// THEN
Map<String, Object> results = createMapFromFluentPillars(result, "metering");
assertEquals(results.get("serviceType"), "DATAHUB");
assertEquals(results.get("serviceVersion"), "1.0.0");
assertEquals(results.get("clusterCrn"), "myClusterCrn");
assertEquals(results.get("enabled"), true);
}
use of com.sequenceiq.cloudbreak.telemetry.databus.DatabusConfigView in project cloudbreak by hortonworks.
the class TelemetryConfigService method getDatabusPillarConfig.
private Map<String, SaltPillarProperties> getDatabusPillarConfig(Stack stack, String databusEndpoint, boolean databusEnabled) throws CloudbreakOrchestratorFailedException {
if (databusEnabled) {
LOGGER.debug("Apply DataBus related pillars.");
try {
DataBusCredential dbusCredential = altusMachineUserService.getOrCreateDataBusCredentialIfNeeded(stack);
DatabusConfigView databusConfigView = databusConfigService.createDatabusConfigs(dbusCredential.getAccessKey(), dbusCredential.getPrivateKey().toCharArray(), null, databusEndpoint);
return Map.of("databus", new SaltPillarProperties("/databus/init.sls", Collections.singletonMap("databus", databusConfigView.toMap())));
} catch (IOException e) {
throw new CloudbreakOrchestratorFailedException(e);
}
} else {
return Map.of();
}
}
Aggregations