diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index ef6df14..beab9bd 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -5,22 +5,28 @@ on: [push, pull_request, workflow_dispatch] jobs: build: runs-on: ubuntu-latest + env: GRADLE_OPTS: "-Dorg.gradle.jvmargs=-XX:MaxMetaspaceSize=512m" SONAR_JDK: "11" + strategy: matrix: java-version: [ 1.8, 11, 15 ] + steps: - uses: actions/checkout@v2 with: fetch-depth: 0 + - name: Set up JDK ${{ matrix.java-version }} uses: actions/setup-java@v1 with: java-version: ${{ matrix.java-version }} + - name: Grant execute permission for gradlew run: chmod +x gradlew + - name: Cache SonarCloud packages if: matrix.java-version == env.SONAR_JDK uses: actions/cache@v1 @@ -28,6 +34,7 @@ jobs: path: ~/.sonar/cache key: ${{ runner.os }}-sonar restore-keys: ${{ runner.os }}-sonar + - name: Cache Gradle packages uses: actions/cache@v2 with: @@ -37,16 +44,19 @@ jobs: key: ${{ runner.os }}-gradle-${{ matrix.java-version }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} restore-keys: | ${{ runner.os }}-gradle-${{ matrix.java-version }}- + - name: Test with Gradle env: PINBOARD_API_TOKEN: ${{ secrets.PINBOARD_API_TOKEN }} run: ./gradlew build check --stacktrace + - name: SonarCloud if: success() && matrix.java-version == env.SONAR_JDK env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} run: ./gradlew sonarqube + - name: Cleanup Gradle Cache run: | rm -f ~/.gradle/caches/modules-2/modules-2.lock diff --git a/build.gradle.kts b/build.gradle.kts index 436c869..8c43bb2 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -4,14 +4,14 @@ import org.gradle.api.tasks.testing.logging.TestLogEvent plugins { id("com.github.ben-manes.versions") version "0.39.0" - id("io.gitlab.arturbosch.detekt") version "1.17.1" + id("io.gitlab.arturbosch.detekt") version "1.18.0-RC1" id("jacoco") id("java") id("maven-publish") - id("org.jetbrains.dokka") version "1.4.32" - id("org.sonarqube") version "3.2.0" + id("org.jetbrains.dokka") version "1.5.0" + id("org.sonarqube") version "3.3" id("signing") - kotlin("jvm") version "1.5.10" + kotlin("jvm") version "1.5.20" } group = "net.thauvin.erik" @@ -122,10 +122,10 @@ tasks { register("deploy") { description = "Copies all needed files to the $deployDir directory." group = PublishingPlugin.PUBLISH_TASK_GROUP - dependsOn("build", "jar") + dependsOn(build, jar) outputs.dir(deployDir) inputs.files(copyToDeploy) - mustRunAfter("clean") + mustRunAfter(clean) } val gitIsDirty by registering(Exec::class) { @@ -151,11 +151,11 @@ tasks { register("release") { description = "Publishes version ${project.version} to local repository." group = PublishingPlugin.PUBLISH_TASK_GROUP - dependsOn("wrapper", "deploy", "gitTag", "publishToMavenLocal") + dependsOn(wrapper, "deploy", gitTag, publishToMavenLocal) } "sonarqube" { - dependsOn("jacocoTestReport") + dependsOn(jacocoTestReport) } } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index e708b1c..7454180 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 0f80bbf..05679dc 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-7.0.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.1.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew index 4f906e0..744e882 100755 --- a/gradlew +++ b/gradlew @@ -72,7 +72,7 @@ case "`uname`" in Darwin* ) darwin=true ;; - MINGW* ) + MSYS* | MINGW* ) msys=true ;; NONSTOP* ) diff --git a/pom.xml b/pom.xml index 5a2978d..e65839c 100644 --- a/pom.xml +++ b/pom.xml @@ -35,11 +35,22 @@ GitHub https://github.com/ethauvin/pinboard-poster/issues + + + + org.jetbrains.kotlin + kotlin-bom + 1.5.20 + pom + import + + + org.jetbrains.kotlin kotlin-stdlib-jdk8 - 1.5.0 + 1.5.20 compile