A GitHub Action that downloads and installs Quarkus Maven snapshot artifacts from the latest release into your local Maven repository (~/.m2/repository).
This action:
- Searches for the latest snapshot release matching the specified branch in the configured repository.
- Downloads the
maven-repo.tar.gzartifact from the release. - Extracts it into
~/.m2/repository.
If no usable snapshot is available, the action automatically falls back to cloning and building Quarkus from source for the requested branch. Set fail-on-missing: true to fail the build instead.
steps:
- uses: quarkusio/install-quarkus-snapshots-action@mainsteps:
- uses: quarkusio/install-quarkus-snapshots-action@main
with:
branch: 3.17
repository: quarkusio/quarkus-ecosystem-cisteps:
- uses: quarkusio/install-quarkus-snapshots-action@main
with:
fail-on-missing: true| Input | Description | Required | Default |
|---|---|---|---|
branch |
The Quarkus branch to install snapshots for | Yes | main |
repository |
The repository containing the Maven snapshot releases | Yes | quarkusio/quarkus-ecosystem-ci |
fail-on-missing |
Fail the build instead of building Quarkus from source when no snapshot is available | No | false |
| Output | Description |
|---|---|
quarkus-version |
The Quarkus version that was installed |
quarkus-sha |
The Quarkus commit SHA |
built-from-source |
true if Quarkus was built from source, false if installed from a snapshot |
This action requires the following permissions on the calling workflow:
| Permission | Access | Reason |
|---|---|---|
contents |
read |
Required to list, view, and download releases via the gh CLI |
Example workflow with explicit permissions:
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: quarkusio/install-quarkus-snapshots-action@mainMaven builds that depend on the installed snapshots should use the -nsu (--no-snapshot-updates) flag to prevent Maven from trying to download SNAPSHOT artifacts from remote repositories (e.g. Sonatype), which would override the locally installed snapshots:
steps:
- uses: quarkusio/install-quarkus-snapshots-action@main
- run: mvn verify -nsuTo remove the snapshot artifacts after your build, use the cleanup action with if: always() to ensure it runs even if the build fails:
steps:
- uses: quarkusio/install-quarkus-snapshots-action@main
- run: mvn verify -nsu
- uses: quarkusio/install-quarkus-snapshots-action/cleanup@main
if: always()- The
ghCLI must be available in the runner (included by default in GitHub-hosted runners). - The
GITHUB_TOKENmust have read access to the releases in the target repository. The action usesgithub.tokenautomatically. - When building from source,
mvnand a JDK must be available on the runner.
Apache License 2.0 - see LICENSE for details.