From daaf047a4f7e8e688797b940d46f12d0bc626790 Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Fri, 21 Jan 2022 08:56:08 +0100 Subject: [PATCH] OZG-1521 OZG-1995 mongock --- pluto-server/pom.xml | 28 +++++++++++++++++++ .../ozg/pluto/PlutoServerApplication.java | 6 ++-- .../pluto/migration/TestCreateCollection.java | 19 +++++++++++++ .../src/main/resources/application-local.yml | 10 ++++++- 4 files changed, 60 insertions(+), 3 deletions(-) create mode 100644 pluto-server/src/main/java/de/itvsh/ozg/pluto/migration/TestCreateCollection.java diff --git a/pluto-server/pom.xml b/pluto-server/pom.xml index bf1b82a13..2366101b2 100644 --- a/pluto-server/pom.xml +++ b/pluto-server/pom.xml @@ -179,7 +179,35 @@ <version>1.15.3</version> <scope>test</scope> </dependency> + + <!-- mongock --> + <dependency> + <groupId>io.mongock</groupId> + <artifactId>mongock-springboot</artifactId> + <version>5.0.35</version> + </dependency> + <dependency> + <groupId>io.mongock</groupId> + <artifactId>mongock-driver-core</artifactId> + <version>5.0.35</version> + </dependency> + <dependency> + <groupId>io.mongock</groupId> + <artifactId>mongodb-springdata-v2-driver</artifactId> + <version>5.0.35</version> + </dependency> </dependencies> + + <dependencyManagement> + <dependencies> + <dependency> + <groupId>io.mongock</groupId> + <artifactId>mongock-core-bom</artifactId> + <version>5.0.35</version> + <type>pom</type> + </dependency> + </dependencies> + </dependencyManagement> <build> <finalName>${project.artifactId}</finalName> diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/PlutoServerApplication.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/PlutoServerApplication.java index d7877071d..1965aee35 100644 --- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/PlutoServerApplication.java +++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/PlutoServerApplication.java @@ -8,15 +8,17 @@ import org.springframework.context.annotation.EnableAspectJAutoProxy; import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.scheduling.annotation.EnableScheduling; +import io.mongock.runner.springboot.EnableMongock; + @SpringBootApplication(scanBasePackages = "de.itvsh.*") @EnableAsync @EnableScheduling @EnableAspectJAutoProxy(proxyTargetClass = true) +@EnableMongock public class PlutoServerApplication { public static void main(String[] args) { TimeZone.setDefault(TimeZone.getTimeZone("UTC")); SpringApplication.run(PlutoServerApplication.class, args); } - -} +} \ No newline at end of file diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/migration/TestCreateCollection.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/migration/TestCreateCollection.java new file mode 100644 index 000000000..913b0441d --- /dev/null +++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/migration/TestCreateCollection.java @@ -0,0 +1,19 @@ +package de.itvsh.ozg.pluto.migration; + +import io.mongock.api.annotations.ChangeUnit; +import io.mongock.api.annotations.Execution; +import io.mongock.api.annotations.RollbackExecution; + +@ChangeUnit(id = "2022-01-21", order = "1", author = "mongock") +public class TestCreateCollection { + + @Execution + public void changeSet() { + System.out.println("Execution"); + } + + @RollbackExecution + public void doSomething() { + System.out.println("Rollback"); + } +} \ No newline at end of file diff --git a/pluto-server/src/main/resources/application-local.yml b/pluto-server/src/main/resources/application-local.yml index d4df97c89..894f19c15 100644 --- a/pluto-server/src/main/resources/application-local.yml +++ b/pluto-server/src/main/resources/application-local.yml @@ -9,10 +9,18 @@ server: management: server.port: 8083 +mongock: + runner-type: initializingbean + change-logs-scan-package: + - de.itvsh.ozg.pluto.migration + enabled: true + spring: data: mongodb: - database: pluto-local + database: pluto-local + #nur zum localen testen(sollte aus dem rancher gezogen werden) + uri: mongodb://localhost:27018/test mail: username: ea@ozg-sh.de password: skdljf39jx -- GitLab