From 1ead4fa9266d8c5aafd26eef52d87948baf5c337 Mon Sep 17 00:00:00 2001 From: Mads Opheim <71336041+madsop-nav@users.noreply.github.com> Date: Mon, 4 Mar 2024 14:35:01 +0100 Subject: [PATCH] Release mechanism - every push will trigger a release (#9) Push to anything but main will trigger a dev release, every push to main a proper GitHub release. Not sure if you've discussed the release process yet? Might be worth looking into [JReleaser](https://jreleaser.org/) --- .github/workflows/maven.yml | 81 ++++++++++++++++++++++++---- openhtmltopdf-core/pom.xml | 11 ---- openhtmltopdf-java2d/pom.xml | 11 ---- openhtmltopdf-latex-support/pom.xml | 11 ---- openhtmltopdf-mathml-support/pom.xml | 11 ---- openhtmltopdf-objects/pom.xml | 11 ---- openhtmltopdf-pdfbox/pom.xml | 11 ---- openhtmltopdf-rtl-support/pom.xml | 11 ---- openhtmltopdf-slf4j/pom.xml | 11 ---- openhtmltopdf-svg-support/pom.xml | 11 ---- pom.xml | 57 ++++++++++++++------ 11 files changed, 112 insertions(+), 125 deletions(-) diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index a15c8ed6b..d51e5a582 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -14,14 +14,73 @@ jobs: java: ['8','11','17', '21'] steps: - - uses: actions/checkout@v4 - - name: Set up JDK ${{matrix.java}} - uses: actions/setup-java@v4 - with: - distribution: 'temurin' - java-version: ${{matrix.java}} - cache: maven - - name: Maven -v - run: mvn -v - - name: Build with Maven - run: mvn -B package --file pom.xml + - uses: actions/checkout@v4 + - name: Set up JDK ${{matrix.java}} + uses: actions/setup-java@v4 + with: + distribution: temurin + java-version: ${{matrix.java}} + cache: maven + - name: Maven -v + run: mvn -v + - name: Build with Maven + run: mvn -B package --file pom.xml + + + release-dev: + name: Create release - dev + needs: build + runs-on: ubuntu-latest + permissions: + contents: write + packages: write + if: github.ref != 'refs/heads/main' + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: Setup Java + uses: actions/setup-java@v4 + with: + distribution: temurin + java-version: 17 + cache: maven + - name: Upload artifact + run: mvn -B deploy -Dgithub-release -e + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Create release + id: create_release + uses: elgohr/Github-Release-Action@v5 + with: + title: openhtmltopdf.dev + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + release: + name: Create release + needs: build + runs-on: ubuntu-latest + permissions: + contents: write + packages: write + if: github.ref == 'refs/heads/main' + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: Setup Java + uses: actions/setup-java@v4 + with: + distribution: temurin + java-version: 17 + cache: maven + - name: Upload artifact + run: mvn -B deploy -Dgithub-release + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Create release + id: create_release + uses: elgohr/Github-Release-Action@v5 + with: + title: openhtmltopdf + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/openhtmltopdf-core/pom.xml b/openhtmltopdf-core/pom.xml index 4cef15187..f4b6871b8 100644 --- a/openhtmltopdf-core/pom.xml +++ b/openhtmltopdf-core/pom.xml @@ -19,17 +19,6 @@ - - - sonatype-nexus-snapshots - https://s01.oss.sonatype.org/content/repositories/snapshots - - - sonatype-nexus-staging - https://s01.oss.sonatype.org/service/local/staging/deploy/maven2 - - - release diff --git a/openhtmltopdf-java2d/pom.xml b/openhtmltopdf-java2d/pom.xml index f050652c1..b8fc1e5ca 100644 --- a/openhtmltopdf-java2d/pom.xml +++ b/openhtmltopdf-java2d/pom.xml @@ -23,17 +23,6 @@ - - - sonatype-nexus-snapshots - https://s01.oss.sonatype.org/content/repositories/snapshots - - - sonatype-nexus-staging - https://s01.oss.sonatype.org/service/local/staging/deploy/maven2 - - - release diff --git a/openhtmltopdf-latex-support/pom.xml b/openhtmltopdf-latex-support/pom.xml index ad25dc440..39a388921 100644 --- a/openhtmltopdf-latex-support/pom.xml +++ b/openhtmltopdf-latex-support/pom.xml @@ -23,17 +23,6 @@ - - - sonatype-nexus-snapshots - https://s01.oss.sonatype.org/content/repositories/snapshots - - - sonatype-nexus-staging - https://s01.oss.sonatype.org/service/local/staging/deploy/maven2 - - - release diff --git a/openhtmltopdf-mathml-support/pom.xml b/openhtmltopdf-mathml-support/pom.xml index fe08ad815..1df6d67c1 100644 --- a/openhtmltopdf-mathml-support/pom.xml +++ b/openhtmltopdf-mathml-support/pom.xml @@ -25,17 +25,6 @@ - - - sonatype-nexus-snapshots - https://s01.oss.sonatype.org/content/repositories/snapshots - - - sonatype-nexus-staging - https://s01.oss.sonatype.org/service/local/staging/deploy/maven2 - - - release diff --git a/openhtmltopdf-objects/pom.xml b/openhtmltopdf-objects/pom.xml index abe655333..f95fe91c8 100644 --- a/openhtmltopdf-objects/pom.xml +++ b/openhtmltopdf-objects/pom.xml @@ -37,17 +37,6 @@ - - - sonatype-nexus-snapshots - https://s01.oss.sonatype.org/content/repositories/snapshots - - - sonatype-nexus-staging - https://s01.oss.sonatype.org/service/local/staging/deploy/maven2 - - - release diff --git a/openhtmltopdf-pdfbox/pom.xml b/openhtmltopdf-pdfbox/pom.xml index fe5b7d86f..0eb78d037 100644 --- a/openhtmltopdf-pdfbox/pom.xml +++ b/openhtmltopdf-pdfbox/pom.xml @@ -35,17 +35,6 @@ - - - sonatype-nexus-snapshots - https://s01.oss.sonatype.org/content/repositories/snapshots - - - sonatype-nexus-staging - https://s01.oss.sonatype.org/service/local/staging/deploy/maven2 - - - release diff --git a/openhtmltopdf-rtl-support/pom.xml b/openhtmltopdf-rtl-support/pom.xml index 001186d51..98e9e7f1b 100644 --- a/openhtmltopdf-rtl-support/pom.xml +++ b/openhtmltopdf-rtl-support/pom.xml @@ -23,17 +23,6 @@ - - - sonatype-nexus-snapshots - https://s01.oss.sonatype.org/content/repositories/snapshots - - - sonatype-nexus-staging - https://s01.oss.sonatype.org/service/local/staging/deploy/maven2 - - - release diff --git a/openhtmltopdf-slf4j/pom.xml b/openhtmltopdf-slf4j/pom.xml index 3e7d11f4c..17aef49d2 100644 --- a/openhtmltopdf-slf4j/pom.xml +++ b/openhtmltopdf-slf4j/pom.xml @@ -23,17 +23,6 @@ - - - sonatype-nexus-snapshots - https://s01.oss.sonatype.org/content/repositories/snapshots - - - sonatype-nexus-staging - https://s01.oss.sonatype.org/service/local/staging/deploy/maven2 - - - release diff --git a/openhtmltopdf-svg-support/pom.xml b/openhtmltopdf-svg-support/pom.xml index 36961d293..d722d4d76 100644 --- a/openhtmltopdf-svg-support/pom.xml +++ b/openhtmltopdf-svg-support/pom.xml @@ -23,17 +23,6 @@ - - - sonatype-nexus-snapshots - https://s01.oss.sonatype.org/content/repositories/snapshots - - - sonatype-nexus-staging - https://s01.oss.sonatype.org/service/local/staging/deploy/maven2 - - - release diff --git a/pom.xml b/pom.xml index 17192419e..be31ddfe4 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ Openhtmltopdf Open-HTML-to-PDF is a HTML and CSS renderer written in Java. It supports Java2D and PDF output. Open-HTML-to-PDF is a fork of Flying-saucer with additional features. - https://github.com/danfickle/openhtmltopdf + https://github.com/openhtmltopdf/openhtmltopdf @@ -36,23 +36,12 @@ - scm:git:git://github.com/imario42/openhtmltopdf.git - scm:git:https://github.com/imario42/openhtmltopdf.git - git://github.com/imario42/openhtmltopdf.git + scm:git:git://github.com/openhtmltopdf/openhtmltopdf.git + scm:git:https://github.com/openhtmltopdf/openhtmltopdf.git + git://github.com/openhtmltopdf/openhtmltopdf.git openhtmltopdf-parent-1.1.4 - - - sonatype-nexus-snapshots - https://s01.oss.sonatype.org/content/repositories/snapshots - - - sonatype-nexus-staging - https://s01.oss.sonatype.org/service/local/staging/deploy/maven2 - - - danfickle @@ -74,9 +63,47 @@ Mario Ivankovits mario@datenwort.at + + madsop-nav + Mads Opheim + mads.opheim@gmail.com + + + github-release + + + github-release + + + + + github + GitHub Packages + https://maven.pkg.github.com/${env.GITHUB_REPOSITORY} + + + + + maven-release + + + !github-release + + + + + sonatype-nexus-snapshots + https://s01.oss.sonatype.org/content/repositories/snapshots + + + sonatype-nexus-staging + https://s01.oss.sonatype.org/service/local/staging/deploy/maven2 + + + doclint-java8-disable