diff --git a/.github/workflows/release-snapshots.yml b/.github/workflows/release-snapshots.yml new file mode 100644 index 000000000..cfa329455 --- /dev/null +++ b/.github/workflows/release-snapshots.yml @@ -0,0 +1,36 @@ +name: Release to SNAPSHOTS Maven Central + +env: + MAVEN_ARGS: -B -C -V -ntp -Dhttp.keepAlive=false -e ${{ github.event.inputs.additional_args }} + RELEASE_MAVEN_ARGS: -Prelease -Denforcer.skip=true + OSSRHUSERNAME: ${{ secrets.OSSRHUSERNAME }} + OSSRHPASSWORD: ${{ secrets.OSSRHPASSWORD }} + SIGNINGPASSWORD: ${{ secrets.SIGNINGPASSWORD }} + +on: + workflow_dispatch: + schedule: + - cron: '0 2 * * *' # Every day at 2am + +jobs: + release-snapshots: + name: Release SNAPSHOT + # Cheap way to prevent accidental releases + # Modify the list to add users with release permissions + if: contains('["rhuss","rohanKanojia"]', github.actor) + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup Java + uses: actions/setup-java@v4 + with: + java-version: 11 + distribution: temurin + server-id: sonatype-nexus-snapshots + server-username: OSSRHUSERNAME + server-password: OSSRHPASSWORD + gpg-private-key: ${{ secrets.SIGNINGKEY }} + gpg-passphrase: SIGNINGPASSWORD + - name: Build and Release Project + run: ./mvnw ${MAVEN_ARGS} ${RELEASE_MAVEN_ARGS} clean deploy diff --git a/README.md b/README.md index 228f49d62..54a0c19f5 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,7 @@ It works with Maven 3.0.5 and Docker 1.6.0 or later. setups that you can use as blueprints for your projects. * [ChangeLog](doc/changelog.md) has the release history of this plugin. * [Contributing](CONTRIBUTING.md) explains how you can contribute to this project. Pull requests are highly appreciated! +* We publish nightly builds on maven central. Read How to use [Docker Maven Plugin Snapshot artifacts](./doc/HowToUseDockerMavenPluginSnapshotArtifacts.md). #### Docker API Support diff --git a/doc/HowToUseDockerMavenPluginSnapshotArtifacts.md b/doc/HowToUseDockerMavenPluginSnapshotArtifacts.md new file mode 100644 index 000000000..8703a6267 --- /dev/null +++ b/doc/HowToUseDockerMavenPluginSnapshotArtifacts.md @@ -0,0 +1,41 @@ +# How to use Fabric8 docker-maven-plugin snapshot artifacts? + +Artifacts are hosted at [docker-maven-plugin's Sonatype Snapshot repository](https://oss.sonatype.org/content/repositories/snapshots/io/fabric8/docker-maven-plugin/) + +Our [GitHub Action Snapshot release workflow](https://github.com/fabric8io/docker-maven-plugin/blob/master/.github/workflows/release-snapshots.yml) updates SNAPSHOT artifacts every night. + +## Using SNAPSHOTs in Maven Project + +In order to use these artifacts, update your `pom.xml` with these: + +```xml + + + oss.sonatype.org + https://oss.sonatype.org/content/repositories/snapshots + + true + always + + + +``` + +You'd also need to update version of the plugin you're using to use a SNAPSHOT version instead of a stable version. Here is an example: + +```xml + + x.yz-SNAPSHOT + + + + + + io.fabric8 + docker-maven-plugin + ${docker-maven-plugin.version} + + + +``` + diff --git a/pom.xml b/pom.xml index c4384d400..181a8a478 100644 --- a/pom.xml +++ b/pom.xml @@ -530,18 +530,23 @@ org.apache.maven.plugins maven-gpg-plugin 1.6 - - false - sign-artifacts + verify sign - verify + + false + + --batch + --pinentry-mode + loopback + +