An artifact task lets you search for artifacts from Artifactory. When you search for artifacts, Artifactory interfaces with various repositories such as Nexus and Yum.

About this task

When you include an Artifactory task in a pipeline stage, you can run a pipeline execution every time you develop new code that affects that artifact. The search output parameter from varied source repositories is always the same, and includes a repository name, a download URL, and size information, if available.

Note:

The open source version of Artifactory 4.14.2 exposes an issue in the Artifactory REST API. When you click Validate on the artifact that you add to a task, the REST API should validate the artifact. Even though vRealize Code Stream resolves the artifact, the Artifactory REST API cannot locate the artifact.

Prerequisites

  • Verify that a pipeline is available. See Create a Release Pipeline.

  • Verify that an Artifactory server endpoint is registered. See the Installation and Configuration guide.

Procedure

  1. Click the Code Stream tab.
  2. On the Pipelines tab, select an existing pipeline and click Edit to configure it.
  3. Click the Stages > button.
  4. Click Add Task.
  5. From the Provider drop-down menu, select Artifactory.
  6. Enter a task name and click OK.
  7. Select the new task in the stage.
  8. Configure the task.
    1. In the Artifact Properties area, click the drop-down menu, select an endpoint, and select the method to add the endpoint.
      Table 1. Add an Endpoint

      Option

      Description

      Add By Search

      Locate artifacts in the Artifactory repository by entering search parameters.

      Select the repository and the search type. Enter values for the name and path, and click Search.

      Add By Name

      Enter the name of an artifact and provide the property values. Select the repository, select the search type, and enter the name of the artifact. Enter values for the name and path.

    2. To use a simple JSON structure to output your artifacts, click Add, and enter an Artifact key of your choice, with no dot or space in the key.
    3. Click Save.
  9. Confirm to save the pipeline.
  10. Select an Execute Task for the release pipeline.

    Option

    Description

    Always

    Runs the release pipeline task without conditions.

    On Condition(s)

    Runs the release pipeline task only if the defined condition is evaluated as true. If the condition is false, the task is skipped.

    A boolean expression using the following operands and operators is supported.

    • Pipeline variables such as, ${pipeline.variableName}. Curly brackets are reserved for specifying pipeline variables.

    • Task output variables such as, ${Stage1.task1.machines[0].value.hostIp[0]}

    • Default pipeline binding variables such as, ${releasePipelineName}

    • Case insensitive Boolean values such as, true, false, 'true', 'false'

    • Integer or decimal values without quotes

    • String values used with single or double quotes such as, "test", 'test'

    • String and Numeric types of values such as, == Equals and != Not Equals

    • Relational operators such as, > , >=, <, and <=

    • Boolean logic such as, && and ||

    • Arithmetic operators such as, +, -, *, and /

    • Nested expressions using round brackets

    • Strings with literal value ABCD is evaluated as false and the task is skipped.

    Unary operators are not supported.

    A sample condition, ${Stage1.task1.output} == “Passed” || ${pipeline.variableName} == 39

  11. (Optional) : Select the Continue Pipeline execution even if this task fails option.

    This option allows the release pipeline to bypass the failed task and continue with the execution process.