1
0
mirror of https://github.com/SAP/jenkins-library.git synced 2025-04-11 11:41:53 +02:00

docu xsdeploy scenario (#840)

This commit is contained in:
Marcus Holl 2019-10-23 11:03:17 +02:00 committed by GitHub
parent c1eb9f5c70
commit 945599c109
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 123 additions and 0 deletions

View File

@ -0,0 +1,101 @@
# Build and Deploy SAP Fiori Applications on SAP HANA XS Advanced
Build an application based on SAPUI5 or SAP Fiori with Jenkins and deploy the build result into an SAP Cloud Platform account in the Neo environment.
## Prerequisites
* [Docker environment](https://docs.docker.com/get-started/)
* All artifacts refereneced during the build are available either on Service Market Place or via public repositories
* You have set up Project “Piper”. See [guided tour](https://sap.github.io/jenkins-library/guidedtour/).
* Docker image for xs deployment available. Due to legal reasons there is no pre-build docker image. How to create the docker image is explained [here](https://github.com/SAP/devops-docker-images/tree/master/xs-cli).
### Project Prerequisites
This scenario requires additional files in your project and in the execution environment on your Jenkins instance.
For details see: [XSA developer quick start guide](https://help.sap.com/viewer/400066065a1b46cf91df0ab436404ddc/2.0.04/en-US/7f681c32c2a34735ad85e4ab403f8c26.html).
## Context
This scenario combines various different steps to create a complete pipeline.
In this scenario, we want to show how to build a Multitarget Application (MTA) and deploy the build result into an on-prem SAP HANA XS advances system. This document comprises the [mtaBuild](https://sap.github.io/jenkins-library/steps/mtaBuild/) and the [xsDeploy](https://sap.github.io/jenkins-library/steps/xsDeploy/) steps.
![This pipeline in Jenkins Blue Ocean](images/pipeline.jpg)
###### Screenshot: Build and Deploy Process in Jenkins
## Example
### Jenkinsfile
Following the convention for pipeline definitions, use a `Jenkinsfile`, which resides in the root directory of your development sources.
```groovy
@Library('piper-lib-os') _
pipeline {
agent any
stages {
stage("prepare") {
steps {
deleteDir()
checkout scm
setupCommonPipelineEnvironment script: this
}
}
stage('build') {
steps {
mtaBuild script: this
}
}
stage('deploy') {
steps {
xsDeploy script: this
}
}
}
}
```
### Configuration (`.pipeline/config.yml`)
This is a basic configuration example, which is also located in the sources of the project.
```yaml
steps:
mtaBuild:
buildTarget: 'XSA'
xsDeploy:
apiUrl: '<API_URL>' # e.g. 'https://example.org:30030'
# credentialsId: 'XS' omitted, 'XS' is the default
docker:
dockerImage: '<ID_OF_THE_DOCKER_IMAGE' # for legal reasons no docker image is provided.
# dockerPullImage: true # default: 'false'. Needs to be set to 'true' in case the image is served from a docker registry
loginOpts: '' # during setup for non-productive builds we might set here. '--skip-ssl-validation'
org: '<ORG_NAME>'
space: '<SPACE>'
```
#### Configuration for the MTA Build
| Parameter | Description |
| -----------------|----------------|
| `buildTarget` | The target platform to which the mtar can be deployed. In this case, the target platform is `XSA`. |
#### Configuration for the Deployment to XSA
| Parameter | Description |
| -------------------|-------------|
| `credentialsId` | The Jenkins credentials that contain user and password required for the deployment on SAP Cloud Platform.|
| `mode` | DeployMode. See [stepDocu](../../../steps/xsDeploy) for more details. |
| `org` | The org. See [stepDocu](../../../steps/xsDeploy) for more details. |
| `space` | The space. See [stepDocu](../../../steps/xsDeploy) for more details. |
### Parameters
For the detailed description of the relevant parameters, see:
* [mtaBuild](https://sap.github.io/jenkins-library/steps/mtaBuild/)
* [xsDeploy](https://sap.github.io/jenkins-library/steps/xsDeploy/)

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -78,6 +78,28 @@ nav:
- uiVeri5ExecuteTests: steps/uiVeri5ExecuteTests.md
- whitesourceExecuteScan: steps/whitesourceExecuteScan.md
- xsDeploy: steps/xsDeploy.md
- 'Pipelines':
- 'General purpose pipeline':
- 'Introduction': stages/introduction.md
- 'Examples': stages/examples.md
- 'Stages':
- 'Init Stage': stages/init.md
- 'Pull-Request Voting Stage': stages/prvoting.md
- 'Build Stage': stages/build.md
- 'Additional Unit Test Stage': stages/additionalunittests.md
- 'Integration Stage': stages/integration.md
- 'Acceptance Stage': stages/acceptance.md
- 'Security Stage': stages/security.md
- 'Performance Stage': stages/performance.md
- 'Compliance': stages/compliance.md
- 'Confirm Stage': stages/confirm.md
- 'Promote Stage': stages/promote.md
- 'Release Stage': stages/release.md
- 'Scenarios':
- 'Build and Deploy Hybrid Applications with Jenkins and SAP Solution Manager': scenarios/changeManagement.md
- 'Build and Deploy SAP UI5 or SAP Fiori Applications on SAP Cloud Platform with Jenkins': scenarios/ui5-sap-cp/Readme.md
- 'Build and Deploy Applications with Jenkins and the SAP Cloud Application Programming Model': scenarios/CAP_Scenario.md
- 'Build and Deploy SAP Fiori Applications for SAP HANA XS Advanced ': scenarios/xsa-deploy/Readme.md
- Resources:
- 'Required Plugins': jenkins/requiredPlugins.md