diff --git a/.github/workflows/releaseExtension.yml b/.github/workflows/releaseExtension.yml index 7b52a01..80b86bb 100644 --- a/.github/workflows/releaseExtension.yml +++ b/.github/workflows/releaseExtension.yml @@ -18,18 +18,12 @@ jobs: cache: gradle - name: Build Zip run: ./gradlew hivemqExtensionZip - - name: Get release - id: get_release - uses: bruceadams/get-release@v1.3.2 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Upload Release Asset - id: upload-release-asset uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: - upload_url: ${{ steps.get_release.outputs.upload_url }} + upload_url: ${{ github.event.release.upload_url }} asset_path: ./build/hivemq-extension/hivemq-deny-wildcard-extension-${{ github.event.release.name }}.zip asset_name: hivemq-deny-wildcard-extension-${{ github.event.release.name }}.zip asset_content_type: application/zip diff --git a/build.gradle.kts b/build.gradle.kts index 81d995f..baf1b0b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,8 +1,7 @@ plugins { - id("com.hivemq.extension") - id("com.github.hierynomus.license") - id("io.github.sgtsilvio.gradle.defaults") - id("org.asciidoctor.jvm.convert") + alias(libs.plugins.hivemq.extension) + alias(libs.plugins.defaults) + alias(libs.plugins.license) } group = "com.hivemq.extensions" @@ -13,45 +12,32 @@ hivemqExtension { author.set("HiveMQ") priority.set(1000) startPriority.set(1000) - sdkVersion.set("${property("hivemq-extension-sdk.version")}") + sdkVersion.set(libs.versions.hivemq.extensionSdk) resources { from("LICENSE") - from("README.adoc") { rename { "README.txt" } } - from(tasks.asciidoctor) } } dependencies { - implementation("org.apache.commons:commons-lang3:${property("commons-lang.version")}") -} - -tasks.asciidoctor { - sourceDirProperty.set(layout.projectDirectory) - sources("README.adoc") - secondarySources { exclude("**") } -} - -/* ******************** test ******************** */ - -dependencies { - testImplementation("org.junit.jupiter:junit-jupiter:${property("junit-jupiter.version")}") - testImplementation("org.mockito:mockito-core:${property("mockito.version")}") -} - -tasks.withType().configureEach { - useJUnitPlatform() + implementation(libs.commonsLang) +} + +@Suppress("UnstableApiUsage") +testing { + suites { + withType { + useJUnitJupiter(libs.versions.junit.jupiter) + } + "test"(JvmTestSuite::class) { + dependencies { + implementation(libs.mockito) + } + } + } } -/* ******************** checks ******************** */ - license { header = rootDir.resolve("HEADER") mapping("java", "SLASHSTAR_STYLE") } - -/* ******************** run ******************** */ - -tasks.prepareHivemqHome { - hivemqHomeDirectory.set(file("/path/to/a/hivemq/folder")) -} diff --git a/gradle.properties b/gradle.properties index 5d0fe55..b3668f2 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,18 +1 @@ version=4.1.2 -# -# main dependencies -# -hivemq-extension-sdk.version=4.1.0 -commons-lang.version=3.12.0 -# -# test dependencies -# -junit-jupiter.version=5.9.1 -mockito.version=4.8.0 -# -# plugins -# -plugin.hivemq-extension.version=2.1.2 -plugin.license.version=0.16.1 -plugin.defaults.version=0.2.0 -plugin.asciidoctor.version=3.3.2 diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml new file mode 100644 index 0000000..df78572 --- /dev/null +++ b/gradle/libs.versions.toml @@ -0,0 +1,14 @@ +[versions] +commonsLang = "3.12.0" +hivemq-extensionSdk = "4.1.0" +junit-jupiter = "5.10.0" +mockito = "5.6.0" + +[libraries] +commonsLang = { module = "org.apache.commons:commons-lang3", version.ref = "commonsLang" } +mockito = { module = "org.mockito:mockito-core", version.ref = "mockito" } + +[plugins] +hivemq-extension = { id = "com.hivemq.extension", version = "3.1.0" } +defaults = { id = "io.github.sgtsilvio.gradle.defaults", version = "0.2.0" } +license = { id = "com.github.hierynomus.license", version = "0.16.1" } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index afba109..7f93135 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 4e86b92..3fa8f86 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip networkTimeout=10000 +validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew index 65dcd68..1aa94a4 100755 --- a/gradlew +++ b/gradlew @@ -83,10 +83,8 @@ done # This is normally unused # shellcheck disable=SC2034 APP_BASE_NAME=${0##*/} -APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD=maximum @@ -133,10 +131,13 @@ location of your Java installation." fi else JAVACMD=java - which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. Please set the JAVA_HOME variable in your environment to match the location of your Java installation." + fi fi # Increase the maximum file descriptors if we can. @@ -144,7 +145,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then case $MAX_FD in #( max*) # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC3045 + # shellcheck disable=SC2039,SC3045 MAX_FD=$( ulimit -H -n ) || warn "Could not query maximum file descriptor limit" esac @@ -152,7 +153,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then '' | soft) :;; #( *) # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC3045 + # shellcheck disable=SC2039,SC3045 ulimit -n "$MAX_FD" || warn "Could not set maximum file descriptor limit to $MAX_FD" esac @@ -197,11 +198,15 @@ if "$cygwin" || "$msys" ; then done fi -# Collect all arguments for the java command; -# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of -# shell script including quotes and variable substitutions, so put them in -# double quotes to make sure that they get re-expanded; and -# * put everything else in single quotes, so that it's not re-expanded. + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. set -- \ "-Dorg.gradle.appname=$APP_BASE_NAME" \ diff --git a/settings.gradle.kts b/settings.gradle.kts index ea1b458..dba9552 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,10 +1 @@ rootProject.name = "hivemq-deny-wildcard-extension" - -pluginManagement { - plugins { - id("com.hivemq.extension") version "${extra["plugin.hivemq-extension.version"]}" - id("com.github.hierynomus.license") version "${extra["plugin.license.version"]}" - id("io.github.sgtsilvio.gradle.defaults") version "${extra["plugin.defaults.version"]}" - id("org.asciidoctor.jvm.convert") version "${extra["plugin.asciidoctor.version"]}" - } -}