diff --git a/pom.xml b/pom.xml index 537681d180e9acad6d0d8c8b9b747b6ae642207f..b1a1483b7bce09366b09c8ec84a4d0aa6aa22820 100644 --- a/pom.xml +++ b/pom.xml @@ -15,6 +15,7 @@ <description>OZG Cloud Operator</description> <properties> <java.version>17</java.version> + <operator-sdk.version>5.0.0</operator-sdk.version> </properties> <dependencies> <dependency> @@ -22,6 +23,12 @@ <artifactId>spring-boot-starter</artifactId> </dependency> + <dependency> + <groupId>io.javaoperatorsdk</groupId> + <artifactId>operator-framework-spring-boot-starter</artifactId> + <version>${operator-sdk.version}</version> + </dependency> + <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> diff --git a/src/main/java/de/ozgcloud/operator/Config.java b/src/main/java/de/ozgcloud/operator/Config.java new file mode 100644 index 0000000000000000000000000000000000000000..2995687a336a1a24b759516144eb4150bb4c0e76 --- /dev/null +++ b/src/main/java/de/ozgcloud/operator/Config.java @@ -0,0 +1,21 @@ +package de.ozgcloud.operator; + +import java.util.List; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import io.javaoperatorsdk.operator.Operator; +import io.javaoperatorsdk.operator.api.reconciler.Reconciler; + +@Configuration +public class Config { + + @Bean(initMethod = "start", destroyMethod = "stop") + @SuppressWarnings("rawtypes") + Operator operator(List<Reconciler> controllers) { + Operator operator = new Operator(); + controllers.forEach(operator::register); + return operator; + } +} \ No newline at end of file diff --git a/src/main/java/de/ozgcloud/operator/OzgOperatorApplication.java b/src/main/java/de/ozgcloud/operator/OzgOperatorApplication.java index 13379e2d021ca73f0275063acbb3a96ae6215231..170f79faf1bff3943c8555c78d1e9e9c55bef4a9 100644 --- a/src/main/java/de/ozgcloud/operator/OzgOperatorApplication.java +++ b/src/main/java/de/ozgcloud/operator/OzgOperatorApplication.java @@ -9,5 +9,4 @@ public class OzgOperatorApplication { public static void main(String[] args) { SpringApplication.run(OzgOperatorApplication.class, args); } - } diff --git a/src/test/java/de/ozgcloud/operator/OzgOperatorApplicationTests.java b/src/test/java/de/ozgcloud/operator/OzgOperatorApplicationTests.java index 1485428c983468d53f208ecb32bb61df1afa03f6..f0e83527efb2274dd882e9a31c045ff7ea6cf060 100644 --- a/src/test/java/de/ozgcloud/operator/OzgOperatorApplicationTests.java +++ b/src/test/java/de/ozgcloud/operator/OzgOperatorApplicationTests.java @@ -1,9 +1,8 @@ package de.ozgcloud.operator; import org.junit.jupiter.api.Test; -import org.springframework.boot.test.context.SpringBootTest; -@SpringBootTest +//@SpringBootTest class OzgOperatorApplicationTests { @Test