Skip to content

abapAddonAssemblyKitCreateTargetVector

This step creates a Target Vector for software lifecycle operations

Description

This step takes the Product Version and the corresponding list of Software Component Versions from the addonDescriptor in the commonPipelineEnvironment. With these it creates a Target Vector, which is necessary for executing software lifecylce operations in ABAP Cloud Platform systems. The Target Vector describes the software state, which shall be reached in the managed ABAP Cloud Platform system.

Usage

We recommend to define values of step parameters via config.yml file. In this case, calling the step is reduced to one simple line.
Calling the step can be done either via the Jenkins library step or on the command line.

Jenkins Pipeline

library('piper-lib-os')

abapAddonAssemblyKitCreateTargetVector script: this

Command Line

piper abapAddonAssemblyKitCreateTargetVector

Outputs

Output type Details
commonPipelineEnvironment
  • abap/addonDescriptor

Prerequisites

  • The credentials to access the AAKaaS (e.g. S-User) must be stored in the Jenkins Credential Store
  • This step needs the Product Version name and the resolved version(version, spslevel and patchlevel).
  • It also needs for each Software Component Version which should be part of the Target Vector, the name and the resolved version(version, splevel and patchlevel) as well as the Delivery Package.
  • The Delivery Packages must exist in the package registry (status "P") or already as physical packages (status "L" or "R").
  • This information is taken from the addonDescriptor in the commonPipelineEnvironment.
  • If you run prior to this step the steps: abapAddonAssemblyKitCheckCVs, abapAddonAssemblyKitCheckPV and abapAddonAssemblyKitReserveNextPackages you will get the needed information.

Parameters

Overview

Name Mandatory Additional information
abapAddonAssemblyKitEndpoint yes
addonDescriptor yes
password yes Secret pass via ENV or Jenkins credentials
script yes Jenkins only reference to Jenkins main pipeline script
username yes Secret pass via ENV or Jenkins credentials
verbose no activates debug output

Details

abapAddonAssemblyKitEndpoint

Base URL to the Addon Assembly Kit as a Service (AAKaaS) system

back to overview

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

addonDescriptor

Structure in the commonPipelineEnvironment containing information about the Product Version and corresponding Software Component Versions

back to overview

Scope Details
Aliases -
Type string
Mandatory yes
Default $PIPER_addonDescriptor (if set)
Secret no
Configuration scope
  • ☒ parameter
  • ☐ general
  • ☒ steps
  • ☒ stages
Resource references commonPipelineEnvironment:
  reference to: abap/addonDescriptor

password

Password for the Addon Assembly Kit as a Service (AAKaaS) system

back to overview

Scope Details
Aliases -
Type string
Mandatory yes
Default $PIPER_password (if set)
Secret yes
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

username

User for the Addon Assembly Kit as a Service (AAKaaS) system

back to overview

Scope Details
Aliases -
Type string
Mandatory yes
Default $PIPER_username (if set)
Secret yes
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

abapAddonAssemblyKitCredentialsId

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

Credential stored in Jenkins for the Addon Assembly Kit as a Service (AAKaaS) system

back to overview

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

Examples

Configuration in the config.yml

The recommended way to configure your pipeline is via the config.yml file. In this case, calling the step in the Jenkinsfile is reduced to one line:

abapAddonAssemblyKitCreateTargetVector script: this

The config.yml should look like this:

steps:
  abapAddonAssemblyKitCreateTargetVector:
    abapAddonAssemblyKitCredentialsId: 'abapAddonAssemblyKitCredentialsId',
    abapAddonAssemblyKitEndpoint: 'https://myabapAddonAssemblyKitEndpoint.com',

Input via the CommonPipelineEnvironment

{"addonProduct":"/DMO/myAddonProduct",
"addonVersion":"",
"addonVersionAAK":"0003",
"addonUniqueID":"",
"customerID":"",
"AddonSpsLevel":"0001",
"AddonPatchLevel":"0004",
"TargetVectorID":"",
"repositories":[
  {
    "name":"/DMO/REPO_A",
    "tag":"",
    "branch":"",
    "version":"",
    "versionAAK":"0001",
    "PackageName":"SAPK001001REPOA",
    "PackageType":"",
    "SpLevel":"0000",
    "PatchLevel":"0001",
    "PredecessorCommitID":"",
    "Status":"L",
    "Namespace":"",
    "SarXMLFilePath":""
  },
  {
    "name":"/DMO/REPO_B",
    "tag":"",
    "branch":"",
    "version":"",
    "versionAAK":"0002",
    "PackageName":"SAPK002001REPOB",
    "PackageType":"",
    "SpLevel":"0001",
    "PatchLevel":"0001",
    "PredecessorCommitID":"",
    "Status":"R",
    "Namespace":"",
    "SarXMLFilePath":""
  }
]}