@@ -2,76 +2,50 @@ group = "com.hivemq"
22
33plugins {
44 id(" com.hivemq.edge-version-updater" )
5- id(" com.hivemq.repository-convention" )
65 id(" io.github.sgtsilvio.gradle.oci" ) version " 0.22.0"
7- id(" jacoco" )
86}
97
10- jacoco {
11- toolVersion = libs.versions.jacoco.get()
12- }
13-
14- // Repository settings are now applied by the repository-convention plugin
15-
168tasks.register(" clean" ) {
179 group = " build"
18- // required since we don't apply the base plugin and otherwise the reports can't be cleaned out
19- project.delete(files(" ${project.layout.buildDirectory.get()} " ))
20- dependsOn(gradle.includedBuilds.map { it.task(" :clean" ) })
10+
11+ gradle.includedBuilds.forEach {
12+ dependsOn(it.task(" :$name " ))
13+ }
2114}
2215
2316tasks.register(" build" ) {
2417 group = " build"
2518
26- dependsOn(gradle.includedBuilds.map { it.task(" :$name " ) })
27- }
28-
29- tasks.register(" license" ) {
30- group = " license"
31-
32- dependsOn(gradle.includedBuilds.filter { it.name != " edge-plugins" }.map { it.task(" :$name " ) })
19+ gradle.includedBuilds.forEach {
20+ dependsOn(it.task(" :$name " ))
21+ }
3322}
3423
3524tasks.register(" check" ) {
3625 group = " verification"
3726
38- dependsOn(gradle.includedBuilds.map { it.task(" :$name " ) })
27+ gradle.includedBuilds.forEach {
28+ dependsOn(it.task(" :$name " ))
29+ }
3930}
4031
4132tasks.register(" test" ) {
4233 group = " verification"
4334
44- dependsOn(gradle.includedBuilds.map { it.task(" :$name " ) })
35+ gradle.includedBuilds.forEach {
36+ dependsOn(it.task(" :$name " ))
37+ }
4538}
4639
4740tasks.register(" classes" ) {
48- dependsOn(gradle.includedBuilds.map { it.task(" :$name " ) })
41+ gradle.includedBuilds.forEach {
42+ dependsOn(it.task(" :$name " ))
43+ }
4944}
5045
5146tasks.register(" testClasses" ) {
52- dependsOn(gradle.includedBuilds.map { it.task(" :$name " ) })
53- }
54-
55-
56- tasks.register<JacocoReport >(" jacocoMergedReport" ) {
57- dependsOn(gradle.includedBuilds.map { it.task(" :test" ) }) // Run tests in included builds
58-
59- val executionDataFiles: FileCollection = files(gradle.includedBuilds.map { file(it.projectDir.absolutePath + " /build/jacoco/test.exec" ) })
60- val classFiles = files(gradle.includedBuilds.map { fileTree(it.projectDir.absolutePath + " /build/classes/java/main" ) {
61- include(" **/*.class" )
62- exclude(" com/hivemq/edge/api/model/**" ) // Exclude generated classes
63- } })
64-
65- executionData.setFrom(executionDataFiles)
66- classDirectories.setFrom(classFiles)
67-
68- sourceDirectories.setFrom(
69- files(gradle.includedBuilds.map { file(it.projectDir.absolutePath + " /src/main/java" )})
70- )
71-
72- reports {
73- xml.required.set(true )
74- html.required.set(true )
47+ gradle.includedBuilds.forEach {
48+ dependsOn(it.task(" :$name " ))
7549 }
7650}
7751
@@ -110,7 +84,7 @@ dependencies {
11084 edgeModule(" com.hivemq:hivemq-edge-module-plc4x" )
11185 edgeModule(" com.hivemq:hivemq-edge-module-opcua" )
11286 edgeModule(" com.hivemq:hivemq-edge-module-modbus" )
113- edgeModule(" com.hivemq:hivemq-edge-module-mtconnect " )
87+ edgeModule(" com.hivemq:hivemq-edge-module-postgresql " )
11488}
11589
11690val hivemqEdgeZip by tasks.registering(Zip ::class ) {
@@ -135,7 +109,6 @@ val edgeProjectsToUpdate = setOf(
135109 " hivemq-edge-module-file" ,
136110 " hivemq-edge-module-http" ,
137111 " hivemq-edge-module-modbus" ,
138- " hivemq-edge-module-mtconnect" ,
139112 " hivemq-edge-module-opcua" ,
140113 " hivemq-edge-module-plc4x" ,
141114 " hivemq-edge-module-postgresql"
@@ -147,15 +120,6 @@ tasks.register("updateDependantVersions") {
147120 edgeProjectsToUpdate.forEach {
148121 dependsOn(gradle.includedBuild(it).task(" :updateVersion" ))
149122 }
150- doLast {
151- val prevVersion = project.findProperty(" prevVersion" ) as String?
152- val version = project.findProperty(" version" ) as String?
153- if (prevVersion != null && prevVersion.endsWith(" -SNAPSHOT" )) {
154- file(" ext/hivemq-edge-openapi-$prevVersion .yaml" ).renameTo(file(" ext/hivemq-edge-openapi-$version .yaml" ))
155- } else {
156- file(" ext/hivemq-edge-openapi-$prevVersion .yaml" ).copyTo(file(" ext/hivemq-edge-openapi-$version .yaml" ))
157- }
158- }
159123}
160124
161125
@@ -209,9 +173,9 @@ oci {
209173 layer(" hivemq" ) {
210174 contents {
211175 into(" opt" ) {
212- filePermissions = 0b110_110_110
213- directoryPermissions = 0b111_111_111
214- permissions(" **/*.sh" , 0b111_111_111 )
176+ filePermissions = 0b110_110_000
177+ directoryPermissions = 0b111_111_000
178+ permissions(" **/*.sh" , 0b111_111_000 )
215179 from(" docker/docker-entrypoint.sh" )
216180 into(" hivemq" ) {
217181 from(" ./hivemq-edge/src/distribution" ) { filter { exclude(" **/.gitkeep" ) } }
@@ -233,8 +197,8 @@ oci {
233197 layer(" open-source-modules" ) {
234198 contents {
235199 into(" opt" ) {
236- filePermissions = 0b110_110_110
237- directoryPermissions = 0b111_111_111
200+ filePermissions = 0b110_110_000
201+ directoryPermissions = 0b111_111_000
238202 into(" hivemq/modules" ) {
239203 // copy OSS modules
240204 from(openSourceEdgeModuleBinaries.elements)
@@ -248,3 +212,6 @@ oci {
248212 specificPlatform(platform(" linux" , " arm" , " v7" ))
249213 }
250214}
215+
216+
217+
0 commit comments