Skip to content

integrationArtifactDownload

Download integration flow runtime artefact

Description

With this step you can download a integration flow runtime artifact, which returns a zip file with the integration flow contents in to current workspace using the OData API. Learn more about the SAP Cloud Integration remote API for downloading an integration flow artifact here.

Usage

We recommend to define values of step parameters via .pipeline/config.yml file.
In this case, calling the step is essentially reduced to defining the step name.
Calling the step can be done either in an orchestrator specific way (e.g. via a Jenkins library step) or on the command line.

library('piper-lib-os')

integrationArtifactDownload script: this
piper integrationArtifactDownload

Prerequisites

Parameters

Overview - Step

Name Mandatory Additional information
apiServiceKey (yes) Secret pass via ENV or Jenkins credentials (cpiApiServiceKeyCredentialsId)
downloadPath yes
integrationFlowId yes
integrationFlowVersion yes
script (yes) Jenkins only reference to Jenkins main pipeline script
verbose no activates debug output

Overview - Execution Environment

Orchestrator-specific only

These parameters are relevant for orchestrator usage and not considered when using the command line option.

Name Mandatory Additional information

Details

apiServiceKey

Service key JSON string to access the Process Integration Runtime service instance of plan 'api'

back to overview

Scope Details
Aliases -
Type string
Mandatory yes
Default $PIPER_apiServiceKey (if set)
Secret yes
Configuration scope
  • ☒ parameter
  • ☐ general
  • ☐ steps
  • ☐ stages
Resource references Jenkins credential id:
  id: cpiApiServiceKeyCredentialsId
  reference to: apiServiceKey

downloadPath

Specifies integration artifact download location.

back to overview

Scope Details
Aliases -
Type string
Mandatory yes
Default $PIPER_downloadPath (if set)
Secret no
Configuration scope
  • ☒ parameter
  • ☐ general
  • ☒ steps
  • ☒ stages
Resource references none

integrationFlowId

Specifies the ID of the Integration Flow artifact

back to overview

Scope Details
Aliases -
Type string
Mandatory yes
Default $PIPER_integrationFlowId (if set)
Secret no
Configuration scope
  • ☒ parameter
  • ☐ general
  • ☒ steps
  • ☒ stages
Resource references none

integrationFlowVersion

Specifies the version of the Integration Flow artifact

back to overview

Scope Details
Aliases -
Type string
Mandatory yes
Default $PIPER_integrationFlowVersion (if set)
Secret no
Configuration scope
  • ☒ parameter
  • ☒ general
  • ☒ steps
  • ☒ stages
Resource references none

script

Jenkins-specific: Used for proper environment setup.

The common script environment of the Jenkinsfile running. Typically the reference to the script calling the pipeline step is provided with the this parameter, as in script: this. This allows the function to access the commonPipelineEnvironment for retrieving, e.g. configuration parameters.

back to overview

Scope Details
Aliases -
Type Jenkins Script
Mandatory yes
Default
Secret no
Configuration scope
  • ☐ parameter
  • ☐ general
  • ☐ steps
  • ☐ stages
Resource references none

verbose

verbose output

back to overview

Scope Details
Aliases -
Type bool
Mandatory no
Default false
Possible values - true
- false
Secret no
Configuration scope
  • ☒ parameter
  • ☒ general
  • ☒ steps
  • ☒ stages
Resource references none

cpiApiServiceKeyCredentialsId

Jenkins-specific: Used for proper environment setup. See using credentials for details.

Jenkins secret text credential ID containing the service key to the Process Integration Runtime service instance of plan 'api'

back to overview

Scope Details
Aliases -
Type string
Configuration scope
  • ☒ parameter
  • ☒ general
  • ☒ steps
  • ☒ stages

Example

Example configuration for the use in a Jenkinsfile.

integrationArtifactDownload script: this

Example for the use in a YAML configuration file (such as .pipeline/config.yaml).

steps:
  <...>
  integrationArtifactDownload:
    cpiApiServiceKeyCredentialsId: 'MY_API_SERVICE_KEY'
    integrationFlowId: 'MY_INTEGRATION_FLOW_NAME'
    integrationFlowVersion: 'MY_INTEGRATION_FLOW_VERSION'
    downloadPath: MY_INTEGRATION_FLOW_DOWNLOAD_PATH