commit - b346a19f9bf94df36ac6f33b0ac32e802adbe67d
commit + 03fcc26854c53b9a200e2f532905f4e10c7f82e5
blob - 0ee66fb2084bb206ad49d2fbf23e42e75f8d59dc
blob + 3540160a1a9d5215fe856adfecb542addf230f43
--- .gitlab-ci.yml
+++ .gitlab-ci.yml
stage: my-build-stage
variables:
MY_CACHE_POLICY: pull-push
- script: gradle --build-cache assemble
+ script: gradle assemble
my-test-job:
extends:
blob - 7be0c30e098c29b3d6a09319e50bdb25de2b9afb
blob + dd55f1470d8bb4bbce2604f463900b1c65a6e39d
--- build.gradle
+++ build.gradle
// Run 'createKeyAndTruststore' first and/or customize as needed
//apply from: rootProject.file('gradle/signjar.gradle')
apply from: rootProject.file('gradle/spotbugs.gradle')
+ //apply from: rootProject.file('gradle/spotless.gradle')
}
apply from: rootProject.file('gradle/build-dashboard.gradle')
blob - 908e708d3e09b2c222b8e759a0fd2a60abe811a6
blob + ff660072c852ab16dce2ae9b193e6b0068ec6353
--- gradle/docker.gradle
+++ gradle/docker.gradle
import com.bmuschko.gradle.docker.tasks.image.Dockerfile.Healthcheck
tasks.register('createDockerfile', Dockerfile) {
- group 'docker'
- description 'Creates Dockerfile for Karaf-based applications'
+ group = 'docker'
+ description = 'Creates Dockerfile for Karaf-based applications'
from(docker_fromImage)
exposePort(1099, 8101, 8181, 44444)
instruction("COPY --chown=${docker_copyChownUid}:${docker_copyChownUid} build/install/* /app/")
blob - bac98e15e0ac82b6cd638b4b9664ff3834c4c165
blob + 7ce4a1647f19541233ab3bcac79cf2cd141c817d
--- gradle/jib.gradle
+++ gradle/jib.gradle
jib {
from {
- image docker_fromImage
+ image = docker_fromImage
}
def gitlabCi = System.getenv('GITLAB_CI')
def registryImage
+ def appName = jibDist.empty ? name : "${name}-" + jibDist.toLowerCase()
if (gitlabCi) {
registryImage = System.getenv('CI_REGISTRY_IMAGE')
- def appName = jibDist.empty ? name : "${name}-" + jibDist.toLowerCase()
registryImage = "${registryImage}/${appName}"
def ciRegistryPassword = System.getenv('CI_REGISTRY_PASSWORD')
def ciRegistryUser = System.getenv('CI_REGISTRY_USER')
to {
- image "${registryImage}:${version}"
+ image = "${registryImage}:${version}"
auth {
username = ciRegistryUser
password = ciRegistryPassword
}
} else {
registryImage = docker_toBaseImage
- def appName = jibDist.empty ? name : "${name}-" + jibDist.toLowerCase()
registryImage = "${registryImage}/${appName}"
to {
- image "${registryImage}:${version}"
+ image = "${registryImage}:${version}"
}
}
+ outputPaths {
+ def baseOutputPath = project.layout.buildDirectory.dir('jib').get().file("${appName}-${version}").toString()
+ tar = "${baseOutputPath}.tar"
+ }
// Hack for empty configuration
configurationName = "dummy"
container {
}
tasks.jib.dependsOn "install${jibDist}Dist"
+tasks.jibBuildTar.dependsOn "install${jibDist}Dist"
tasks.jibDockerBuild.dependsOn "install${jibDist}Dist"
blob - 991d8f00d3c1f1b026eb50e441cd1ea3abc1e89a
blob + a140f61cc681ac51b052eed6a3aa2f941f1f98c7
--- gradle/libs.versions.toml
+++ gradle/libs.versions.toml
apache-felix-metatype = '1.2.4'
apache-felix-scr = '2.2.12'
apache-karaf = '4.4.7'
-checkstyle = '10.21.2'
+checkstyle = '10.21.4'
commons-io = '2.18.0'
-cxf = '3.6.5'
+cxf = '3.6.6'
findsecbugs = '1.13.0'
-gradle-axion-release = '1.17.2'
-gradle-biz-aqute-bnd = '7.0.0'
+gradle-axion-release = '1.18.8'
+gradle-biz-aqute-bnd = '7.1.0'
gradle-commitlint = '1.4.3'
-gradle-cyclonedx = '1.8.2'
+gradle-cyclonedx = '2.2.0'
gradle-editorconfig = '0.1.0'
gradle-githook = '1.2.1'
-gradle-git-changelog = '2.1.2'
-gradle-openapi-generator = '7.11.0'
-gradle-owasp-check = '9.1.0'
-gradle-docker-compose = '0.17.6'
+gradle-git-changelog = '3.0.6'
+gradle-docker-compose = '0.17.12'
gradle-docker-plugin = '9.4.0'
-gradle-jib = '3.4.4'
+gradle-jib = '3.4.5'
gradle-jib-ownership-extension = '0.1.0'
gradle-karaf = '0.5.6'
gradle-license = '0.16.1'
-gradle-lombok = '8.6'
+gradle-lombok = '8.13'
+gradle-openapi-generator = '7.12.0'
+gradle-owasp-check = '12.1.0'
gradle-proguard = '7.4.0'
-gradle-spotbugs = '6.1.2'
-gradle-versions-deps = '0.51.0'
+gradle-spotbugs = '6.1.7'
+gradle-spotless = '7.0.2'
+gradle-versions-deps = '0.52.0'
+gson-fire = '1.9.0'
hawtio = '2.17.7'
jacoco = '0.8.12'
-jackson = '2.18.2'
+jackson = '2.18.3'
jline = '3.21.0'
jansi = '2.4.1'
-jakarta-validation-api = '3.1.0'
+jakarta-annotation-api = '3.0.0'
+jakarta-validation-api = '3.1.1'
javax-inject = '1'
javax-servlet-api = '4.0.1'
javax-ws-rs-api = '2.1.1'
jfiglet = '0.0.9'
+jsr305 = '3.0.2'
junit-jupiter = '5.11.4'
+okhttp3 = '4.12.0'
lombok = '1.18.36'
maven-exec = '4.0.0'
osgi-annotation = '2.0.0'
osgi-util-promise = '1.3.0'
pax-exam = '4.14.0'
pax-logging-api = '2.2.8'
-pmd = '7.9.0'
+pmd = '7.12.0'
shadow = '8.1.1'
shiro = '1.10.1'
slf4j-api = '2.0.13'
-spotbugs = '4.9.0'
-swagger = '2.2.28'
+spotbugs = '4.9.3'
+swagger = '2.2.29'
swagger-ui = '4.1.2'
[libraries]
gradle-editorconfig = { module = 'org.ec4j.editorconfig:org.ec4j.editorconfig.gradle.plugin', version.ref = 'gradle-editorconfig' }
gradle-githook = { module = 'com.star-zero.gradle:githook', version.ref = 'gradle-githook' }
gradle-git-changelog = { module = 'se.bjurr.gitchangelog:git-changelog-gradle-plugin', version.ref = 'gradle-git-changelog' }
-gradle-owasp-check = { module = 'org.owasp:dependency-check-gradle', version.ref = 'gradle-owasp-check' }
gradle-docker-compose = { module = 'com.avast.gradle:gradle-docker-compose-plugin', version.ref = 'gradle-docker-compose' }
gradle-docker-plugin = { module = 'com.bmuschko:gradle-docker-plugin', version.ref = 'gradle-docker-plugin' }
gradle-jib = { module = 'com.google.cloud.tools:jib-gradle-plugin', version.ref = 'gradle-jib' }
gradle-license = { module = 'gradle.plugin.com.hierynomus.gradle.plugins:license-gradle-plugin', version.ref = 'gradle-license' }
gradle-lombok = { module = 'io.freefair.gradle:lombok-plugin', version.ref = 'gradle-lombok' }
gradle-openapi-generator = { module = 'org.openapi.generator:org.openapi.generator.gradle.plugin', version.ref = 'gradle-openapi-generator' }
+gradle-owasp-check = { module = 'org.owasp:dependency-check-gradle', version.ref = 'gradle-owasp-check' }
gradle-proguard = { module = 'com.guardsquare:proguard-gradle', version.ref = 'gradle-proguard' }
gradle-spotbugs = { module = 'com.github.spotbugs.snom:spotbugs-gradle-plugin', version.ref = 'gradle-spotbugs' }
+gradle-spotless = { module = 'com.diffplug.gradle.spotless:com.diffplug.gradle.spotless.gradle.plugin', version.ref = 'gradle-spotless' }
gradle-swagger = { module = 'io.swagger.core.v3.swagger-gradle-plugin:io.swagger.core.v3.swagger-gradle-plugin.gradle.plugin', version.ref = 'swagger' }
gradle-versions-deps = { module = 'com.github.ben-manes:gradle-versions-plugin', version.ref = 'gradle-versions-deps' }
+gson-fire = { module = 'io.gsonfire:gson-fire', version.ref = 'gson-fire' }
hawtio-plugin-mbean = { module = 'io.hawt:hawtio-plugin-mbean', version.ref = 'hawtio' }
jackson-annotations = { module = 'com.fasterxml.jackson.core:jackson-annotations', version.ref = 'jackson' }
jackson-databind = { module = 'com.fasterxml.jackson.core:jackson-databind', version.ref = 'jackson' }
jackson-jaxrs-json-provider = { module = 'com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider', version.ref = 'jackson' }
jansi = { module = 'org.fusesource.jansi:jansi', version.ref = 'jansi' }
+jakarta-annotation-api = { module = 'jakarta.annotation:jakarta.annotation-api', version.ref = 'jakarta-annotation-api' }
jakarta-validation-api = { module = 'jakarta.validation:jakarta.validation-api', version.ref = 'jakarta-validation-api' }
jline = { module = 'org.jline:jline', version.ref = 'jline' }
javax-inject = { module = 'javax.inject:javax.inject', version.ref = 'javax-inject' }
javax-servlet-api = { module = 'javax.servlet:javax.servlet-api', version.ref = 'javax-servlet-api' }
javax-ws-rs-api = { module = 'javax.ws.rs:javax.ws.rs-api', version.ref = 'javax-ws-rs-api' }
jfiglet = { module = 'com.github.lalyos:jfiglet', version.ref = 'jfiglet' }
+jsr305 = { module = 'com.google.code.findbugs:jsr305', version.ref = 'jsr305' }
junit-jupiter-api = { module = 'org.junit.jupiter:junit-jupiter-api', version.ref = 'junit-jupiter' }
junit-jupiter-engine = { module = 'org.junit.jupiter:junit-jupiter-engine', version.ref = 'junit-jupiter' }
+logging-interceptor = { module = 'com.squareup.okhttp3:logging-interceptor', version.ref = 'okhttp3' }
maven-exec = { module = 'com.github.dkorotych.gradle-maven-exec:com.github.dkorotych.gradle-maven-exec.gradle.plugin', version.ref = 'maven-exec' }
pax-exam = { module = 'org.ops4j.pax.exam:pax-exam', version.ref = 'pax-exam' }
pax-exam-container-karaf = { module = 'org.ops4j.pax.exam:pax-exam-container-karaf', version.ref = 'pax-exam' }
blob - 9aff3c12e93b14e87dfd8b3e978531077e36dc59
blob + d43b6f78a8684589337eeacf62b2ac74ecd4a108
--- gradle/license.gradle
+++ gradle/license.gradle
ext.email = license_email
def licenseFile = project.file('LICENSE')
if (!licenseFile.exists()) {
- header rootProject.file('LICENSE')
+ header = rootProject.file('LICENSE')
}
- strictCheck true
+ strictCheck = true
include '**/*.java'
include '**/*.perm'
include '**/*.properties'
ext.copyrightHolder = license_copyrightHolder
ext.email = license_email
source = fileTree(rootDir)
- strictCheck true
+ strictCheck = true
include '**/*'
exclude '**/*.json'
exclude 'LICENSE'
blob - /dev/null
blob + d0c2ffe7adba1a589f472cedfd993712bd810e9d (mode 644)
--- /dev/null
+++ gradle/spotless.gradle
+/*
+ * Copyright (C) 2024 by Chaz Kettleson <chaz@pyr3x.com>
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+buildscript {
+ repositories {
+ gradlePluginPortal()
+ }
+ dependencies {
+ classpath libs.gradle.spotless
+ }
+}
+
+apply plugin: com.diffplug.gradle.spotless.SpotlessPlugin
+
+spotless {
+ java {
+ googleJavaFormat()
+ formatAnnotations()
+ }
+}
blob - e18bc253b857cc9614e63c8975b677f496755957
blob + 37f853b1c84d2e2dd1c88441fcc755d7f6643668
--- gradle/wrapper/gradle-wrapper.properties
+++ gradle/wrapper/gradle-wrapper.properties
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.12.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
blob - 9a8a0e09059c2b05b44193d1ccb06e80c07c894e
blob + 375ee89e182bc733cf6380d95fb36350e5ff517c
--- gradle.properties
+++ gradle.properties
cyclonedx_license_url=https://opensource.org/license/0bsd
# Docker properties
-docker_copyChownUid=185
+docker_copyChownUid=0
docker_fromImage=eclipse-temurin:17-jdk-ubi9-minimal@sha256:7915d89f4f4fd4f5bb83aeecbb84a28a740eef29d028f071f3270916912daafd
docker_toBaseImage=registry.gitlab.pyr3x.com/projects/template
blob - 71251a3cbb5c6b82c9d45791f3f4e3185bba47f6
blob + 6ae3e1c949a26ac4f2eb1c763429cc76158268d7
--- settings.gradle
+++ settings.gradle
// Use our local repository and Maven Central only
repositories {
maven {
- url new File(rootDir, 'gradle/repository')
+ url = new File(rootDir, 'gradle/repository')
}
mavenCentral()
}