Skip to content

integrationArtifactUpload

Upload or Update an integration flow designtime artifact

Description

With this step you can either upload or update a integration flow designtime artifact using the OData API. Learn more about the SAP Cloud Integration remote API for updating 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')

integrationArtifactUpload script: this
piper integrationArtifactUpload

Prerequisites

Parameters

Overview - Step

Name Mandatory Additional information
apiServiceKey (yes) Secret pass via ENV or Jenkins credentials (cpiApiServiceKeyCredentialsId)
filePath yes
integrationFlowId yes
integrationFlowName yes
script (yes) Jenkins only reference to Jenkins main pipeline script
packageId no
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

filePath

Specifies integration artifact relative file path.

back to overview

Scope Details
Aliases -
Type string
Mandatory yes
Default $PIPER_filePath (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

integrationFlowName

Specifies the Name of the Integration Flow artifact

back to overview

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

packageId

Specifies the ID of the Integration Package

back to overview

Scope Details
Aliases -
Type string
Mandatory no
Default $PIPER_packageId (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.

integrationArtifactUpload script: this

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

steps:
  <...>
  integrationArtifactUpload:
    cpiApiServiceKeyCredentialsId: 'MY_API_SERVICE_KEY'
    integrationFlowId: 'MY_INTEGRATION_FLOW_ID'
    integrationFlowName: 'MY_INTEGRATION_FLOW_Name'
    packageId: 'MY_INTEGRATION_Package_ID'
    filePath: 'MY_INTEGRATION_FLOW_Artifact_Relative_Path'
    downloadPath: /MY_INTEGRATION_FLOW_DOWNLOAD_PATH