Search in sources :

Example 1 with ClusterStatusService

use of com.sequenceiq.cloudbreak.cluster.api.ClusterStatusService in project cloudbreak by hortonworks.

the class ClusterServiceTest method setupClusterApi.

private void setupClusterApi(Stack stack, HealthCheckResult healthCheckResult, String statusReason) {
    ClusterApi connector = mock(ClusterApi.class);
    ClusterStatusService clusterStatusService = mock(ClusterStatusService.class);
    when(clusterStatusService.isClusterManagerRunning()).thenReturn(true);
    when(connector.clusterStatusService()).thenReturn(clusterStatusService);
    Map<HostName, Set<HealthCheck>> clusterManagerStateMap = new HashMap<>();
    if (healthCheckResult != null) {
        clusterManagerStateMap.put(HostName.hostName(FQDN1), Sets.newHashSet(new HealthCheck(HealthCheckType.HOST, healthCheckResult, Optional.ofNullable(statusReason))));
    }
    ExtendedHostStatuses extendedHostStatuses = new ExtendedHostStatuses(clusterManagerStateMap);
    when(clusterStatusService.getExtendedHostStatuses(any())).thenReturn(extendedHostStatuses);
    when(clusterApiConnectors.getConnector(stack)).thenReturn(connector);
}
Also used : ExtendedHostStatuses(com.sequenceiq.cloudbreak.cluster.status.ExtendedHostStatuses) ClusterApi(com.sequenceiq.cloudbreak.cluster.api.ClusterApi) Set(java.util.Set) HashMap(java.util.HashMap) HealthCheck(com.sequenceiq.cloudbreak.common.type.HealthCheck) ClusterStatusService(com.sequenceiq.cloudbreak.cluster.api.ClusterStatusService) HostName(com.sequenceiq.cloudbreak.cloud.model.HostName)

Example 2 with ClusterStatusService

use of com.sequenceiq.cloudbreak.cluster.api.ClusterStatusService in project cloudbreak by hortonworks.

the class ClusterServiceTest method testIsRangerRazEnabledOnClusterThrowsExceptionIfCmIsNotRunning.

@Test
void testIsRangerRazEnabledOnClusterThrowsExceptionIfCmIsNotRunning() {
    Stack stack = setupStack(STACK_ID);
    ClusterApi clusterApi = mock(ClusterApi.class);
    ClusterStatusService clusterStatusService = mock(ClusterStatusService.class);
    when(clusterApiConnectors.getConnector(stack)).thenReturn(clusterApi);
    when(clusterApi.clusterStatusService()).thenReturn(clusterStatusService);
    when(clusterStatusService.isClusterManagerRunning()).thenReturn(false);
    BadRequestException exception = assertThrows(BadRequestException.class, () -> underTest.isRangerRazEnabledOnCluster(stack));
    assertEquals(String.format("Cloudera Manager is not running for cluster: %s", CLUSTER_NAME), exception.getMessage());
}
Also used : ClusterApi(com.sequenceiq.cloudbreak.cluster.api.ClusterApi) BadRequestException(com.sequenceiq.cloudbreak.common.exception.BadRequestException) ClusterStatusService(com.sequenceiq.cloudbreak.cluster.api.ClusterStatusService) Stack(com.sequenceiq.cloudbreak.domain.stack.Stack) Test(org.junit.jupiter.api.Test) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest)

Example 3 with ClusterStatusService

use of com.sequenceiq.cloudbreak.cluster.api.ClusterStatusService in project cloudbreak by hortonworks.

the class ClusterServiceTest method testIsRangerRazEnabledOnClusterReturnsTrueWhenCmIsRunning.

@Test
void testIsRangerRazEnabledOnClusterReturnsTrueWhenCmIsRunning() {
    Stack stack = setupStack(STACK_ID);
    ClusterApi clusterApi = mock(ClusterApi.class);
    ClusterStatusService clusterStatusService = mock(ClusterStatusService.class);
    ClusterModificationService clusterModificationService = mock(ClusterModificationService.class);
    when(clusterApiConnectors.getConnector(stack)).thenReturn(clusterApi);
    when(clusterApi.clusterStatusService()).thenReturn(clusterStatusService);
    when(clusterApi.clusterModificationService()).thenReturn(clusterModificationService);
    when(clusterStatusService.isClusterManagerRunning()).thenReturn(true);
    when(clusterModificationService.isServicePresent(anyString(), eq(RANGER_RAZ))).thenReturn(true);
    assertTrue(underTest.isRangerRazEnabledOnCluster(stack));
}
Also used : ClusterApi(com.sequenceiq.cloudbreak.cluster.api.ClusterApi) ClusterModificationService(com.sequenceiq.cloudbreak.cluster.api.ClusterModificationService) ClusterStatusService(com.sequenceiq.cloudbreak.cluster.api.ClusterStatusService) Stack(com.sequenceiq.cloudbreak.domain.stack.Stack) Test(org.junit.jupiter.api.Test) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest)

Example 4 with ClusterStatusService

use of com.sequenceiq.cloudbreak.cluster.api.ClusterStatusService in project cloudbreak by hortonworks.

the class ClusterServiceTest method testIsRangerRazEnabledOnClusterReturnsFalseIfCmIsRunning.

@Test
void testIsRangerRazEnabledOnClusterReturnsFalseIfCmIsRunning() {
    Stack stack = setupStack(STACK_ID);
    ClusterApi clusterApi = mock(ClusterApi.class);
    ClusterStatusService clusterStatusService = mock(ClusterStatusService.class);
    ClusterModificationService clusterModificationService = mock(ClusterModificationService.class);
    when(clusterApiConnectors.getConnector(stack)).thenReturn(clusterApi);
    when(clusterApi.clusterStatusService()).thenReturn(clusterStatusService);
    when(clusterApi.clusterModificationService()).thenReturn(clusterModificationService);
    when(clusterStatusService.isClusterManagerRunning()).thenReturn(true);
    when(clusterModificationService.isServicePresent(anyString(), eq(RANGER_RAZ))).thenReturn(false);
    assertFalse(underTest.isRangerRazEnabledOnCluster(stack));
}
Also used : ClusterApi(com.sequenceiq.cloudbreak.cluster.api.ClusterApi) ClusterModificationService(com.sequenceiq.cloudbreak.cluster.api.ClusterModificationService) ClusterStatusService(com.sequenceiq.cloudbreak.cluster.api.ClusterStatusService) Stack(com.sequenceiq.cloudbreak.domain.stack.Stack) Test(org.junit.jupiter.api.Test) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest)

Aggregations

ClusterApi (com.sequenceiq.cloudbreak.cluster.api.ClusterApi)4 ClusterStatusService (com.sequenceiq.cloudbreak.cluster.api.ClusterStatusService)4 Stack (com.sequenceiq.cloudbreak.domain.stack.Stack)3 Test (org.junit.jupiter.api.Test)3 ParameterizedTest (org.junit.jupiter.params.ParameterizedTest)3 ClusterModificationService (com.sequenceiq.cloudbreak.cluster.api.ClusterModificationService)2 HostName (com.sequenceiq.cloudbreak.cloud.model.HostName)1 ExtendedHostStatuses (com.sequenceiq.cloudbreak.cluster.status.ExtendedHostStatuses)1 BadRequestException (com.sequenceiq.cloudbreak.common.exception.BadRequestException)1 HealthCheck (com.sequenceiq.cloudbreak.common.type.HealthCheck)1 HashMap (java.util.HashMap)1 Set (java.util.Set)1