diff --git a/.github/workflows/maven-release.yml b/.github/workflows/maven-release.yml
new file mode 100644
index 0000000..619695d
--- /dev/null
+++ b/.github/workflows/maven-release.yml
@@ -0,0 +1,46 @@
+name: Publish package to the Maven Central Repository
+
+on:
+ release:
+ types: [created]
+
+jobs:
+ publish:
+ runs-on: ubuntu-latest
+ permissions:
+ contents: read
+ packages: write
+
+ steps:
+ - uses: actions/checkout@v3
+
+ - name: Set up Java 11 for publishing to Maven Central Repository
+ uses: actions/setup-java@v3
+ with:
+ java-version: '11'
+ distribution: 'temurin'
+ server-id: ossrh
+ server-username: MAVEN_USERNAME
+ server-password: MAVEN_PASSWORD
+ gpg-private-key: ${{ secrets.OSSRH_GPG_SECRET_KEY }}
+ gpg-passphrase: MAVEN_GPG_PASSPHRASE
+
+ - name: Build with Maven
+ run: mvn -B package
+
+ - name: Publish to maven central
+ run: mvn deploy --batch-mode -P release-maven-central, build-webjar
+ env:
+ MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }}
+ MAVEN_PASSWORD: ${{ secrets.OSSRH_TOKEN }}
+ MAVEN_GPG_PASSPHRASE: ${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }}
+
+ - name: Set up Java 11 for publishing to GitHub Packages
+ uses: actions/setup-java@v3
+ with:
+ java-version: '11'
+ distribution: 'temurin'
+ - name: Publish to GitHub Packages Apache Maven
+ run: mvn deploy -P deploy-github, build-webjar
+ env:
+ GITHUB_TOKEN: ${{ github.token }}
diff --git a/quartz-manager-parent/pom.xml b/quartz-manager-parent/pom.xml
index 392fd89..6c66e40 100644
--- a/quartz-manager-parent/pom.xml
+++ b/quartz-manager-parent/pom.xml
@@ -42,6 +42,15 @@
fabioformosa
+ 9
+ UTF-8
+ 2.22.0
+ 2.22.0
+ 0.8.8
+ 3.4.1
+ 1.6.7
+ 2.5.3
+ 3.0.1
https://sonarcloud.io
**/SpringApplicationTest.java, **/QuartManagerApplicationTests.java
@@ -94,24 +103,31 @@
-
-
- ossrh
- https://oss.sonatype.org/content/repositories/snapshots
-
-
- ossrh
- https://oss.sonatype.org/service/local/staging/deploy/maven2/
-
-
-
-
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+ ${java.version}
+ ${java.version}
+ ${project.build.sourceEncoding}
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ ${maven-surefire-plugin.version}
+
+
+ org.apache.maven.plugins
+ maven-failsafe-plugin
+ ${maven-failsafe-plugin.version}
+
org.jacoco
jacoco-maven-plugin
- 0.8.8
+ ${jacoco-maven-plugin.version}
@@ -127,17 +143,11 @@
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
- 9
- 9
-
-
+
org.apache.maven.plugins
maven-source-plugin
+ 3.2.1
attach-sources
@@ -150,13 +160,15 @@
org.apache.maven.plugins
maven-release-plugin
- 2.5.3
+ ${maven-release-plugin.version}
clean
+ v@{project.version}
build-webjar
true
false
forked-path
+ true
-Dgpg.passphrase=${gpg.passphrase}
@@ -170,7 +182,7 @@
org.sonatype.plugins
nexus-staging-maven-plugin
- 1.6.7
+ ${nexus-staging-maven-plugin.version}
true
ossrh
@@ -181,7 +193,7 @@
org.apache.maven.plugins
maven-javadoc-plugin
- 3.4.1
+ ${maven-javadoc-plugin.version}
attach-javadocs
@@ -201,19 +213,36 @@
- release-sign-artifacts
+ release-maven-central
performRelease
true
+
+
+ ossrh
+ https://oss.sonatype.org/content/repositories/snapshots
+
+
+ ossrh
+ https://oss.sonatype.org/service/local/staging/deploy/maven2/
+
+
+
org.apache.maven.plugins
maven-gpg-plugin
- 1.6
+ ${maven-gpg-plugin.version}
+
+
+ --pinentry-mode
+ loopback
+
+
sign-artifacts
@@ -227,6 +256,16 @@
+
+ deploy-github
+
+
+ github
+ GitHub Packages
+ https://maven.pkg.github.com/fabioformosa/quartz-manager
+
+
+