From 32faf274da5bb565106d8bcf5150a819d451ced9 Mon Sep 17 00:00:00 2001 From: John Fallows Date: Mon, 11 Jan 2021 15:25:03 -0800 Subject: [PATCH 01/13] Update JDK version and javadoc plugin version --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 8b9b9a7..b6a6c9d 100644 --- a/pom.xml +++ b/pom.xml @@ -188,7 +188,7 @@ No Snapshots Allowed! - [9,10) + [11,12) @@ -210,7 +210,7 @@ org.apache.maven.plugins maven-javadoc-plugin - 3.0.0-M1 + 3.2.0 From 2da981f59666c8857d14943caf9f1b2a9ba58f7f Mon Sep 17 00:00:00 2001 From: John Fallows Date: Sun, 24 Jan 2021 18:34:42 -0800 Subject: [PATCH 02/13] Integrate GitHub Packages with GitHub Actions --- .github/workflows/release.yml | 69 ++++++++++++++++ pom.xml | 145 +++++++++++++++++++++++++++++----- 2 files changed, 196 insertions(+), 18 deletions(-) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..82d1682 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,69 @@ +name: release + +on: + push: + tags: + - '[0-9]+.[0-9]+' + - '[0-9]+.[0-9]+.[0-9]+' + workflow_dispatch: + +jobs: + release: + name: Release + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Release + uses: softprops/action-gh-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + publish: + needs: release + name: Publish + runs-on: ubuntu-latest + + steps: + - name: Checkout GitHub sources + uses: actions/checkout@v2 + - name: Setup GitHub Packages + uses: actions/setup-java@v1 + with: + java-version: 9 + - name: Resolve from GitHub Packages + run: ./mvnw -B -Pgithub.packages dependency:copy + env: + GITHUB_TOKEN: ${{ github.token }} + - name: Setup Maven Central + uses: actions/setup-java@v1 + with: + java-version: 9 + server-id: ossrh + server-username: OSSRH_USERNAME + server-password: OSSRH_PASSWORD + gpg-private-key: ${{ secrets.OSSRH_SIGNER_KEY }} + gpg-passphrase: OSSRH_SIGNER_PASSPHRASE + - name: Deploy to Maven Central + run: ./mvnw -B -Possrh com.github.genthaler:beanshell-maven-plugin:run build-helper:attach-artifact gpg:sign nexus-staging:deploy + env: + OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }} + OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }} + OSSRH_SIGNER_PASSPHRASE: ${{ secrets.OSSRH_SIGNER_PASSPHRASE }} + - name: Notify via Slack + uses: 8398a7/action-slack@v3 + with: + status: custom + job_name: Publish + fields: job,repo,author,took + custom_payload: | + { + attachments: [{ + color: '${{ job.status }}' === 'success' ? 'good' : '${{ job.status }}' === 'failure' ? 'danger' : 'warning', + text: `${process.env.AS_JOB} of ${process.env.AS_REPO} by ${process.env.AS_AUTHOR.replace(/\<.*\>/, '')} completed in ${process.env.AS_TOOK}`, + }] + } + env: + GITHUB_TOKEN: ${{ github.token }} + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} + if: ${{ env.SLACK_WEBHOOK_URL != null }} diff --git a/pom.xml b/pom.xml index b6a6c9d..44c4d81 100644 --- a/pom.xml +++ b/pom.xml @@ -159,14 +159,15 @@ release - - ossrh - https://oss.sonatype.org/content/repositories/snapshots - + https://maven.pkg.github.com/reaktivity/build-template.java/ - ossrh - https://oss.sonatype.org/service/local/staging/deploy/maven2/ + github + https://maven.pkg.github.com/reaktivity/build-template.java/ + + github + https://maven.pkg.github.com/reaktivity/build-template.java/ + @@ -219,6 +220,126 @@ + + + + + + github.packages + + + + github + https://maven.pkg.github.com/reaktivity/packages/ + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + 3.1.2 + + ${project.build.directory} + true + + + ${project.groupId} + ${project.artifactId} + ${project.version} + pom + + + ${project.groupId} + ${project.artifactId} + ${project.version} + + + ${project.groupId} + ${project.artifactId} + ${project.version} + sources + + + ${project.groupId} + ${project.artifactId} + ${project.version} + javadoc + + + ${project.groupId} + ${project.artifactId} + ${project.version} + tests + + + + + + + + + + ossrh + + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + + + + + + com.github.genthaler + beanshell-maven-plugin + 1.4 + + + + + + org.codehaus.mojo + build-helper-maven-plugin + 3.2.0 + + + + sources + ${project.build.directory}/${project.artifactId}-${project.version}-sources.jar + + + javadoc + ${project.build.directory}/${project.artifactId}-${project.version}-javadoc.jar + + + tests + ${project.build.directory}/${project.artifactId}-${project.version}-tests.jar + + + + + + org.apache.maven.plugins + maven-gpg-plugin + 1.6 + + + --pinentry-mode + loopback + + + org.sonatype.plugins nexus-staging-maven-plugin @@ -230,18 +351,6 @@ true - - org.apache.maven.plugins - maven-gpg-plugin - 1.6 - - - - sign - - - - From d3f14eb0ce1fe6d876f281389820f39b11c52a0f Mon Sep 17 00:00:00 2001 From: John Fallows Date: Mon, 25 Jan 2021 10:33:51 -0800 Subject: [PATCH 03/13] Use GitHub Packages for continuous integration build dependencies --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index fba7a22..85f248c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -29,7 +29,7 @@ jobs: key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} restore-keys: ${{ runner.os }}-m2 - name: Build with Maven - run: ./mvnw -B -nsu verify jacoco:report + run: ./mvnw -B -Pgithub.packages -nsu verify jacoco:report - name: Notify via Slack uses: 8398a7/action-slack@v3 with: From 2625519f6ee37c0f1f04c1eaff1959b8b5674bdd Mon Sep 17 00:00:00 2001 From: John Fallows Date: Mon, 25 Jan 2021 10:55:29 -0800 Subject: [PATCH 04/13] Happy New Year! --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 44c4d81..ba38264 100644 --- a/pom.xml +++ b/pom.xml @@ -54,7 +54,7 @@
COPYRIGHT
- 2016-2020 + 2016-2021 src/** From 1669c2426d266b1ce766a9f5bdc897c6e26ca1f0 Mon Sep 17 00:00:00 2001 From: John Fallows Date: Mon, 25 Jan 2021 11:49:03 -0800 Subject: [PATCH 05/13] Promote GitHub Packages repository to top level --- .github/workflows/build.yml | 2 +- pom.xml | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 85f248c..fba7a22 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -29,7 +29,7 @@ jobs: key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} restore-keys: ${{ runner.os }}-m2 - name: Build with Maven - run: ./mvnw -B -Pgithub.packages -nsu verify jacoco:report + run: ./mvnw -B -nsu verify jacoco:report - name: Notify via Slack uses: 8398a7/action-slack@v3 with: diff --git a/pom.xml b/pom.xml index ba38264..fe5863f 100644 --- a/pom.xml +++ b/pom.xml @@ -34,6 +34,13 @@ https://github.com/reaktivity/build-template.java + + + github + https://maven.pkg.github.com/reaktivity/packages/ + + + 9 9 @@ -227,13 +234,6 @@ github.packages - - - github - https://maven.pkg.github.com/reaktivity/packages/ - - - From b822c5bb090cee62416b9bfead77bf04d4377a6b Mon Sep 17 00:00:00 2001 From: John Fallows Date: Mon, 25 Jan 2021 14:10:37 -0800 Subject: [PATCH 06/13] Add tag to Publish message --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 82d1682..4d9f55b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -60,7 +60,7 @@ jobs: { attachments: [{ color: '${{ job.status }}' === 'success' ? 'good' : '${{ job.status }}' === 'failure' ? 'danger' : 'warning', - text: `${process.env.AS_JOB} of ${process.env.AS_REPO} by ${process.env.AS_AUTHOR.replace(/\<.*\>/, '')} completed in ${process.env.AS_TOOK}`, + text: `${process.env.AS_JOB} of ${process.env.AS_REPO} (${process.env.GITHUB_REF.replace(/refs\/tags\//, '')}) by ${process.env.AS_AUTHOR.replace(/\<.*\>/, '')} completed in ${process.env.AS_TOOK}`, }] } env: From 296bdc51aa8beb2f7d515a6176c6802f94e9e948 Mon Sep 17 00:00:00 2001 From: John Fallows Date: Mon, 25 Jan 2021 14:30:53 -0800 Subject: [PATCH 07/13] Notify via Slack even if publish to Maven Central fails --- .github/workflows/release.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 4d9f55b..524d3a3 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -45,6 +45,7 @@ jobs: gpg-private-key: ${{ secrets.OSSRH_SIGNER_KEY }} gpg-passphrase: OSSRH_SIGNER_PASSPHRASE - name: Deploy to Maven Central + continue-on-error: true run: ./mvnw -B -Possrh com.github.genthaler:beanshell-maven-plugin:run build-helper:attach-artifact gpg:sign nexus-staging:deploy env: OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }} From 1188b99ab7a095cb32e400f7a3bf4fe3d15d191d Mon Sep 17 00:00:00 2001 From: John Fallows Date: Mon, 25 Jan 2021 15:01:02 -0800 Subject: [PATCH 08/13] Exclude internal packages from release javadoc --- pom.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pom.xml b/pom.xml index fe5863f..2441189 100644 --- a/pom.xml +++ b/pom.xml @@ -219,6 +219,11 @@ org.apache.maven.plugins maven-javadoc-plugin 3.2.0 + + + **/internal/**/*.java + + From ac401b70454302fef192e985a48678ff05180854 Mon Sep 17 00:00:00 2001 From: John Fallows Date: Mon, 25 Jan 2021 21:42:46 -0800 Subject: [PATCH 09/13] Ensure Javadoc is generated, even if empty --- pom.xml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/pom.xml b/pom.xml index 2441189..8f6295f 100644 --- a/pom.xml +++ b/pom.xml @@ -215,6 +215,24 @@ + + org.apache.maven.plugins + maven-antrun-plugin + 3.0.0 + + + package + + + + + + + run + + + + org.apache.maven.plugins maven-javadoc-plugin From a5e532183a7735f9e7e6f37850ebd859dacf7b96 Mon Sep 17 00:00:00 2001 From: John Fallows Date: Tue, 26 Jan 2021 11:15:08 -0800 Subject: [PATCH 10/13] Update release tooling to JDK 13 for JDK-8220702 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 8f6295f..a437e20 100644 --- a/pom.xml +++ b/pom.xml @@ -196,7 +196,7 @@ No Snapshots Allowed! - [11,12) + [13,14)
From 6a139a30051ae8d629cd58560ad0f43bc01bd07b Mon Sep 17 00:00:00 2001 From: John Fallows Date: Tue, 26 Jan 2021 12:30:17 -0800 Subject: [PATCH 11/13] Track deploy success or failure for Slack notification --- .github/workflows/release.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 524d3a3..dc8919c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -45,6 +45,7 @@ jobs: gpg-private-key: ${{ secrets.OSSRH_SIGNER_KEY }} gpg-passphrase: OSSRH_SIGNER_PASSPHRASE - name: Deploy to Maven Central + id: deploy continue-on-error: true run: ./mvnw -B -Possrh com.github.genthaler:beanshell-maven-plugin:run build-helper:attach-artifact gpg:sign nexus-staging:deploy env: @@ -60,7 +61,7 @@ jobs: custom_payload: | { attachments: [{ - color: '${{ job.status }}' === 'success' ? 'good' : '${{ job.status }}' === 'failure' ? 'danger' : 'warning', + color: '${{ steps.deploy.outcome }}' === 'success' ? 'good' : '${{ steps.deploy.outcome }}' === 'failure' ? 'danger' : 'warning', text: `${process.env.AS_JOB} of ${process.env.AS_REPO} (${process.env.GITHUB_REF.replace(/refs\/tags\//, '')}) by ${process.env.AS_AUTHOR.replace(/\<.*\>/, '')} completed in ${process.env.AS_TOOK}`, }] } From 3e3ab293cf386f4edfd33a44007e2aabda5ddbe3 Mon Sep 17 00:00:00 2001 From: John Fallows Date: Tue, 26 Jan 2021 14:30:02 -0800 Subject: [PATCH 12/13] Update dependency versions --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 91447a8..a3f92b7 100644 --- a/pom.xml +++ b/pom.xml @@ -56,11 +56,11 @@ 4.13.1 3.1.0 - 0.155 + 0.159 - 0.10 + 0.14 - 0.77 + 0.83 From 45f0e9a92d8cf709c109fa78091e3049d9a07a77 Mon Sep 17 00:00:00 2001 From: John Fallows Date: Tue, 26 Jan 2021 14:32:26 -0800 Subject: [PATCH 13/13] Prepare release 0.60 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index a3f92b7..8a4f713 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ 4.0.0 org.reaktivity nukleus-tls.spec - develop-SNAPSHOT + 0.60 TLS Nukleus Specification TLS Nukleus Specification https://github.com/reaktivity/nukleus-tls.spec