diff --git a/hawkbit-autoconfigure/pom.xml b/hawkbit-autoconfigure/pom.xml
index f0c14eac3..06a52e6a4 100644
--- a/hawkbit-autoconfigure/pom.xml
+++ b/hawkbit-autoconfigure/pom.xml
@@ -27,12 +27,6 @@
${project.version}
true
-
- org.eclipse.hawkbit
- hawkbit-dmf-amqp
- ${project.version}
- true
-
org.eclipse.hawkbit
hawkbit-repository-jpa
diff --git a/hawkbit-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/hawkbit-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index 9219c5312..deb0f089a 100644
--- a/hawkbit-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/hawkbit-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -1,6 +1,5 @@
org.eclipse.hawkbit.autoconfigure.cache.CacheAutoConfiguration
org.eclipse.hawkbit.autoconfigure.ddi.DDiApiAutoConfiguration
-org.eclipse.hawkbit.autoconfigure.dmf.amqp.DmfApiAutoConfiguration
org.eclipse.hawkbit.autoconfigure.mgmt.MgmtApiAutoConfiguration
org.eclipse.hawkbit.autoconfigure.repository.event.EventPublisherAutoConfiguration
org.eclipse.hawkbit.autoconfigure.repository.ArtifactFilesystemAutoConfiguration
diff --git a/hawkbit-starters/hawkbit-boot-starter-dmf-api/README.md b/hawkbit-dmf/hawkbit-boot-starter-dmf-api/README.md
similarity index 100%
rename from hawkbit-starters/hawkbit-boot-starter-dmf-api/README.md
rename to hawkbit-dmf/hawkbit-boot-starter-dmf-api/README.md
diff --git a/hawkbit-starters/hawkbit-boot-starter-dmf-api/pom.xml b/hawkbit-dmf/hawkbit-boot-starter-dmf-api/pom.xml
similarity index 76%
rename from hawkbit-starters/hawkbit-boot-starter-dmf-api/pom.xml
rename to hawkbit-dmf/hawkbit-boot-starter-dmf-api/pom.xml
index bc61937ce..a19c4d22c 100644
--- a/hawkbit-starters/hawkbit-boot-starter-dmf-api/pom.xml
+++ b/hawkbit-dmf/hawkbit-boot-starter-dmf-api/pom.xml
@@ -14,13 +14,32 @@
4.0.0
org.eclipse.hawkbit
- hawkbit-starters
+ hawkbit-dmf-parent
${revision}
+
hawkbit-boot-starter-dmf-api
hawkBit :: Spring Boot Starter DMF API
+
+
+ org.eclipse.hawkbit
+ hawkbit-repository-jpa
+ ${project.version}
+
+
+ org.eclipse.hawkbit
+ hawkbit-autoconfigure
+ ${project.version}
+
+
+ org.eclipse.hawkbit
+ hawkbit-dmf-amqp
+ ${project.version}
+
+
+
org.springframework.boot
@@ -36,23 +55,22 @@
-
- org.eclipse.hawkbit
- hawkbit-dmf-amqp
- ${project.version}
+ com.h2database
+ h2
- org.eclipse.hawkbit
- hawkbit-repository-jpa
- ${project.version}
+ com.microsoft.sqlserver
+ mssql-jdbc
- org.eclipse.hawkbit
- hawkbit-autoconfigure
- ${project.version}
+ org.postgresql
+ postgresql
-
+
+ jakarta.servlet
+ jakarta.servlet-api
+
\ No newline at end of file
diff --git a/hawkbit-autoconfigure/src/main/java/org/eclipse/hawkbit/autoconfigure/dmf/amqp/DmfApiAutoConfiguration.java b/hawkbit-dmf/hawkbit-boot-starter-dmf-api/src/main/java/org/eclipse/hawkbit/autoconfigure/dmf/amqp/DmfApiAutoConfiguration.java
similarity index 100%
rename from hawkbit-autoconfigure/src/main/java/org/eclipse/hawkbit/autoconfigure/dmf/amqp/DmfApiAutoConfiguration.java
rename to hawkbit-dmf/hawkbit-boot-starter-dmf-api/src/main/java/org/eclipse/hawkbit/autoconfigure/dmf/amqp/DmfApiAutoConfiguration.java
diff --git a/hawkbit-dmf/hawkbit-boot-starter-dmf-api/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/hawkbit-dmf/hawkbit-boot-starter-dmf-api/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
new file mode 100644
index 000000000..ed34ea308
--- /dev/null
+++ b/hawkbit-dmf/hawkbit-boot-starter-dmf-api/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -0,0 +1 @@
+org.eclipse.hawkbit.autoconfigure.dmf.amqp.DmfApiAutoConfiguration
\ No newline at end of file
diff --git a/hawkbit-dmf/hawkbit-dmf-amqp/pom.xml b/hawkbit-dmf/hawkbit-dmf-amqp/pom.xml
index 1ef0fcedf..a123be309 100644
--- a/hawkbit-dmf/hawkbit-dmf-amqp/pom.xml
+++ b/hawkbit-dmf/hawkbit-dmf-amqp/pom.xml
@@ -18,6 +18,7 @@
hawkbit-dmf-parent
${revision}
+
hawkbit-dmf-amqp
hawkBit :: DMF :: AMQP 0.9 Implementation
diff --git a/hawkbit-dmf/hawkbit-dmf-api/pom.xml b/hawkbit-dmf/hawkbit-dmf-api/pom.xml
index 2340e638c..841e3423e 100644
--- a/hawkbit-dmf/hawkbit-dmf-api/pom.xml
+++ b/hawkbit-dmf/hawkbit-dmf-api/pom.xml
@@ -12,12 +12,12 @@
4.0.0
-
org.eclipse.hawkbit
hawkbit-dmf-parent
${revision}
+
hawkbit-dmf-api
hawkBit :: DMF :: API
diff --git a/hawkbit-dmf/hawkbit-dmf-rabbitmq-test/pom.xml b/hawkbit-dmf/hawkbit-dmf-rabbitmq-test/pom.xml
index 92367251c..4afad3b4c 100644
--- a/hawkbit-dmf/hawkbit-dmf-rabbitmq-test/pom.xml
+++ b/hawkbit-dmf/hawkbit-dmf-rabbitmq-test/pom.xml
@@ -19,6 +19,7 @@
hawkbit-dmf-parent
${revision}
+
hawkbit-dmf-rabbitmq-test
hawkBit :: DMF :: RabbitMq Test module
diff --git a/hawkbit-runtime/hawkbit-dmf-server/README.md b/hawkbit-dmf/hawkbit-dmf-server/README.md
similarity index 93%
rename from hawkbit-runtime/hawkbit-dmf-server/README.md
rename to hawkbit-dmf/hawkbit-dmf-server/README.md
index 297c4d324..4a46e0855 100644
--- a/hawkbit-runtime/hawkbit-dmf-server/README.md
+++ b/hawkbit-dmf/hawkbit-dmf-server/README.md
@@ -1,48 +1,40 @@
-# hawkBit DMF Server (EXPERIMENTAL!)
-
+# hawkBit DMF Server
The hawkBit DMF Server is a standalone spring-boot application with an embedded servlet container. It should be started
with at least hawkbit-mgmt-server.
## On your own workstation
### Run
-
```bash
java -jar hawkbit-runtime/hawkbit-dmf-server/target/hawkbit-dmf-server-*-SNAPSHOT.jar
```
-
_(Note: you have to add the JDBC driver also to your class path if you intend to use another database than H2.)_
Or:
-
```bash
run org.eclipse.hawkbit.app.dmf.DMFStart
```
-### Clustering (Experimental!!!)
-
+### Clustering (Experimental)
The micro-service instances are configured to communicate via Spring Cloud Bus. You could run multiple instances of any
micro-service but hawkbit-mgmt-server. Management server run some schedulers which shall not run simultaneously - e.g.
auto assignment checker and rollouts executor. To run multiple management server instances you shall do some extensions
of hawkbit to ensure that they wont run schedulers simultaneously or you shall configure all instances but one to do not
run schedulers!
-## Optional Protostuff for Sprign cloud bus
-
+## Optional Protostuff for Spring cloud bus
The micro-service instances are configured to communicate via Spring Cloud Bus. Optionally, you could
use [Protostuff](https://github.com/protostuff/protostuff) based message payload serialization for improved performance.
**Note**: If Protostuff is enabled it shall be enabled on all microservices!
Add/Uncomment to/in your `application.properties` :
-
```properties
spring.cloud.stream.bindings.springCloudBusInput.content-type=application/binary+protostuff
spring.cloud.stream.bindings.springCloudBusOutput.content-type=application/binary+protostuff
```
Add to your `pom.xml` :
-
```xml
io.protostuff
diff --git a/hawkbit-runtime/hawkbit-dmf-server/pom.xml b/hawkbit-dmf/hawkbit-dmf-server/pom.xml
similarity index 57%
rename from hawkbit-runtime/hawkbit-dmf-server/pom.xml
rename to hawkbit-dmf/hawkbit-dmf-server/pom.xml
index 45f31c7bd..10121b354 100644
--- a/hawkbit-runtime/hawkbit-dmf-server/pom.xml
+++ b/hawkbit-dmf/hawkbit-dmf-server/pom.xml
@@ -14,9 +14,10 @@
4.0.0
org.eclipse.hawkbit
- hawkbit-runtime-parent
+ hawkbit-dmf-parent
${revision}
+
hawkbit-dmf-server
hawkBit :: Runtime :: DMF Server
@@ -36,4 +37,31 @@
spring-cloud-stream-binder-rabbit
-
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+ repackage
+
+
+ ${baseDir}
+ ${spring.app.class}
+ JAR
+
+
+
+
+
+
+
+
+ src/main/resources
+
+
+
+
\ No newline at end of file
diff --git a/hawkbit-runtime/hawkbit-dmf-server/src/main/java/org/eclipse/hawkbit/app/dmf/DMFStart.java b/hawkbit-dmf/hawkbit-dmf-server/src/main/java/org/eclipse/hawkbit/app/dmf/DMFStart.java
similarity index 100%
rename from hawkbit-runtime/hawkbit-dmf-server/src/main/java/org/eclipse/hawkbit/app/dmf/DMFStart.java
rename to hawkbit-dmf/hawkbit-dmf-server/src/main/java/org/eclipse/hawkbit/app/dmf/DMFStart.java
diff --git a/hawkbit-runtime/hawkbit-dmf-server/src/main/resources/application-db2.properties b/hawkbit-dmf/hawkbit-dmf-server/src/main/resources/application-db2.properties
similarity index 100%
rename from hawkbit-runtime/hawkbit-dmf-server/src/main/resources/application-db2.properties
rename to hawkbit-dmf/hawkbit-dmf-server/src/main/resources/application-db2.properties
diff --git a/hawkbit-runtime/hawkbit-dmf-server/src/main/resources/application-mssql.properties b/hawkbit-dmf/hawkbit-dmf-server/src/main/resources/application-mssql.properties
similarity index 100%
rename from hawkbit-runtime/hawkbit-dmf-server/src/main/resources/application-mssql.properties
rename to hawkbit-dmf/hawkbit-dmf-server/src/main/resources/application-mssql.properties
diff --git a/hawkbit-runtime/hawkbit-dmf-server/src/main/resources/application-mysql.properties b/hawkbit-dmf/hawkbit-dmf-server/src/main/resources/application-mysql.properties
similarity index 100%
rename from hawkbit-runtime/hawkbit-dmf-server/src/main/resources/application-mysql.properties
rename to hawkbit-dmf/hawkbit-dmf-server/src/main/resources/application-mysql.properties
diff --git a/hawkbit-runtime/hawkbit-dmf-server/src/main/resources/application-postgresql.properties b/hawkbit-dmf/hawkbit-dmf-server/src/main/resources/application-postgresql.properties
similarity index 100%
rename from hawkbit-runtime/hawkbit-dmf-server/src/main/resources/application-postgresql.properties
rename to hawkbit-dmf/hawkbit-dmf-server/src/main/resources/application-postgresql.properties
diff --git a/hawkbit-runtime/hawkbit-dmf-server/src/main/resources/application.properties b/hawkbit-dmf/hawkbit-dmf-server/src/main/resources/application.properties
similarity index 100%
rename from hawkbit-runtime/hawkbit-dmf-server/src/main/resources/application.properties
rename to hawkbit-dmf/hawkbit-dmf-server/src/main/resources/application.properties
diff --git a/hawkbit-runtime/hawkbit-dmf-server/src/main/resources/banner.txt b/hawkbit-dmf/hawkbit-dmf-server/src/main/resources/banner.txt
similarity index 100%
rename from hawkbit-runtime/hawkbit-dmf-server/src/main/resources/banner.txt
rename to hawkbit-dmf/hawkbit-dmf-server/src/main/resources/banner.txt
diff --git a/hawkbit-dmf/pom.xml b/hawkbit-dmf/pom.xml
index 325728619..081d03b3c 100644
--- a/hawkbit-dmf/pom.xml
+++ b/hawkbit-dmf/pom.xml
@@ -24,6 +24,9 @@
hawkbit-dmf-api
hawkbit-dmf-amqp
+ hawkbit-boot-starter-dmf-api
+ hawkbit-dmf-server
+
hawkbit-dmf-rabbitmq-test
\ No newline at end of file
diff --git a/hawkbit-runtime/pom.xml b/hawkbit-runtime/pom.xml
index 14cae7032..2e4238166 100644
--- a/hawkbit-runtime/pom.xml
+++ b/hawkbit-runtime/pom.xml
@@ -86,7 +86,6 @@
hawkbit-ddi-server
- hawkbit-dmf-server
hawkbit-mgmt-server
hawkbit-simple-ui
diff --git a/hawkbit-starters/pom.xml b/hawkbit-starters/pom.xml
index e7decc60b..79706886f 100644
--- a/hawkbit-starters/pom.xml
+++ b/hawkbit-starters/pom.xml
@@ -24,6 +24,5 @@
hawkbit-boot-starter
hawkbit-boot-starter-mgmt-api
hawkbit-boot-starter-ddi-api
- hawkbit-boot-starter-dmf-api
\ No newline at end of file