diff --git a/fda-container-service/rest-service/src/test/java/at/tuwien/BaseUnitTest.java b/fda-container-service/rest-service/src/test/java/at/tuwien/BaseUnitTest.java index 786f63a224b4e979d82bb4d8eec4ce448ca1f30a..d7bac1438f185a1064d86896f733ff753f6284c6 100644 --- a/fda-container-service/rest-service/src/test/java/at/tuwien/BaseUnitTest.java +++ b/fda-container-service/rest-service/src/test/java/at/tuwien/BaseUnitTest.java @@ -32,33 +32,38 @@ public abstract class BaseUnitTest { public final static String IMAGE_1_LOGO = "AAAA"; public final static Instant IMAGE_1_BUILT = Instant.now().minus(40, HOURS); public final static List<ContainerImageEnvironmentItem> IMAGE_1_ENV = List.of(ContainerImageEnvironmentItem.builder() + .iid(IMAGE_1_ID) .key("MARIADB_USER") .value("mariadb") .type(ContainerImageEnvironmentItemType.OTHER) .build(), ContainerImageEnvironmentItem.builder() + .iid(IMAGE_1_ID) .key("MARIADB_PASSWORD") .value("mariadb") .type(ContainerImageEnvironmentItemType.OTHER) .build(), ContainerImageEnvironmentItem.builder() + .iid(IMAGE_1_ID) .key("MARIADB_ROOT_PASSWORD") .value("mariadb") .type(ContainerImageEnvironmentItemType.PASSWORD) .build()); public final static ImageEnvItemDto[] IMAGE_1_ENV_DTO = List.of(ImageEnvItemDto.builder() - .key("POSTGRES_USER") - .value("postgres") + .iid(IMAGE_1_ID) + .key("MARIADB_USER") + .value("mariadb") .type(ImageEnvItemTypeDto.USERNAME) .build(), ImageEnvItemDto.builder() - .key("POSTGRES_PASSWORD") - .value("postgres") + .iid(IMAGE_1_ID) + .key("MARIADB_PASSWORD") + .value("mariadb") .type(ImageEnvItemTypeDto.PASSWORD) .build()) .toArray(new ImageEnvItemDto[0]); - public final static List<String> IMAGE_1_ENVIRONMENT = List.of("POSTGRES_USER=postgres", - "POSTGRES_PASSWORD=postgres"); + public final static List<String> IMAGE_1_ENVIRONMENT = List.of("MARIADB_USER=mariadb", + "MARIADB_PASSWORD=mariadb", "MARIADB_ROOT_PASSWORD=mariadb"); public final static ContainerImage IMAGE_1 = ContainerImage.builder() .id(IMAGE_1_ID) @@ -76,20 +81,6 @@ public abstract class BaseUnitTest { .logo(IMAGE_1_LOGO) .build(); - public final static ImageDto IMAGE_1_DTO = ImageDto.builder() - .repository(IMAGE_1_REPOSITORY) - .tag(IMAGE_1_TAG) - .hash(IMAGE_1_HASH) - .jdbcMethod(IMAGE_1_JDBC) - .dialect(IMAGE_1_DIALECT) - .driverClass(IMAGE_1_DRIVER) - .compiled(IMAGE_1_BUILT) - .size(BigInteger.valueOf(IMAGE_1_SIZE)) - .environment(IMAGE_1_ENV_DTO) - .defaultPort(IMAGE_1_PORT) - .logo(IMAGE_1_LOGO) - .build(); - public final static Long CONTAINER_1_ID = 1L; public final static String CONTAINER_1_HASH = "deadbeef"; public final static ContainerImage CONTAINER_1_IMAGE = IMAGE_1; diff --git a/fda-database-service/rest-service/src/test/java/at/tuwien/BaseUnitTest.java b/fda-database-service/rest-service/src/test/java/at/tuwien/BaseUnitTest.java index 278ec3ec97a92d0fca12e8631d85f8f03044e9fe..3ff029b54a7bec0dc3cdff6fbb5f0cc90c1e17a0 100644 --- a/fda-database-service/rest-service/src/test/java/at/tuwien/BaseUnitTest.java +++ b/fda-database-service/rest-service/src/test/java/at/tuwien/BaseUnitTest.java @@ -34,21 +34,25 @@ public abstract class BaseUnitTest { public final static Instant IMAGE_1_CREATED = Instant.now().minus(40, HOURS); public final static Instant IMAGE_1_UPDATED = Instant.now().minus(39, HOURS); public final static List<ContainerImageEnvironmentItem> IMAGE_1_ENVIRONMENT = List.of(ContainerImageEnvironmentItem.builder() + .iid(IMAGE_1_ID) .type(ContainerImageEnvironmentItemType.PASSWORD) .key("MARIADB_ROOT_PASSWORD") .value("mariadb") .build(), ContainerImageEnvironmentItem.builder() + .iid(IMAGE_1_ID) .type(ContainerImageEnvironmentItemType.USERNAME) .key("UZERNAME") .value("root") .build(), ContainerImageEnvironmentItem.builder() + .iid(IMAGE_1_ID) .type(ContainerImageEnvironmentItemType.OTHER) .key("MARIADB_USER") .value("mariadb") .build(), ContainerImageEnvironmentItem.builder() + .iid(IMAGE_1_ID) .type(ContainerImageEnvironmentItemType.OTHER) .key("MARIADB_PASSWORD") .value("mariadb") @@ -112,7 +116,7 @@ public abstract class BaseUnitTest { .name(CONTAINER_1_NAME) .hash(CONTAINER_1_HASH) .internalName(CONTAINER_1_INTERNALNAME) - .containerCreated(CONTAINER_1_CREATED) + .created(CONTAINER_1_CREATED) .lastModified(CONTAINER_1_UPDATED) .image(IMAGE_1) .build(); @@ -122,7 +126,7 @@ public abstract class BaseUnitTest { .name(CONTAINER_2_NAME) .hash(CONTAINER_2_HASH) .internalName(CONTAINER_2_INTERNALNAME) - .containerCreated(CONTAINER_2_CREATED) + .created(CONTAINER_2_CREATED) .lastModified(CONTAINER_2_UPDATED) .image(IMAGE_1) .build(); diff --git a/fda-database-service/services/src/main/java/at/tuwien/service/impl/HibernateConnector.java b/fda-database-service/services/src/main/java/at/tuwien/service/impl/HibernateConnector.java index e55025185d0fd934237ca10594e152e59c113069..adf076d264f357633a95afb8a340e9d1ce1dba86 100644 --- a/fda-database-service/services/src/main/java/at/tuwien/service/impl/HibernateConnector.java +++ b/fda-database-service/services/src/main/java/at/tuwien/service/impl/HibernateConnector.java @@ -27,32 +27,21 @@ public abstract class HibernateConnector { private static final Integer TIMEOUT = 1800; private static final String SESSION_CONTEXT = "thread"; private static final String COORDINATOR_CLASS = "jdbc"; + private static final String MARIADB_USERNAME = "root"; + private static final String MARIADB_PASSWORD = "mariadb"; @Transactional protected SessionFactory getSessionFactory(Container container) { final String url = "jdbc:" + container.getImage().getJdbcMethod() + "://" + container.getInternalName() + "/"; log.trace("hibernate jdbc url '{}'", url); - final String username = container.getImage().getEnvironment() - .stream() - .filter(e -> e.getType().equals(ContainerImageEnvironmentItemType.USERNAME)) - .map(ContainerImageEnvironmentItem::getValue) - .collect(Collectors.toList()) - .get(0); - final String password = container.getImage().getEnvironment() - .stream() - .filter(e -> e.getType().equals(ContainerImageEnvironmentItemType.PASSWORD)) - .map(ContainerImageEnvironmentItem::getValue) - .collect(Collectors.toList()) - .get(0); final Configuration configuration = new Configuration() .setProperty("hibernate.connection.url", url) - .setProperty("hibernate.connection.username", username) - .setProperty("hibernate.connection.password", password) + .setProperty("hibernate.connection.username", MARIADB_USERNAME) + .setProperty("hibernate.connection.password", MARIADB_PASSWORD) .setProperty("hibernate.connection.driver_class", container.getImage().getDriverClass()) .setProperty("hibernate.dialect", container.getImage().getDialect()) .setProperty("hibernate.current_session_context_class", SESSION_CONTEXT) .setProperty("hibernate.transaction.coordinator_class", COORDINATOR_CLASS) -// .setProperty("hibernate.hbm2ddl.auto", "update") .setProperty("hibernate.c3p0.min_size", String.valueOf(MIN_SIZE)) .setProperty("hibernate.c3p0.max_size", String.valueOf(MAX_SIZE)) .setProperty("hibernate.c3p0.acquire_increment", String.valueOf(INCREMENT_SIZE)) diff --git a/fda-metadata-db/api/src/main/java/at/tuwien/api/container/image/ImageEnvItemDto.java b/fda-metadata-db/api/src/main/java/at/tuwien/api/container/image/ImageEnvItemDto.java index 7c17ad315e48bac1fce3b66ab1318d4b1652e54e..f52f97668bd0533fe524f6bff8b45c78ccee8db5 100644 --- a/fda-metadata-db/api/src/main/java/at/tuwien/api/container/image/ImageEnvItemDto.java +++ b/fda-metadata-db/api/src/main/java/at/tuwien/api/container/image/ImageEnvItemDto.java @@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.*; import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; @Getter @Setter @@ -13,6 +14,10 @@ import javax.validation.constraints.NotBlank; @NoArgsConstructor public class ImageEnvItemDto { + @NotNull + @ApiModelProperty(required = true, example = "1") + private Long iid; + @NotBlank @ApiModelProperty(required = true, example = "POSTGRES_USER") private String key; diff --git a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/Container.java b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/Container.java index fd8085d2041cac0f44ca0254828ed769e2dd9af3..003c410067f60413297e8e5cb8c95f7071983a35 100644 --- a/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/Container.java +++ b/fda-metadata-db/entities/src/main/java/at/tuwien/entities/container/Container.java @@ -23,7 +23,7 @@ import java.util.List; @Where(clause = "deleted is null") @EntityListeners(AuditingEntityListener.class) @EqualsAndHashCode(onlyExplicitlyIncluded = true) -@SQLDelete(sql = "update mdb_container set deleted = NOW() where id = ?") +@SQLDelete(sql = "update mdb_containers set deleted = NOW() where id = ?") @Table(name = "mdb_containers") public class Container {