A catalog is a local directory (which can be cloned from a Git repository) with the following structure:
.
├── extensions
│ └── <any_extension>.yaml
└── platforms
│ └── <any_platform>.yaml
For maintenance purposes, each extension is declared in its own file and has the following structure:
group-id: org.apache.myfaces.core.extensions.quarkus
artifact-id: myfaces-quarkus
The Quarkus extension MUST be released to a Maven repository. The descriptor states the Maven coordinates and the repository URL (if available).
IMPORTANT: The extension must be released using at least Quarkus 1.13.0.Final, otherwise the produced metadata won't be understood by the Registry application
Having an extension built against Quarkus Core version X
, it is assumed that the extension release is compatible with any requested Quarkus version >= X
. If you want to mark an extension release compatible with an older Quarkus core version, add a compatible-with-quarkus-core
attribute inside the version, as in the following example:
group-id: "io.quarkiverse.arthas"
artifact-id: "quarkus-arthas"
versions:
- "0.1":
compatible-with-quarkus-core:
- "2.8.3.Final"
Platforms are a set of extensions and MUST exist as a BOM.
group-id: "io.quarkus"
artifact-id: "quarkus-bom-quarkus-platform-descriptor"
classifier-as-version: true