Release Bundle v2 manifests are an optional feature that enable you to limit a Release Bundle v2 to a subset of modules within a build. In addition to limiting the build contents to a specific module or package type, you can define include and exclude patterns to select specific artifacts and dependencies. Examples of manifests are described below.
Note
To exclude selected artifacts in the build from the Release Bundle, see Exclude Artifacts from a Release Bundle (v2).
A manifest can have any filename and can be stored in any repository. Builds are connected to their manifests via the build property buildInfo.env.RBV2_MANIFEST
.
Manifest Template
{ "modules": [ { "id": "{module-id}", "type": "{module-type}", //"optional" "artifacts": { //"optional" "include": [ "{ant-path-matcher}" ], "exclude": [ "{ant-path-matcher}" ] }, "dependencies": { "include": [ "{ant-path-matcher}" ], "exclude": [ "{ant-path-matcher}" ] } } ] }
Release Bundle Manifest Examples
Example 1: Select all contents of the module with the ID "module-001"
{ "modules": [ { "id": "module-001" } ] }
Example 2: Select all contents of the module with the ID "module-002" that are of the type "maven"
{ "modules": [ { "id": "module-002", "type": "maven" } ] }
Example 3: Select all contents of the module with the ID "module-003" that are of the type "maven", and the contents of "module-004", regardless of type. From "module-004" include those artifacts that end with the extension "*bin", and exclude all dependencies that start with "README".
{ "modules": [ { "id": "module-003", "type": "maven" }, { "id": "module-004", "artifacts": { "include": [ "**.bin" ] }, "dependencies": { "exclude": [ "README**" ] } } ] }