multicloudDeploy¶
Parameters¶
name | mandatory | default | possible values |
---|---|---|---|
cfCreateServices |
no | ||
cfTargets |
no | [] |
|
enableZeroDowntimeDeployment |
no | false |
|
neoTargets |
no | [] |
|
parallelExecution |
no | false |
|
preDeploymentHook |
no | ||
script |
yes | ||
source |
no |
cfCreateServices
- Defines Cloud Foundry service instances to create as part of the deployment. This is a list of objects with the following properties each: - apiEndpoint - credentialsId - serviceManifest - manifestVariablesFiles - org - spacecfTargets
- Defines the targets to deploy on Cloud Foundry.enableZeroDowntimeDeployment
- Defines the deployment type.neoTargets
- Defines the targets to deploy on neo.parallelExecution
- Executes the deployments in parallel.preDeploymentHook
- Closure which is executed before calling the deployment steps.script
- The common script environment of the Jenkinsfile running. Typically the reference to the script calling the pipeline step is provided with thethis
parameter, as inscript: this
. This allows the function to access thecommonPipelineEnvironment
for retrieving, e.g. configuration parameters.source
- The source file to deploy to SAP BTP.
Step configuration¶
We recommend to define values of step parameters via config.yml file.
In following sections of the config.yml the configuration is possible:
parameter | general | step/stage |
---|---|---|
cfCreateServices |
X | |
cfTargets |
X | X |
enableZeroDowntimeDeployment |
X | |
neoTargets |
X | X |
parallelExecution |
X | X |
preDeploymentHook |
||
script |
||
source |
Dependencies¶
The step depends on the following Jenkins plugins
- credentials-binding
- docker
- kubernetes
- lockable-resources
- pipeline-utility-steps
- workflow-basic-steps
- workflow-cps
- workflow-cps-global-lib
- workflow-durable-task-step
The kubernetes plugin is only used if running in a kubernetes environment. Transitive dependencies are omitted.
The list might be incomplete.
Consider using the ppiper/jenkins-master docker image. This images comes with preinstalled plugins.
Examples¶
multicloudDeploy(
script: script,
cfTargets: [[apiEndpoint: 'https://test.server.com', appName:'cfAppName', credentialsId: 'cfCredentialsId', manifest: 'cfManifest', org: 'cfOrg', space: 'cfSpace']],
neoTargets: [[credentialsId: 'my-credentials-id', host: hana.example.org, account: 'trialuser1']],
enableZeroDowntimeDeployment: 'true'
)