Search in sources :

Example 16 with Backup

use of com.sequenceiq.freeipa.api.model.Backup in project cloudbreak by hortonworks.

the class CloudBackupFolderResolverServiceTest method testUpdateStorageLocationGcs.

@Test
public void testUpdateStorageLocationGcs() {
    // GIVEN
    Backup backup = createBackup();
    backup.setS3(null);
    backup.setGcs(new GcsCloudStorageV1Parameters());
    backup.setStorageLocation("gs://mybucket");
    // WHEN
    underTest.updateStorageLocation(backup, FluentClusterType.FREEIPA.value(), "mycluster", "crn:cdp:cloudbreak:us-west-1:someone:stack:12345");
    // THEN
    assertEquals("gs://mybucket/cluster-backups/freeipa/mycluster_12345", backup.getStorageLocation());
}
Also used : Backup(com.sequenceiq.freeipa.api.model.Backup) GcsCloudStorageV1Parameters(com.sequenceiq.common.api.cloudstorage.old.GcsCloudStorageV1Parameters) Test(org.junit.Test)

Example 17 with Backup

use of com.sequenceiq.freeipa.api.model.Backup in project cloudbreak by hortonworks.

the class CloudBackupFolderResolverServiceTest method testUpdateStorageLocationAdlsGen2.

@Test
public void testUpdateStorageLocationAdlsGen2() {
    // GIVEN
    Backup backup = createBackup();
    backup.setS3(null);
    backup.setAdlsGen2(new AdlsGen2CloudStorageV1Parameters());
    backup.setStorageLocation("abfs://mycontainer@someaccount.dfs.core.windows.net");
    // WHEN
    underTest.updateStorageLocation(backup, FluentClusterType.FREEIPA.value(), "mycluster", "crn:cdp:cloudbreak:us-west-1:someone:stack:12345");
    // THEN
    assertEquals("https://someaccount.dfs.core.windows.net/mycontainer/cluster-backups/freeipa/mycluster_12345", backup.getStorageLocation());
}
Also used : AdlsGen2CloudStorageV1Parameters(com.sequenceiq.common.api.cloudstorage.old.AdlsGen2CloudStorageV1Parameters) Backup(com.sequenceiq.freeipa.api.model.Backup) Test(org.junit.Test)

Example 18 with Backup

use of com.sequenceiq.freeipa.api.model.Backup in project cloudbreak by hortonworks.

the class CloudBackupFolderResolverServiceTest method testUpdateStorageLocationAdlsGen2WithoutScheme.

@Test
public void testUpdateStorageLocationAdlsGen2WithoutScheme() {
    // GIVEN
    Backup backup = createBackup();
    backup.setS3(null);
    backup.setAdlsGen2(new AdlsGen2CloudStorageV1Parameters());
    backup.setStorageLocation("mycontainer@someaccount");
    // WHEN
    underTest.updateStorageLocation(backup, FluentClusterType.FREEIPA.value(), "mycluster", "crn:cdp:cloudbreak:us-west-1:someone:stack:12345");
    // THEN
    assertEquals("https://someaccount.dfs.core.windows.net/mycontainer/cluster-backups/freeipa/mycluster_12345", backup.getStorageLocation());
}
Also used : AdlsGen2CloudStorageV1Parameters(com.sequenceiq.common.api.cloudstorage.old.AdlsGen2CloudStorageV1Parameters) Backup(com.sequenceiq.freeipa.api.model.Backup) Test(org.junit.Test)

Example 19 with Backup

use of com.sequenceiq.freeipa.api.model.Backup in project cloudbreak by hortonworks.

the class FreeIpaConfigServiceTest method testCreateFreeIpaConfigs.

