From b22729a70917931d9f2cae3911dd0bf0af6d34e0 Mon Sep 17 00:00:00 2001 From: Maksim Kostromin Date: Tue, 10 Mar 2020 17:29:52 +0200 Subject: [PATCH] 4.3.35... --- .github/workflows/integration-tests.yml | 84 +++++++++++++++++++ DEVELOPMENT.md | 2 +- FEATURES.md | 2 +- INSTALL.md | 28 +++---- README.md | 2 +- RELEASE.md | 41 ++++----- build.gradle.kts | 33 ++++---- buildSrc/build.gradle.kts | 23 ----- buildSrc/src/main/java/Globals.kt | 39 --------- gradle.properties | 39 ++++++++- gradle/clean.gradle | 24 +++--- gradle/dependencyUpdates.gradle.kts | 33 -------- gradle/documentation.gradle | 43 ++-------- gradle/jacoco.gradle | 4 +- gradle/jgiven.gradle | 8 +- gradle/repo-config.gradle | 4 - gradle/repo-config.gradle.kts | 7 -- gradle/spotbugs.gradle | 14 ++-- gradle/subprojects.gradle | 18 ++-- gradle/subprojects.gradle.kts | 18 ++-- gradle/wrapper/gradle-wrapper.properties | 2 +- modules/apps/build.gradle.kts | 13 +-- .../apps/file-items-service/build.gradle.kts | 20 ++--- modules/apps/file-server/build.gradle.kts | 19 +++-- .../main/resources/templates/parts/tail.hbs | 2 +- pom.xml | 26 +++--- scripts/application-h2.bash | 2 +- scripts/application-h2.cmd | 2 +- scripts/application.bash | 2 +- scripts/application.cmd | 2 +- settings.gradle.kts | 49 +++++++---- src/main/templates/RELEASE.md | 13 +-- .../buildSrc/src/main/java/Globals.kt | 39 --------- src/main/templates/gradle.properties | 40 +++++++++ src/main/templates/gradle/jacoco.gradle | 4 +- 35 files changed, 356 insertions(+), 345 deletions(-) create mode 100644 .github/workflows/integration-tests.yml delete mode 100644 buildSrc/build.gradle.kts delete mode 100644 buildSrc/src/main/java/Globals.kt delete mode 100644 gradle/dependencyUpdates.gradle.kts delete mode 100644 gradle/repo-config.gradle delete mode 100644 gradle/repo-config.gradle.kts delete mode 100644 src/main/templates/buildSrc/src/main/java/Globals.kt create mode 100644 src/main/templates/gradle.properties diff --git a/.github/workflows/integration-tests.yml b/.github/workflows/integration-tests.yml new file mode 100644 index 00000000..01712055 --- /dev/null +++ b/.github/workflows/integration-tests.yml @@ -0,0 +1,84 @@ +name: integration-tests +on: [push] +jobs: + ui: + strategy: + matrix: + java: [11] + os: [ubuntu-latest] + nodejs-version: [12] + python-version: [3.8] + name: k-services java ${{ matrix.java }} on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + + steps: + # git clone + - name: Git clone + uses: actions/checkout@v1 + + # java + - name: Setup java ${{ matrix.java }} + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + + # python: pip install httpie + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v1 + with: + python-version: ${{ matrix.python-version }} + - name: Cache python ${{ matrix.python-version }} deps + uses: actions/cache@v1 + with: + path: ~/.pip + key: ${{ runner.os }}-${{ matrix.os }}-pip- + restore-keys: | + ${{ runner.os }}-${{ matrix.os }}-pip- + - name: Install / upgrade pip + run: python -m pip install --upgrade pip setuptools + - name: Install HTTPie + run: pip install --upgrade httpie + + # node: npm install wait-port + - name: Setup NodeJS ${{ matrix.nodejs-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.nodejs-version }} + - name: Cache npm ${{ matrix.nodejs-version }} deps + uses: actions/cache@v1 + with: + path: ~/.npm + key: ${{ runner.os }}-${{ matrix.os }}-npm- + restore-keys: | + ${{ runner.os }}-${{ matrix.os }}-npm- + - name: Install npm apps (wait-port) + run: npm install -g wait-port + + - name: Cache gradle deps + uses: actions/cache@v1 + with: + path: ~/.gradle # npm cache files are stored in `~/.gradle` on Linux/macOS + key: ${{ runner.os }}-build-${{ hashFiles('**/*gradle*') }} + restore-keys: | + ${{ runner.os }}-build- + ${{ runner.os }}- + + - name: Build gradle apps + run: | + cd $GITHUB_WORKSPACE && ./gradlew -S clean build + + - name: Run gradle apps + run: | + java -jar $GITHUB_WORKSPACE/modules/apps/file-items-service/build/libs/*.jar & + java -jar $GITHUB_WORKSPACE/modules/apps/file-server/build/libs/*.jar & + + - name: Test apps + run: | + echo "wait-port 8001 8002" + #wait-port 8001 8002 + wait-port 8001 + wait-port 8002 + echo "http -a user:password :8001" + http -a user:password :8001 + echo "http -a admin:admin :8002" + http -a admin:admin :8002/ diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md index e9096b45..6f76c317 100644 --- a/DEVELOPMENT.md +++ b/DEVELOPMENT.md @@ -23,7 +23,7 @@ _process versions substitution_ _set specific version_ ```bash -./mvnw versions:set -DnewVersion=4.3.34 +./mvnw versions:set -DnewVersion=4.3.35 ``` **maven version management** diff --git a/FEATURES.md b/FEATURES.md index 5ed42308..83d968bc 100644 --- a/FEATURES.md +++ b/FEATURES.md @@ -1,6 +1,6 @@ # Features -- migrate to latest spring-boot `2.2.4.RELEASE` +- migrate to latest spring-boot `2.2.5.RELEASE` - reactive cors filter: see `modules/apps/file-items-service/src/main/java/daggerok/config/CorsWebFluxConfigurer.java` - global 404 fallback: see `modules/apps/file-server/src/main/java/daggerok/web/config/FallbackConfig.java` - split architecture into micro-services diff --git a/INSTALL.md b/INSTALL.md index 77f98bc9..22375544 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -26,16 +26,16 @@ application.cmd clean path\to\storage ```bash # database -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/docker-compose.yml +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/docker-compose.yml docker-compose -f docker-compose.yml up -d # file-items data service -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/file-items-service-4.3.34.jar -bash file-items-service-4.3.34.jar --spring.profiles.active=db-pg +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/file-items-service-4.3.35.jar +bash file-items-service-4.3.35.jar --spring.profiles.active=db-pg # file server -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/file-server-4.3.34.jar -bash file-server-4.3.34.jar --app.upload.path=./path/to/file-storage +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/file-server-4.3.35.jar +bash file-server-4.3.35.jar --app.upload.path=./path/to/file-storage # cleanup docker-compose -f docker-compose.yml down -v @@ -44,7 +44,7 @@ docker-compose -f docker-compose.yml down -v **or simply using shell-script** ```bash -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/application.bash +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/application.bash # start bash application.bash start ./path/to/file-storage @@ -60,7 +60,7 @@ bash application.bash clean ./path/to/file-storage installed binaries: `wget`, `docker-compose`, `bash` and of course `java` are required -**for windows use https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/application.cmd** +**for windows use https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/application.cmd** ```cmd @rem start @@ -80,18 +80,18 @@ installed binaries: `which`, `wget`, `docker-compose`, `taskkill`, `mkdir` and o **with h2 in-memory database** ```bash -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/file-items-service-4.3.34.jar -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/file-server-4.3.34.jar +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/file-items-service-4.3.35.jar +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/file-server-4.3.35.jar -# bash file-items-service-4.3.34.jar --spring.profiles.active=db-h2 # or just: -bash file-items-service-4.3.34.jar -bash file-server-4.3.34.jar --app.upload.path=./path/to/file-storage +# bash file-items-service-4.3.35.jar --spring.profiles.active=db-h2 # or just: +bash file-items-service-4.3.35.jar +bash file-server-4.3.35.jar --app.upload.path=./path/to/file-storage ``` **or simply shell script for h2** ```bash -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/application-h2.bash +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/application-h2.bash # start bash application-h2.bash start ./path/to/file-storage @@ -103,7 +103,7 @@ bash application-h2.bash stop bash application-h2.bash clean ./path/to/file-storage ``` -**for windows use https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/application-h2.cmd** +**for windows use https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/application-h2.cmd** ```cmd @rem start diff --git a/README.md b/README.md index db31f78c..c7fec267 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # streaming-file-server [![build](https://travis-ci.org/daggerok/streaming-file-server.svg?branch=master)](https://travis-ci.org/daggerok/streaming-file-server) -_version: 4.3.34_ +_version: 4.3.35_ Full-stack java file server based on spring-boot / spring-* with no limitation for upload and download files diff --git a/RELEASE.md b/RELEASE.md index aee1af49..df691d37 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -1,11 +1,14 @@ # streaming-file-server -_4.3.34 release notes_ +_4.3.35 release notes_ -* Update versions: - * spring boot - * powermock - * spotbugs - * gradle +Update versions: + +| artifact | | version +|-----------------------------------------------|----|-------------- +| com.avast.gradle.docker-compose.gradle.plugin | -> | 0.10.9 +| spring boot | -> | 2.2.5.RELEASE +| selenide | -> | 5.8.0 +| gradle | -> | 6.2.2 ## Java file server @@ -26,16 +29,16 @@ _4.3.34 release notes_ ```bash # docker compose file for postgres database -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/docker-compose.yml +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/docker-compose.yml docker-compose up -d # file-items data service -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/file-items-service-4.3.34.jar -java -jar file-items-service-4.3.34.jar --spring.profiles.active=db-pg +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/file-items-service-4.3.35.jar +java -jar file-items-service-4.3.35.jar --spring.profiles.active=db-pg # file server -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/file-server-4.3.34.jar -java -jar file-server-4.3.34.jar --app.upload.path=./path/to/file-storage +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/file-server-4.3.35.jar +java -jar file-server-4.3.35.jar --app.upload.path=./path/to/file-storage # cleanup docker-compose down -v @@ -45,7 +48,7 @@ docker-compose down -v ```bash # bash script -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/application.bash +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/application.bash # start bash application.bash start ./path/to/file-storage @@ -65,7 +68,7 @@ binaries: `wget`, `docker-compose`, `bash` and of course `java` are required ```cmd @rem batch shell-script -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/application.cmd +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/application.cmd @rem start application.cmd start path\to\file-storage @@ -86,18 +89,18 @@ binaries: `which`, `wget`, `docker-compose`, `taskkill`, `mkdir` and of course j #### manual setup ```bash -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/file-items-service-4.3.34.jar -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/file-server-4.3.34.jar +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/file-items-service-4.3.35.jar +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/file-server-4.3.35.jar -bash file-items-service-4.3.34.jar --spring.profiles.active=db-h2 -bash file-server-4.3.34.jar --app.upload.path=./path/to/file-storage +bash file-items-service-4.3.35.jar --spring.profiles.active=db-h2 +bash file-server-4.3.35.jar --app.upload.path=./path/to/file-storage ``` #### or for simplicity use special h2 automation shell-script ```bash # bash shell script -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/application-h2.bash +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/application-h2.bash # start bash application-h2.bash start ./path/to/file-storage @@ -113,7 +116,7 @@ bash application-h2.bash clean ./path/to/file-storage ```cmd @rem cmd script -wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.34/application-h2.cmd +wget https://github.com/daggerok/streaming-file-server/releases/download/4.3.35/application-h2.cmd @rem start application-h2.cmd start path\to\file-storage diff --git a/build.gradle.kts b/build.gradle.kts index 6324e30f..76ce66e4 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -2,9 +2,6 @@ buildscript { repositories { gradlePluginPortal() } - dependencies { - classpath("gradle.plugin.com.github.spotbugs:spotbugs-gradle-plugin:${Globals.spotbugsVersion}") - } } plugins { @@ -12,26 +9,32 @@ plugins { maven eclipse `java-library` - id("com.github.ben-manes.versions") version Globals.versionsVersion - id("io.franzbecker.gradle-lombok") version Globals.lombokPluginVersion - id("org.springframework.boot") version Globals.springBootVersion apply false - id("org.asciidoctor.convert") version Globals.asciidoctorjConvertVersion apply false - id("com.avast.gradle.docker-compose") version Globals.dockerComposeVersion apply false - id("com.ewerk.gradle.plugins.querydsl") version Globals.querydslVersion apply false - id("io.spring.dependency-management") version Globals.dependencyManagementVersion + id("io.franzbecker.gradle-lombok") + id("com.github.ben-manes.versions") + id("io.spring.dependency-management") + id("com.ewerk.gradle.plugins.querydsl") apply false + id("com.avast.gradle.docker-compose") apply false + id("org.springframework.boot") apply false + id("org.asciidoctor.convert") apply false } -extra["lombok.version"] = Globals.lombokVersion -extra["postgresql.version"] = Globals.postgresVersion +val groupId: String by project +val lombokVersion: String by project +val projectVersion: String by project +val wrapperVersion: String by project +val postgresVersion: String by project + +extra["lombok.version"] = lombokVersion +extra["postgresql.version"] = postgresVersion allprojects { - version = Globals.version - group = Globals.groupId + group = groupId + version = projectVersion defaultTasks("clean", "build") } tasks.withType { - gradleVersion = Globals.wrapperVersion + gradleVersion = wrapperVersion distributionType = Wrapper.DistributionType.BIN } diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts deleted file mode 100644 index 8eaf4919..00000000 --- a/buildSrc/build.gradle.kts +++ /dev/null @@ -1,23 +0,0 @@ -plugins { - idea - eclipse - `embedded-kotlin` -} - -repositories { - gradlePluginPortal() -} - -idea { - module { - isDownloadJavadoc = false - isDownloadSources = true - } -} - -eclipse { - classpath { - isDownloadJavadoc = false - isDownloadSources = true - } -} diff --git a/buildSrc/src/main/java/Globals.kt b/buildSrc/src/main/java/Globals.kt deleted file mode 100644 index 6837a49d..00000000 --- a/buildSrc/src/main/java/Globals.kt +++ /dev/null @@ -1,39 +0,0 @@ -import org.gradle.api.JavaVersion - -object Globals { - const val version = "4.3.34" - const val groupId = "com.github.daggerok" - const val artifactId = "streaming-file-server" - - val javaVersion = JavaVersion.VERSION_1_8 - - const val vavrVersion = "0.10.2" - const val jqueryVersion = "3.4.1" - const val popperVersion = "1.16.0" - const val logbackVersion = "1.2.3" - const val lombokVersion = "1.18.10" - const val jgivenVersion = "0.18.2" - const val selenideVersion = "5.6.1" - const val postgresVersion = "42.2.9" - const val bootstrapVersion = "4.4.1" - const val commonsIoVersion = "1.3.2" - const val jacocoToolVersion = "0.8.4" - const val fontAwesomeVersion = "5.12.0" - const val powermockitoVersion = "2.0.5" - const val springBootVersion = "2.2.4.RELEASE" - const val bootstrapFileInputVersion = "5.0.7" - const val hibernateJava8Version = "5.4.10.Final" - - const val wrapperVersion = "6.1.1" - - const val toolVersion = "4.0.0-RC1" - const val spotbugsVersion = "2.0.0" - const val querydslVersion = "1.0.10" - const val versionsVersion = "0.27.0" - const val lombokPluginVersion = "3.2.0" - const val dependencyManagementVersion = "1.0.8.RELEASE" - const val dockerComposeVersion = "0.10.7" - const val asciidoctorjPdfVersion = "1.5.0-rc.2" - const val asciidoctorjDiagramVersion = "2.0.0" - const val asciidoctorjConvertVersion = "2.4.0" -} diff --git a/gradle.properties b/gradle.properties index 07d879df..fe48056a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,3 +1,40 @@ -org.gradle.warning.mode = none +#org.gradle.warning.mode = all +#org.gradle.warning.mode = none +org.gradle.warning.mode = summary ## uncomment this in case of troubles with gradle build... #org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 +projectVersion = 4.3.35 +groupId = com.github.daggerok +artifactId = streaming-file-server + +javaVersion = 1.8 + +vavrVersion = 0.10.2 +jqueryVersion = 3.4.1 +popperVersion = 1.16.1 +logbackVersion = 1.2.3 +lombokVersion = 1.18.12 +jgivenVersion = 0.18.2 +selenideVersion = 5.8.0 +postgresVersion = 42.2.10 +bootstrapVersion = 4.4.1 +commonsIoVersion = 1.3.2 +jacocoToolVersion = 0.8.4 +springBootVersion = 2.2.5.RELEASE +fontAwesomeVersion = 5.12.0 +powermockitoVersion = 2.0.5 +spotbugsToolVersion = 4.0.0 +bootstrapFileInputVersion = 5.0.7 +hibernateJava8Version = 5.4.12.Final + +wrapperVersion = 6.2.2 + +spotbugsVersion = 2.0.0 +querydslVersion = 1.0.10 +versionsVersion = 0.28.0 +lombokPluginVersion = 3.3.0 +dependencyManagementVersion = 1.0.9.RELEASE +dockerComposeVersion = 0.10.9 +asciidoctorjPdfVersion = 1.5.0-rc.2 +asciidoctorjDiagramVersion = 2.0.0 +asciidoctorjConvertVersion = 2.4.0 diff --git a/gradle/clean.gradle b/gradle/clean.gradle index 887da31e..dbb9b5bc 100644 --- a/gradle/clean.gradle +++ b/gradle/clean.gradle @@ -1,25 +1,25 @@ allprojects { - apply plugin: 'base' + apply(plugin: "base") clean.doFirst { [ project.buildDir, - project.file('out'), - project.file('bin'), - project.file('logs'), - project.file('build'), - project.file('jgiven-reports'), - project.file('jgiven-reports'), + project.file("out"), + project.file("bin"), + project.file("logs"), + project.file("build"), + project.file("jgiven-reports"), + project.file("jgiven-reports"), ].each { delete it } } } task clear { [ - rootProject.file('target/generated-docs'), - rootProject.file('modules/apps/file-server/file-storage'), - rootProject.file('modules/docker/all/file-storage'), - rootProject.file('modules/docker/all/modules'), - rootProject.file('file-storage'), + rootProject.file("target/generated-docs"), + rootProject.file("modules/apps/file-server/file-storage"), + rootProject.file("modules/docker/all/file-storage"), + rootProject.file("modules/docker/all/modules"), + rootProject.file("file-storage"), ].each { it.deleteOnExit() } } diff --git a/gradle/dependencyUpdates.gradle.kts b/gradle/dependencyUpdates.gradle.kts deleted file mode 100644 index 277e4295..00000000 --- a/gradle/dependencyUpdates.gradle.kts +++ /dev/null @@ -1,33 +0,0 @@ -buildscript { - val gradleVersionsPluginVersion: String by project - - repositories { - gradlePluginPortal() - } - - dependencies { - classpath("com.github.ben-manes:gradle-versions-plugin:$gradleVersionsPluginVersion") - } -} - -apply(plugin = "com.github.ben-manes.versions") - -// gradle dependencyUpdates -Drevision=release --parallel -tasks.named("dependencyUpdates") { - resolutionStrategy { - componentSelection { - all { - val rejected = listOf("alpha", "beta", "rc", "cr", "m", "preview", "b", "ea", "M1", "BUILD-SNAPSHOT", "SNAPSHOT") - .map { qualifier -> Regex("(?i).*[.-]$qualifier[.\\d-+]*") } - .any { it.matches(candidate.version) } - println("rejected: $rejected for: ${candidate.version}") - if (rejected) reject("Release candidate") - } - } - } - //// optionals: - // checkForGradleUpdate = true - // outputFormatter = "plain" // "json" // "xml" - // outputDir = "build/dependencyUpdates" - // reportfileName = "report" -} diff --git a/gradle/documentation.gradle b/gradle/documentation.gradle index ea5932cb..2547cb62 100644 --- a/gradle/documentation.gradle +++ b/gradle/documentation.gradle @@ -8,18 +8,19 @@ buildscript { } } -apply plugin: 'org.asciidoctor.convert' + +apply plugin: "org.asciidoctor.convert" dependencies { - asciidoctor("org.asciidoctor:asciidoctorj-diagram:${Globals.asciidoctorjDiagramVersion}") - asciidoctor("org.asciidoctor:asciidoctorj-pdf:${Globals.asciidoctorjPdfVersion}") + asciidoctor("org.asciidoctor:asciidoctorj-diagram:$asciidoctorjDiagramVersion") + asciidoctor("org.asciidoctor:asciidoctorj-pdf:$asciidoctorjPdfVersion") // asciidoctor("org.asciidoctor:asciidoctorj-diagram:1.5.18") } asciidoctor { - sourceDir = project.file('docs') + sourceDir = project.file("docs") sources { - include 'index.adoc' + include "index.adoc" } outputDir = project.file("$asciidocBuildDir") attributes toc: 'left', @@ -40,8 +41,8 @@ asciidoctor { 'toc-title': 'Table of Contents', 'root-project-name': rootProject.name, 'project-version': rootProject.version, - 'build-gradle': project.file('build.gradle'), - 'github-url': "https://github.com/daggerok/$rootProject.name" + 'build-gradle': project.file("build.gradle"), + 'github-url': "https://github.com/daggerok/${rootProject.name}" logDocuments = true //backends 'pdf', 'html5' @@ -64,31 +65,3 @@ task documentation(type: Copy, dependsOn: [asciidoctor]) { } into targetDeneratedDocsDir } - -/* -apply plugin: 'org.ajoberstar.git-publish' // version '0.3.0' // version '0.4.1' - is not working: Algorithm negotiation fail - -gitPublishPush.dependsOn documentation -gitPublishPush.shouldRunAfter clean, documentation - -task docs(dependsOn: gitPublishPush) -docs.shouldRunAfter clean, gitPublishPush - -gitPublish { - //// bash gradlew clean asciidoctor docs \ - //// -Dorg.ajoberstar.grgit.auth.username=$GITHUB_USERNAME \ - //// -Dorg.ajoberstar.grgit.auth.password=$GITHUB_PASSWORD - // gradlew asciidoctor docs -Dorg.ajoberstar.grgit.auth.username=daggerok -Dorg.ajoberstar.grgit.auth.password=pass - repoUri = "https://github.com/daggerok/${rootProject.name}.git" as String - //repoUri = "git@github.com:daggerok/${rootProject.name}.git" as String - branch = 'gh-pages' - - contents { - from(targetDeneratedDocsDir) { - into '.' - } - } - - commitMessage = "Update $rootProject.name documentation for ${project.group}:${project.name}:$project.version" as String -} -*/ diff --git a/gradle/jacoco.gradle b/gradle/jacoco.gradle index ce20c8c6..f0876caf 100644 --- a/gradle/jacoco.gradle +++ b/gradle/jacoco.gradle @@ -6,11 +6,11 @@ allprojects { apply(plugin: "jacoco") jacoco { - toolVersion = "${Globals.jacocoToolVersion}" + toolVersion = "$jacocoToolVersion" } jacocoTestReport { - def jacocoPath = "$rootProject.buildDir.absolutePath/jacoco" + def jacocoPath = "${rootProject.buildDir.absolutePath}/jacoco" def projectPath = project.path.replaceAll(":", "-").replaceFirst("-", "") reports { xml.enabled = false diff --git a/gradle/jgiven.gradle b/gradle/jgiven.gradle index a7fa0605..f8a32a54 100644 --- a/gradle/jgiven.gradle +++ b/gradle/jgiven.gradle @@ -8,10 +8,10 @@ dependencies { */ dependencies { - testCompile("ch.qos.logback:logback-classic:${Globals.logbackVersion}") - testCompile("com.tngtech.jgiven:jgiven-junit:${Globals.jgivenVersion}") - testCompile("com.tngtech.jgiven:jgiven-junit5:${Globals.jgivenVersion}") - testRuntimeOnly("com.tngtech.jgiven:jgiven-html5-report:${Globals.jgivenVersion}") + testCompile("ch.qos.logback:logback-classic:$logbackVersion") + testCompile("com.tngtech.jgiven:jgiven-junit:$jgivenVersion") + testCompile("com.tngtech.jgiven:jgiven-junit5:$jgivenVersion") + testRuntimeOnly("com.tngtech.jgiven:jgiven-html5-report:$jgivenVersion") } task jgivenTestReport(type: JavaExec, dependsOn: "test") { diff --git a/gradle/repo-config.gradle b/gradle/repo-config.gradle deleted file mode 100644 index 8c72d348..00000000 --- a/gradle/repo-config.gradle +++ /dev/null @@ -1,4 +0,0 @@ -repository { - mavenCentral() - maven { url 'https://plugins.gradle.org/m2/' } -} diff --git a/gradle/repo-config.gradle.kts b/gradle/repo-config.gradle.kts deleted file mode 100644 index 83b8c326..00000000 --- a/gradle/repo-config.gradle.kts +++ /dev/null @@ -1,7 +0,0 @@ -repository { - mavenCentral() - maven(url = "https://plugins.gradle.org/m2/") - maven(url = "https://repo.spring.io/milestone/") - maven(url = "https://repo.spring.io/snapshot/") - jcenter() -} diff --git a/gradle/spotbugs.gradle b/gradle/spotbugs.gradle index 94e61c42..c67d7246 100644 --- a/gradle/spotbugs.gradle +++ b/gradle/spotbugs.gradle @@ -1,9 +1,11 @@ buildscript { repositories { - maven { url "https://plugins.gradle.org/m2/" } + gradlePluginPortal() + mavenCentral() + // maven { url "https://plugins.gradle.org/m2/" } } dependencies { - classpath("gradle.plugin.com.github.spotbugs:spotbugs-gradle-plugin:${Globals.spotbugsVersion}") + classpath("gradle.plugin.com.github.spotbugs:spotbugs-gradle-plugin:$spotbugsVersion") } } @@ -11,12 +13,14 @@ allprojects { apply(plugin: "com.github.spotbugs") repositories { - maven { url "https://plugins.gradle.org/m2/" } + gradlePluginPortal() + mavenCentral() + // maven { url "https://plugins.gradle.org/m2/" } } dependencies { compileOnly("net.jcip:jcip-annotations:1.0") - compileOnly("com.github.spotbugs:spotbugs-annotations:${Globals.toolVersion}") + compileOnly("com.github.spotbugs:spotbugs-annotations:$spotbugsToolVersion") } def suffix = project.path.replaceAll(":", "-").replaceFirst("-", "") @@ -24,7 +28,7 @@ allprojects { def path = "$prefix/spotbugs/$suffix" // customize reports location spotbugs { - toolVersion = Globals.toolVersion + spotbugsToolVersion = "$spotbugsToolVersion" effort = "max" reportsDir = file("$path") ignoreFailures = true // project.findProperty("ignoreBugs") != null // gradle -PignoreBugs .. diff --git a/gradle/subprojects.gradle b/gradle/subprojects.gradle index 0af15e2a..8d770111 100644 --- a/gradle/subprojects.gradle +++ b/gradle/subprojects.gradle @@ -1,8 +1,8 @@ subprojects { apply(plugin: "java") - sourceCompatibility = Globals.javaVersion - targetCompatibility = Globals.javaVersion + sourceCompatibility = "$javaVersion" + targetCompatibility = "$javaVersion" repositories { mavenCentral() @@ -13,23 +13,23 @@ subprojects { apply(plugin: "io.franzbecker.gradle-lombok") lombok { - version = Globals.lombokVersion + version = "$lombokVersion" } apply(plugin: "io.spring.dependency-management") dependencyManagement { imports { - mavenBom("org.springframework.boot:spring-boot-dependencies:${Globals.springBootVersion}") + mavenBom("org.springframework.boot:spring-boot-dependencies:$springBootVersion") } } dependencies { - implementation("io.vavr:vavr:${Globals.vavrVersion}") - testImplementation("org.powermock:powermock-module-junit4:${Globals.powermockitoVersion}") - testImplementation("org.powermock:powermock-api-mockito2:${Globals.powermockitoVersion}") - testImplementation("com.codeborne:selenide:${Globals.selenideVersion}") + implementation("io.vavr:vavr:$vavrVersion") + testImplementation("com.codeborne:selenide:$selenideVersion") + testImplementation("org.powermock:powermock-api-mockito2:$powermockitoVersion") + testImplementation("org.powermock:powermock-module-junit4:$powermockitoVersion") } - apply(from: "$project.rootDir/gradle/jgiven.gradle") + apply(from: "$rootDir/gradle/jgiven.gradle") } diff --git a/gradle/subprojects.gradle.kts b/gradle/subprojects.gradle.kts index 948d5e04..26360fa1 100644 --- a/gradle/subprojects.gradle.kts +++ b/gradle/subprojects.gradle.kts @@ -6,30 +6,30 @@ subprojects { apply(plugin = "java") configure { - sourceCompatibility = Globals.javaVersion - targetCompatibility = Globals.javaVersion + sourceCompatibility = "$javaVersion" + targetCompatibility = "$javaVersion" } repositories { mavenCentral() + jcenter() maven(url = "https://repo.spring.io/milestone/") maven(url = "https://repo.spring.io/snapshot/") - jcenter() } apply(plugin = "io.spring.dependency-management") dependencyManagement { imports { - mavenBom("org.springframework.boot:spring-boot-dependencies:${Globals.springBootVersion}") + mavenBom("org.springframework.boot:spring-boot-dependencies:$springBootVersion") } } this.dependencies { - implementation("io.vavr:vavr:${Globals.vavrVersion}") - testImplementation("org.powermock:powermock-module-junit4:${Globals.powermockitoVersion}") - testImplementation("org.powermock:powermock-api-mockito2:${Globals.powermockitoVersion}") - testImplementation("com.codeborne:selenide:${Globals.selenideVersion}") + implementation("io.vavr:vavr:$vavrVersion") + testImplementation("org.powermock:powermock-module-junit4:$powermockitoVersion") + testImplementation("org.powermock:powermock-api-mockito2:$powermockitoVersion") + testImplementation("com.codeborne:selenide:$selenideVersion") } - apply(from = "${project.rootDir}/gradle/jgiven.gradle") + apply(from = "$rootDir/gradle/jgiven.gradle") } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 1b16c34a..a2bf1313 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.2.2-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/modules/apps/build.gradle.kts b/modules/apps/build.gradle.kts index 876e9d64..d7dfdca7 100644 --- a/modules/apps/build.gradle.kts +++ b/modules/apps/build.gradle.kts @@ -1,12 +1,6 @@ -import org.springframework.boot.gradle.tasks.bundling.BootJar - -plugins { - java -} - subprojects { - apply(plugin = "java") - apply(plugin = "org.springframework.boot") + apply() + apply() dependencies { implementation("org.springframework.boot:spring-boot-starter") @@ -15,11 +9,12 @@ subprojects { testImplementation("org.springframework.boot:spring-boot-starter-test") } - tasks.withType { + tasks.withType { launchScript() } apply(from = "${rootProject.projectDir}/gradle/spotbugs.gradle") } +apply() apply(from = "${rootProject.projectDir}/gradle/jacoco.gradle") diff --git a/modules/apps/file-items-service/build.gradle.kts b/modules/apps/file-items-service/build.gradle.kts index 62a38736..20ebdbf1 100644 --- a/modules/apps/file-items-service/build.gradle.kts +++ b/modules/apps/file-items-service/build.gradle.kts @@ -1,3 +1,5 @@ +val hibernateJava8Version: String by project + dependencies { annotationProcessor(project(":modules:libraries:props")) implementation(project(":modules:libraries:props")) @@ -5,22 +7,10 @@ dependencies { implementation("org.springframework.boot:spring-boot-starter-webflux") implementation("org.springframework.boot:spring-boot-starter-data-jpa") - implementation("org.hibernate:hibernate-java8:${Globals.hibernateJava8Version}") + implementation("org.hibernate:hibernate-java8:$hibernateJava8Version") - runtime("org.postgresql:postgresql") - runtime("com.h2database:h2") + runtimeOnly("org.postgresql:postgresql") + runtimeOnly("com.h2database:h2") testImplementation("io.projectreactor:reactor-test") } - -/* // disabling using postgres by default -def postgersUp = tasks.findByPath(":modules:docker:postgres:composeUp") - -[test, build, bootRun].each { task -> - task.dependsOn assemble, postgersUp - task.shouldRunAfter assemble, postgersUp - ["all", "postgres"].each { id -> - task.finalizedBy ":modules:docker:$id:${id}Down" - } -} -*/ diff --git a/modules/apps/file-server/build.gradle.kts b/modules/apps/file-server/build.gradle.kts index d957ddc4..6f427f77 100644 --- a/modules/apps/file-server/build.gradle.kts +++ b/modules/apps/file-server/build.gradle.kts @@ -1,3 +1,10 @@ +val jqueryVersion: String by project +val popperVersion: String by project +val commonsIoVersion: String by project +val bootstrapVersion: String by project +val fontAwesomeVersion: String by project +val bootstrapFileInputVersion: String by project + dependencies { arrayOf(":modules:libraries:props", ":modules:libraries:web-security") @@ -10,12 +17,12 @@ dependencies { implementation("org.springframework.boot:spring-boot-starter-web") implementation("org.springframework.boot:spring-boot-starter-mustache") - implementation("org.apache.commons:commons-io:${Globals.commonsIoVersion}") + implementation("org.apache.commons:commons-io:$commonsIoVersion") // probably should be as a transitive dependency whenever it's needed... - // implementation("org.webjars:jquery:${Globals.jqueryVersion}") - implementation("org.webjars.bower:bootstrap:${Globals.bootstrapVersion}") - implementation("org.webjars.bower:bootstrap-fileinput:${Globals.bootstrapFileInputVersion}") - implementation("org.webjars:font-awesome:${Globals.fontAwesomeVersion}") - implementation("org.webjars.npm:popper.js:${Globals.popperVersion}") + // implementation("org.webjars:jquery:$jqueryVersion") + implementation("org.webjars.bower:bootstrap:$bootstrapVersion") + implementation("org.webjars.bower:bootstrap-fileinput:$bootstrapFileInputVersion") + implementation("org.webjars:font-awesome:$fontAwesomeVersion") + implementation("org.webjars.npm:popper.js:$popperVersion") } diff --git a/modules/apps/file-server/src/main/resources/templates/parts/tail.hbs b/modules/apps/file-server/src/main/resources/templates/parts/tail.hbs index 45f3d039..45b1e15e 100644 --- a/modules/apps/file-server/src/main/resources/templates/parts/tail.hbs +++ b/modules/apps/file-server/src/main/resources/templates/parts/tail.hbs @@ -6,7 +6,7 @@ - + diff --git a/pom.xml b/pom.xml index 9366db7a..2c0fb7ae 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ com.github.daggerok streaming-file-server pom - 4.3.34 + 4.3.35 @@ -62,27 +62,27 @@ 2.0.0 0.10.2 - 6.1.1 + 6.2.2 3.4.1 - 4.0.0-RC1 - 1.16.0 + 1.16.1 0.18.2 - 1.18.10 + 1.18.12 2.0.0 - 5.6.1 - 42.2.9 + 5.8.0 + 42.2.10 4.4.1 1.3.2 0.8.4 2.0.5 5.12.0 - 3.2.0 - 0.27.0 - 2.2.4.RELEASE - 5.4.10.Final + 4.0.0 + 3.3.0 + 0.28.0 + 2.2.5.RELEASE + 5.4.12.Final 5.0.7 - 0.10.7 - 1.0.8.RELEASE + 0.10.9 + 1.0.9.RELEASE diff --git a/scripts/application-h2.bash b/scripts/application-h2.bash index d668bfda..73a3cca8 100644 --- a/scripts/application-h2.bash +++ b/scripts/application-h2.bash @@ -5,7 +5,7 @@ #LOG_LEVEL=debug # app info -VERSION=4.3.34 +VERSION=4.3.35 FILE_SERVER_FILENAME="file-server-${VERSION}.jar" FILE_ITEMS_SERVICE_FILENAME="file-items-service-${VERSION}.jar" RELEASE_BASE_PATH="https://github.com/daggerok/streaming-file-server/releases/download/${VERSION}" diff --git a/scripts/application-h2.cmd b/scripts/application-h2.cmd index f8454cc7..989f53ff 100644 --- a/scripts/application-h2.cmd +++ b/scripts/application-h2.cmd @@ -15,7 +15,7 @@ SETLOCAL ENABLEEXTENSIONS SET ApplicationPath="app" -SET Version=4.3.34 +SET Version=4.3.35 SET FileServerFile=file-server-%Version%.jar SET FileServerUrl=https://github.com/daggerok/streaming-file-server/releases/download/%Version%/%FileServerFile% SET FileServerCommand=java -jar %ApplicationPath%\%FileServerFile% diff --git a/scripts/application.bash b/scripts/application.bash index fb78383f..a9eceb44 100644 --- a/scripts/application.bash +++ b/scripts/application.bash @@ -5,7 +5,7 @@ #LOG_LEVEL=debug # app info -VERSION=4.3.34 +VERSION=4.3.35 COMPOSE_FILE="docker-compose.yml" FILE_SERVER_FILENAME="file-server-${VERSION}.jar" FILE_ITEMS_SERVICE_FILENAME="file-items-service-${VERSION}.jar" diff --git a/scripts/application.cmd b/scripts/application.cmd index 6d3c836d..2dd93fd6 100644 --- a/scripts/application.cmd +++ b/scripts/application.cmd @@ -19,7 +19,7 @@ SET InfoLogLevel=0 SET ApplicationPath="app" -SET Version=4.3.34 +SET Version=4.3.35 SET DockerComposeFile=docker-compose.yml SET DockerComposeUrl=https://github.com/daggerok/streaming-file-server/releases/download/%Version%/%dockerComposeFile% SET DockerComposeCommand=docker-compose -f %ApplicationPath%\%DockerComposeFile% diff --git a/settings.gradle.kts b/settings.gradle.kts index 2ad3c2c4..a49a963a 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,27 +1,44 @@ pluginManagement { + val spotbugsVersion: String by extra + buildscript { + repositories { + gradlePluginPortal() + } + dependencies { + classpath("gradle.plugin.com.github.spotbugs:spotbugs-gradle-plugin:$spotbugsVersion") + } + } repositories { - mavenCentral() gradlePluginPortal() - maven(url = "https://plugins.gradle.org/m2/") - maven(url = "https://repo.spring.io/milestone/") - //maven(url = "https://repo.spring.io/snapshots/") + mavenCentral() jcenter() + maven(url = "https://repo.spring.io/milestone/") + // maven(url = "https://repo.spring.io/snapshots/") } - resolutionStrategy { - eachPlugin { - if (requested.id.id == "org.springframework.boot") { - useModule("org.springframework.boot:spring-boot-gradle-plugin:${requested.version}") - } - } + val querydslVersion: String by extra + val versionsVersion: String by extra + val springBootVersion: String by extra + val lombokPluginVersion: String by extra + val dockerComposeVersion: String by extra + val asciidoctorjConvertVersion: String by extra + val dependencyManagementVersion: String by extra + // dependencies { + // classpath("gradle.plugin.com.github.spotbugs:spotbugs-gradle-plugin:$spotbugsVersion") + // } + plugins { + id("com.github.spotbugs") version spotbugsVersion apply false + id("org.springframework.boot") version springBootVersion apply false + id("com.github.ben-manes.versions") version versionsVersion apply false + id("io.franzbecker.gradle-lombok") version lombokPluginVersion apply false + id("com.ewerk.gradle.plugins.querydsl") version querydslVersion apply false + id("org.asciidoctor.convert") version asciidoctorjConvertVersion apply false + id("com.avast.gradle.docker-compose") version dockerComposeVersion apply false + id("io.spring.dependency-management") version dependencyManagementVersion apply false } } -rootProject.name = "streaming-file-server" // see: https://github.com/gradle/gradle/issues/11452 -// https://docs.gradle.org/current/userguide/upgrading_version_5.html#classes_from_buildsrc_are_no_longer_visible_to_settings_scripts -// object GlobalSettings { -// const val artifactId = "streaming-file-server" -// } -// rootProject.name = GlobalSettings.artifactId +val artifactId: String by extra +rootProject.name = artifactId include( ":modules:libraries:props", diff --git a/src/main/templates/RELEASE.md b/src/main/templates/RELEASE.md index 4ed49cc7..b3467a30 100644 --- a/src/main/templates/RELEASE.md +++ b/src/main/templates/RELEASE.md @@ -1,11 +1,14 @@ # streaming-file-server _${project.version} release notes_ -* Update versions: - * spring boot - * powermock - * spotbugs - * gradle +Update versions: + +| artifact | | version +|-----------------------------------------------|----|-------------- +| com.avast.gradle.docker-compose.gradle.plugin | -> | 0.10.9 +| spring boot | -> | 2.2.5.RELEASE +| selenide | -> | 5.8.0 +| gradle | -> | 6.2.2 ## Java file server diff --git a/src/main/templates/buildSrc/src/main/java/Globals.kt b/src/main/templates/buildSrc/src/main/java/Globals.kt deleted file mode 100644 index 3a747115..00000000 --- a/src/main/templates/buildSrc/src/main/java/Globals.kt +++ /dev/null @@ -1,39 +0,0 @@ -import org.gradle.api.JavaVersion - -object Globals { - const val version = "${project.version}" - const val groupId = "com.github.daggerok" - const val artifactId = "streaming-file-server" - - val javaVersion = JavaVersion.VERSION_1_8 - - const val vavrVersion = "${vavr.version}" - const val jqueryVersion = "${jquery.version}" - const val popperVersion = "${popper.version}" - const val logbackVersion = "${logback.version}" - const val lombokVersion = "${lombok.version}" - const val jgivenVersion = "${jgiven.version}" - const val selenideVersion = "${selenide.version}" - const val postgresVersion = "${postgres.version}" - const val bootstrapVersion = "${bootstrap.version}" - const val commonsIoVersion = "${commons.io.version}" - const val jacocoToolVersion = "${jacoco.tool.version}" - const val fontAwesomeVersion = "${font.awesome.version}" - const val powermockitoVersion = "${powermockito.version}" - const val springBootVersion = "${spring.boot.version}" - const val bootstrapFileInputVersion = "${bootstrap.file.input.version}" - const val hibernateJava8Version = "${hibernate.java8.version}" - - const val wrapperVersion = "${gradle.version}" - - const val toolVersion = "${tool.version}" - const val spotbugsVersion = "${spotbugs.version}" - const val querydslVersion = "1.0.10" - const val versionsVersion = "${versions.gradle.plugin}" - const val lombokPluginVersion = "${lombok.plugin.version}" - const val dependencyManagementVersion = "${io.spring.dependency-management}" - const val dockerComposeVersion = "${docker.compose.gradle.plugin}" - const val asciidoctorjPdfVersion = "${asciidoctorj.pdf.version}" - const val asciidoctorjDiagramVersion = "${asciidoctorj.diagram.version}" - const val asciidoctorjConvertVersion = "${asciidoctorj.convert.version}" -} diff --git a/src/main/templates/gradle.properties b/src/main/templates/gradle.properties new file mode 100644 index 00000000..e26f62b5 --- /dev/null +++ b/src/main/templates/gradle.properties @@ -0,0 +1,40 @@ +#org.gradle.warning.mode = all +#org.gradle.warning.mode = none +org.gradle.warning.mode = summary +## uncomment this in case of troubles with gradle build... +#org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 +projectVersion = ${project.version} +groupId = com.github.daggerok +artifactId = streaming-file-server + +javaVersion = 1.8 + +vavrVersion = ${vavr.version} +jqueryVersion = ${jquery.version} +popperVersion = ${popper.version} +logbackVersion = ${logback.version} +lombokVersion = ${lombok.version} +jgivenVersion = ${jgiven.version} +selenideVersion = ${selenide.version} +postgresVersion = ${postgres.version} +bootstrapVersion = ${bootstrap.version} +commonsIoVersion = ${commons.io.version} +jacocoToolVersion = ${jacoco.tool.version} +springBootVersion = ${spring.boot.version} +fontAwesomeVersion = ${font.awesome.version} +powermockitoVersion = ${powermockito.version} +spotbugsToolVersion = ${spotbugs.tool.version} +bootstrapFileInputVersion = ${bootstrap.file.input.version} +hibernateJava8Version = ${hibernate.java8.version} + +wrapperVersion = ${gradle.version} + +spotbugsVersion = ${spotbugs.version} +querydslVersion = 1.0.10 +versionsVersion = ${versions.gradle.plugin} +lombokPluginVersion = ${lombok.plugin.version} +dependencyManagementVersion = ${io.spring.dependency-management} +dockerComposeVersion = ${docker.compose.gradle.plugin} +asciidoctorjPdfVersion = ${asciidoctorj.pdf.version} +asciidoctorjDiagramVersion = ${asciidoctorj.diagram.version} +asciidoctorjConvertVersion = ${asciidoctorj.convert.version} diff --git a/src/main/templates/gradle/jacoco.gradle b/src/main/templates/gradle/jacoco.gradle index ce20c8c6..f0876caf 100644 --- a/src/main/templates/gradle/jacoco.gradle +++ b/src/main/templates/gradle/jacoco.gradle @@ -6,11 +6,11 @@ allprojects { apply(plugin: "jacoco") jacoco { - toolVersion = "${Globals.jacocoToolVersion}" + toolVersion = "$jacocoToolVersion" } jacocoTestReport { - def jacocoPath = "$rootProject.buildDir.absolutePath/jacoco" + def jacocoPath = "${rootProject.buildDir.absolutePath}/jacoco" def projectPath = project.path.replaceAll(":", "-").replaceFirst("-", "") reports { xml.enabled = false