From f7624f63102dc3c547af8df7cfe4b9083fa77619 Mon Sep 17 00:00:00 2001 From: Paul Campbell Date: Sat, 11 Jul 2020 12:05:50 +0100 Subject: [PATCH] Update github actions (#317) * Update github actions * Upgrade kemitix-maven-tiles to 2.7.0 * Compile against JDK 11 * don't test build against JDK 8 --- .github/deploy.sh | 34 ----------------------- .github/release-drafter.yml | 34 +++++++++++++++++++++++ .github/stale.yaml | 17 ++++++++++++ .github/workflows/build-maven.yml | 23 +++++++++++++++ .github/workflows/deploy-sonatype.yml | 40 +++++++++++++++++++++++++++ .github/workflows/draft-release.yml | 14 ++++++++++ .github/workflows/maven-build.yml | 27 ------------------ .github/workflows/sonatype-deploy.yml | 24 ---------------- builder/pom.xml | 6 ++-- ruleset/pom.xml | 2 +- tile/pom.xml | 2 +- 11 files changed, 133 insertions(+), 90 deletions(-) delete mode 100644 .github/deploy.sh create mode 100644 .github/release-drafter.yml create mode 100644 .github/stale.yaml create mode 100644 .github/workflows/build-maven.yml create mode 100644 .github/workflows/deploy-sonatype.yml create mode 100644 .github/workflows/draft-release.yml delete mode 100644 .github/workflows/maven-build.yml delete mode 100644 .github/workflows/sonatype-deploy.yml diff --git a/.github/deploy.sh b/.github/deploy.sh deleted file mode 100644 index bfe2329..0000000 --- a/.github/deploy.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env bash - -# Decrypts the signing key in .github/codesigning.asc.enc -# Imports that key -# Uses .github/settings.xml and the release profile to deploy - -echo "deploy.sh: Starting..." - -( - cd .github - - echo "Retrieving GPG Private KEY" - gpg --quiet \ - --batch \ - --yes \ - --decrypt \ - --passphrase="${GPG_PASSPHRASE}" \ - --output codesigning.asc \ - codesigning.asc.gpg - - echo "Loading signing key" - gpg --batch \ - --fast-import codesigning.asc -) - -echo "Releasing..." -mvn -pl ruleset,tile \ - --settings .github/settings.xml \ - -Dskip-Tests=true \ - -P release \ - -B \ - deploy - -echo "deploy.sh: Done." diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml new file mode 100644 index 0000000..146ec7d --- /dev/null +++ b/.github/release-drafter.yml @@ -0,0 +1,34 @@ +name-template: 'v$RESOLVED_VERSION 🌈' +tag-template: 'v$RESOLVED_VERSION' +categories: + - title: '🚀 Features' + labels: + - 'feature' + - 'enhancement' + - title: '🐛 Bug Fixes' + labels: + - 'fix' + - 'bugfix' + - 'bug' + - title: '🧰 Maintenance' + labels: + - 'chore' + - 'dependencies' +change-template: '- $TITLE @$AUTHOR (#$NUMBER)' +version-resolver: + major: + labels: + - 'major' + minor: + labels: + - 'minor' + patch: + labels: + - 'patch' + default: patch +exclude-labels: + - 'skip-changelog' +template: | + ## Changes + + $CHANGES diff --git a/.github/stale.yaml b/.github/stale.yaml new file mode 100644 index 0000000..dc90e5a --- /dev/null +++ b/.github/stale.yaml @@ -0,0 +1,17 @@ +# Number of days of inactivity before an issue becomes stale +daysUntilStale: 60 +# Number of days of inactivity before a stale issue is closed +daysUntilClose: 7 +# Issues with these labels will never be considered stale +exemptLabels: + - pinned + - security +# Label to use when marking an issue as stale +staleLabel: wontfix +# Comment to post when marking an issue as stale. Set to `false` to disable +markComment: > + This issue has been automatically marked as stale because it has not had + recent activity. It will be closed if no further activity occurs. Thank you + for your contributions. +# Comment to post when closing a stale issue. Set to `false` to disable +closeComment: false diff --git a/.github/workflows/build-maven.yml b/.github/workflows/build-maven.yml new file mode 100644 index 0000000..ef12486 --- /dev/null +++ b/.github/workflows/build-maven.yml @@ -0,0 +1,23 @@ +name: maven-build + +on: + push: + branches: '*' + pull_request: + branches: '*' + +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + java: [ 11, 14 ] + steps: + - uses: kamiazya/setup-graphviz@v1 + - uses: actions/checkout@v2 + - name: setup-jdk-${{ matrix.java }} + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build-jar + run: mvn -B install diff --git a/.github/workflows/deploy-sonatype.yml b/.github/workflows/deploy-sonatype.yml new file mode 100644 index 0000000..ea469cb --- /dev/null +++ b/.github/workflows/deploy-sonatype.yml @@ -0,0 +1,40 @@ +name: sonatype-deploy + +on: + push: + tags: + - "v*" + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: kamiazya/setup-graphviz@v1 + - uses: actions/checkout@v2 + - name: Set up JDK + uses: actions/setup-java@v1 + with: + java-version: 8 + - name: Build with Maven + run: mvn -B install + - name: Nexus Repo Publish + run: | + gpg --quiet \ + --batch \ + --yes \ + --decrypt \ + --passphrase="${{ secrets.GPG_PASSPHRASE }}" \ + --output codesigning.asc \ + .github/codesigning.asc.gpg + gpg --batch \ + --fast-import codesigning.asc + mvn --settings .github/settings.xml \ + -Dskip-Tests=true \ + -P release \ + -B \ + deploy + env: + NEXUS_USERNAME: ${{ secrets.NEXUS_USERNAME }} + NEXUS_PASSWORD: ${{ secrets.NEXUS_PASSWORD }} + GPG_KEYNAME: ${{ secrets.GPG_KEYNAME }} + GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml new file mode 100644 index 0000000..f3d4750 --- /dev/null +++ b/.github/workflows/draft-release.yml @@ -0,0 +1,14 @@ +name: draft-release + +on: + push: + branches: + - master + +jobs: + update_draft_release: + runs-on: ubuntu-latest + steps: + - uses: release-drafter/release-drafter@v5.11.0 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/maven-build.yml b/.github/workflows/maven-build.yml deleted file mode 100644 index 8799101..0000000 --- a/.github/workflows/maven-build.yml +++ /dev/null @@ -1,27 +0,0 @@ -# This workflow will build a Java project with Maven -# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven - -name: Java CI with Maven - -# TODO Matrix over JDK 8, 11 and latest - -on: - push: - branches: '*' - pull_request: - branches: '*' - -jobs: - build: - runs-on: ubuntu-latest - strategy: - matrix: - java: [ 8, 11 ] - steps: - - uses: actions/checkout@v2 - - name: Set up JDK ${{ matrix.java }} - uses: actions/setup-java@v1 - with: - java-version: ${{ matrix.java }} - - name: Build with Maven - run: mvn -B install diff --git a/.github/workflows/sonatype-deploy.yml b/.github/workflows/sonatype-deploy.yml deleted file mode 100644 index 0db51e7..0000000 --- a/.github/workflows/sonatype-deploy.yml +++ /dev/null @@ -1,24 +0,0 @@ -name: Deploy to Sonatype Nexus - -on: - release: - types: [created] - -jobs: - deploy: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - name: Set up JDK 1.8 - uses: actions/setup-java@v1 - with: - java-version: 1.8 - - name: Build with Maven - run: mvn -B install - - name: Nexus Repo Publish - run: sh .github/deploy.sh - env: - NEXUS_USERNAME: ${{ secrets.NEXUS_USERNAME }} - NEXUS_PASSWORD: ${{ secrets.NEXUS_PASSWORD }} - GPG_KEYNAME: ${{ secrets.GPG_KEYNAME }} - GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} diff --git a/builder/pom.xml b/builder/pom.xml index ef5b93a..d83dd68 100644 --- a/builder/pom.xml +++ b/builder/pom.xml @@ -18,11 +18,11 @@ true - 1.8 + 11 ${java.version} ${java.version} 2.17 - 1.1.0 + 2.7.0 8.34 1.37.1 @@ -147,7 +147,7 @@ net.kemitix.tiles:maven-plugins:${kemitix-tiles.version} net.kemitix.tiles:enforcer:${kemitix-tiles.version} - net.kemitix.tiles:compiler:${kemitix-tiles.version} + net.kemitix.tiles:compiler-jdk-11:${kemitix-tiles.version} net.kemitix.tiles:huntbugs:${kemitix-tiles.version} net.kemitix.tiles:pmd:${kemitix-tiles.version} net.kemitix.tiles:testing:${kemitix-tiles.version} diff --git a/ruleset/pom.xml b/ruleset/pom.xml index 078c8b4..1775e09 100644 --- a/ruleset/pom.xml +++ b/ruleset/pom.xml @@ -22,7 +22,7 @@ 2.17 - 0.9.0 + 2.7.0 diff --git a/tile/pom.xml b/tile/pom.xml index 208b2c6..60ef24c 100644 --- a/tile/pom.xml +++ b/tile/pom.xml @@ -18,7 +18,7 @@ 2.17 - 0.8.1 + 2.7.0 3.1.1 8.34