@Test
void testCreateFreeIpaConfigs() {
    String backupLocation = "s3://mybucket/test";
    Backup backup = new Backup();
    backup.setStorageLocation(backupLocation);
    backup.setS3(new S3CloudStorageV1Parameters());
    FreeIpa freeIpa = new FreeIpa();
    freeIpa.setDomain(DOMAIN);
    freeIpa.setAdminPassword(PASSWORD);
    Stack stack = new Stack();
    stack.setCloudPlatform(CloudPlatform.AWS.name());
    stack.setBackup(backup);
    stack.setEnvironmentCrn("envcrn");
    Network network = new Network();
    network.setNetworkCidrs(List.of(CIDR));
    stack.setNetwork(network);
    when(freeIpaService.findByStack(any())).thenReturn(freeIpa);
    when(freeIpaClientFactory.getAdminUser()).thenReturn(ADMIN);
    when(networkService.getFilteredSubnetWithCidr(any())).thenReturn(subnetWithCidr);
    when(reverseDnsZoneCalculator.reverseDnsZoneForCidrs(any())).thenReturn(REVERSE_ZONE);
    when(environment.getProperty("freeipa.platform.dnssec.validation.AWS", "true")).thenReturn("true");
    GatewayConfig gatewayConfig = mock(GatewayConfig.class);
    when(gatewayConfig.getHostname()).thenReturn(HOSTNAME);
    when(gatewayConfigService.getPrimaryGatewayConfig(any())).thenReturn(gatewayConfig);
    when(proxyConfigDtoService.getByEnvironmentCrn(anyString())).thenReturn(Optional.empty());
    Node node = new Node(PRIVATE_IP, null, null, null, HOSTNAME, DOMAIN, (String) null);
    Map<String, String> expectedHost = Map.of("ip", PRIVATE_IP, "fqdn", HOSTNAME);
    Set<Object> expectedHosts = ImmutableSet.of(expectedHost);
    FreeIpaConfigView freeIpaConfigView = underTest.createFreeIpaConfigs(stack, ImmutableSet.of(node));
    assertEquals(DOMAIN.toUpperCase(), freeIpaConfigView.getRealm());
    assertEquals(DOMAIN, freeIpaConfigView.getDomain());
    assertEquals(PASSWORD, freeIpaConfigView.getPassword());
    assertEquals(REVERSE_ZONE, freeIpaConfigView.getReverseZones());
    assertEquals(ADMIN, freeIpaConfigView.getAdminUser());
    assertEquals(HOSTNAME, freeIpaConfigView.getFreeipaToReplicate());
    assertEquals(backupLocation, freeIpaConfigView.getBackup().getLocation());
    assertEquals(CloudPlatform.AWS.name(), freeIpaConfigView.getBackup().getPlatform());
    assertEquals(expectedHosts, freeIpaConfigView.getHosts());
    assertEquals(List.of(CIDR), freeIpaConfigView.getCidrBlocks());
}
Also used : S3CloudStorageV1Parameters(com.sequenceiq.common.api.cloudstorage.old.S3CloudStorageV1Parameters) FreeIpa(com.sequenceiq.freeipa.entity.FreeIpa) Backup(com.sequenceiq.freeipa.api.model.Backup) Network(com.sequenceiq.freeipa.entity.Network) Node(com.sequenceiq.cloudbreak.common.orchestration.Node) ArgumentMatchers.anyString(org.mockito.ArgumentMatchers.anyString) Stack(com.sequenceiq.freeipa.entity.Stack) GatewayConfig(com.sequenceiq.cloudbreak.orchestrator.model.GatewayConfig) Test(org.junit.jupiter.api.Test) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest)

Example 20 with Backup

use of com.sequenceiq.freeipa.api.model.Backup in project cloudbreak by hortonworks.

the class BackupConverterTest method testConvertFromWhenfreeIpaBackupDisabled.

@Test
public void testConvertFromWhenfreeIpaBackupDisabled() {
    // GIVEN
    BackupRequest backupRequest = new BackupRequest();
    backupRequest.setS3(new S3CloudStorageV1Parameters());
    backupRequest.setStorageLocation("s3://mybucket");
    // WHEN
    Backup result = underTestBackupDisabled.convert(backupRequest);
    // THEN
    assertThat(result, is(IsNull.nullValue()));
}
Also used : BackupRequest(com.sequenceiq.common.api.backup.request.BackupRequest) S3CloudStorageV1Parameters(com.sequenceiq.common.api.cloudstorage.old.S3CloudStorageV1Parameters) Backup(com.sequenceiq.freeipa.api.model.Backup) Test(org.junit.jupiter.api.Test)

Aggregations

Backup (com.sequenceiq.freeipa.api.model.Backup)30 Test (org.junit.Test)13 Telemetry (com.sequenceiq.common.api.telemetry.model.Telemetry)12 Test (org.junit.jupiter.api.Test)10 S3CloudStorageV1Parameters (com.sequenceiq.common.api.cloudstorage.old.S3CloudStorageV1Parameters)7 Logging (com.sequenceiq.common.api.telemetry.model.Logging)7 BackupRequest (com.sequenceiq.common.api.backup.request.BackupRequest)6 AdlsGen2CloudStorageV1Parameters (com.sequenceiq.common.api.cloudstorage.old.AdlsGen2CloudStorageV1Parameters)6 Stack (com.sequenceiq.freeipa.entity.Stack)5 CloudFileSystemView (com.sequenceiq.cloudbreak.cloud.model.filesystem.CloudFileSystemView)4 GcsCloudStorageV1Parameters (com.sequenceiq.common.api.cloudstorage.old.GcsCloudStorageV1Parameters)4 DetailedEnvironmentResponse (com.sequenceiq.environment.api.v1.environment.model.response.DetailedEnvironmentResponse)4 CreateFreeIpaRequest (com.sequenceiq.freeipa.api.v1.freeipa.stack.model.create.CreateFreeIpaRequest)4 InstanceGroup (com.sequenceiq.freeipa.entity.InstanceGroup)4 StackAuthentication (com.sequenceiq.freeipa.entity.StackAuthentication)4 ImageSettingsRequest (com.sequenceiq.freeipa.api.v1.freeipa.stack.model.common.image.ImageSettingsRequest)3 FreeIpa (com.sequenceiq.freeipa.entity.FreeIpa)3 Network (com.sequenceiq.freeipa.entity.Network)3 TelemetryRequest (com.sequenceiq.common.api.telemetry.request.TelemetryRequest)2 FreeIpaServerRequest (com.sequenceiq.freeipa.api.v1.freeipa.stack.model.FreeIpaServerRequest)2