diff --git a/jfrog-applications/jfrog-cli/cli-for-jfrog-artifactory/release-lifecycle-management.md b/jfrog-applications/jfrog-cli/cli-for-jfrog-artifactory/release-lifecycle-management.md index f5847d6a..77a60aa2 100644 --- a/jfrog-applications/jfrog-cli/cli-for-jfrog-artifactory/release-lifecycle-management.md +++ b/jfrog-applications/jfrog-cli/cli-for-jfrog-artifactory/release-lifecycle-management.md @@ -93,24 +93,90 @@ The **create** command allows creating a Release Bundle v2 using [file specs](ht Only a single AQL query may be provided. + * Specified package (one or more): + ``` + { + "files": [ + { + "package": "catalina", + "version":"1.0.0", + "type": "maven", + "repoKey": "catalina-dev-maven-local" + }, + ] + } + ``` + + * A Release Bundle created from multiple sources: + The Release Bundle can include any number of builds, artifacts (using a pattern), packages, and Release Bundles. + However, it can include only one AQL query: + ``` + { + "files": [ + { + "build": "Commons-Build/1.0.0", + "includeDeps":"true", + "project": "default" + }, + { + "bundle": "rb1/1.0.0", + "project": "default" + }, + { + "bundle": "rb4/1.0.0", + "project": "default" + }, + { + "pattern": "catalina-dev-maven-local/*.jar" + }, + { + "package": "commons", + "version":"1.0.1", + "type": "maven", + "repoKey": "commons-dev-maven-local" + }, + { + "package": "catalina", + "version":"1.0.0", + "type": "maven", + "repoKey": "catalina-dev-maven-local" + }, + { + "aql": { + "items.find": { + "repo":{"$eq":"catalina-dev-maven-local"}, + "$and":[ + {"name": {"$match":"*1.0.0.pom"}} + ] + } + } + } + ] + } + ``` + + ### Command Params -| | | -| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| Command-name | release-bundle-create | -| Abbreviation | rbc | +| | | +| ------------------ |--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Command-name | release-bundle-create | +| Abbreviation | rbc | | **Command arguments:** | | -| release bundle name | Name of the newly created Release Bundle. | +| release bundle name | Name of the newly created Release Bundle. | | release bundle version | Version of the newly created Release Bundle. | -| **Command options:** | | -| `--project` |

[Optional]
Project key associated with the created Release Bundle version.

| -| `--server-id` |

[Optional]
Platform Server ID configured using the 'jf config' command.

| -| `--signing-key` |

[Optional]
The GPG/RSA key-pair name defined in Artifactory. The signing-key can also be configured as an environment variable. If no key is specified, Artifactory uses a default key.

| -| `--spec` |

[Optional]
Path to a File Spec. If you do not define the spec, you must include the build-name and build-number as environment variables, flags, or a combination of both (flags override environment variables).

| -| `--spec-vars` |

[Optional]
List of semicolon-separated(;) variables in the form of "key1=value1;key2=value2;..." (wrapped by quotes) to be replaced in the File Spec. In the File Spec, the variables should be used as follows: ${key1}.

| -| `--build-name` |

[Optional]
The name of the build from which to create the Release Bundle.

| -| `--build-number` |

[Optional]
The number of the build from which to create the Release Bundle.

| -| `--sync` |

[Default: true]
Set to false to run asynchronously.

| +| **Command options:** | | +| `--project` |

[Optional]
Project key associated with the created Release Bundle version.

| +| `--server-id` |

[Optional]
Platform Server ID configured using the 'jf config' command.

| +| `--signing-key` |

[Optional]
The GPG/RSA key-pair name defined in Artifactory. The signing-key can also be configured as an environment variable. If no key is specified, Artifactory uses a default key.

| +| `--spec` |

[Optional]
Path to a File Spec. If you do not define the spec, you must include the build-name and build-number as environment variables, flags, or a combination of both (flags override environment variables).

| +| `--spec-vars` |

[Optional]
List of semicolon-separated(;) variables in the form of "key1=value1;key2=value2;..." (wrapped by quotes) to be replaced in the File Spec. In the File Spec, the variables should be used as follows: ${key1}.

| +| `--build-name` |

[Optional]
The name of the build from which to create the Release Bundle.

| +| `--build-number` |

[Optional]
The number of the build from which to create the Release Bundle.

| +| `--source-type-release-bundles`|

[Optional]
One or more Release Bundles to include in the new Release Bundle in the form of "name=[rb-name], version=[rb-version];..." .

| +| `--source-type-builds` |

[Optional]
One or more builds to include in the new Release Bundle in the form of "name=[build-name], id=[build-id], include-deps=[true/false];...".

| +| `--sync` |

[Default: true]
Set to false to run asynchronously.

| + ### Examples @@ -138,6 +204,32 @@ Create a Release Bundle using build name and build number variables. jf rbc --build-name=Common-builds --build-number=1.0.0 myApp 1.0.0 ``` +#### Example 4 + +Create a Release Bundle from multiple builds + +``` +jf rbc rb3 1.0.0 --source-type-builds "name=Commons-Build, id=1.0.0, include-deps=true; name=Commons-Build, id=1.0.1" +``` + +#### Example 5 + +Create a Release Bundle from multiple existing Release Bundles. + +``` +jf rbc rb3 1.0.0 --project catalina --source-type-release-bundles "name=rb1, version=1.0.0; name=rb2, version=1.0.0" +``` + +#### Example 6 + +Create a Release Bundle from existing builds and Release Bundles. + +``` +jf rbc rb3 1.0.0 --source-type-builds "name=Commons-Build, id=1.0.0, include-deps=true; name=Commons-Build, id=1.0.1" +--source-type-release-bundles "name=rb1, version=1.0.0; name=rb2, version=1.0.0" +``` + + ## Promote a Release Bundle v2 This command allows promoting a Release Bundle to a target environment.