cancel
Showing results for 
Search instead for 
Did you mean: 

CICD - Configure an SAP Fiori for the onpremise ABAP Platform

Joy_Ragavie
Explorer
0 Kudos

Hi All,

I am new and trying to build the pipeline using CICD services for Freestyle Fiori projects. i have to deploy the app to the on premise ABAP platform using CICD. Currently the infrastructure works fine for manual deployment.

Currently i have created the job in CICD and able to complete the prerequisite steps like job creation, credentials mapping, web hook. init and build stage is successful.  i need your help for setting up release stage

Configure the stages of your SAP Fiori for the ABAP platform job directly in the SAP Continuous Integration and Delivery service.

In the release stage - Upload Credentials - is the gateway server credentials to be given?

 Configure the stages of your SAP Fiori for the ABAP platform job in your repository.

  1. In the Git repository in which your project sources reside, create a new file named .pipeline/config.yml.
  2. Copy the following content into your config.yml file:
     

these steps do anyone has the sample file with all the configuration steps written 

 

Regards,

Ragavie

Accepted Solutions (0)

Answers (1)

Answers (1)

Nikitha09
Advisor
Advisor
0 Kudos

Hi @Joy_Ragavie ,

"uploadCredentials" are the credentials of the technical user to log on to SAP ABAP system.

The complete config looks like the following:

# Project configuration
general:
  buildTool: "npm"     

service: 
  buildToolVersion: "N18"           
  cloudConnectors:
    transportRequestUploadCTS:
      credentialId: "<CredentialID>"
    sonarExecuteScan: 
      credentialId: "<CredentialID>"      # optional, only relevant if you enable Compliance stage with "SonarQube" mode                 

# Stages configuration
stages:
  Build:
    npmExecuteLint: true                  # true, if you want to run a lint check that verifies the syntax of your JavaScript code (default: false)
  
  Additional Unit Tests:
     karmaExecuteTests: false             # true, if you want to execute the Karma Test Runner (default: false) 
     npmExecuteScripts: true              # true, if you want to execute test scripts that are defined in step npmExecuteScripts (default: false)

  Malware Scan: 
     malwareExecuteScan: true             # true, if you want your pipeline to execute malware scanning (default: false) 
 
  Compliance:
    sonarExecuteScan: false              # true, if you want to integrate continuous inspection of code quality (default: false). If you set this parameter to true, the sonarExecuteScan step is mandatory

  Release:
    cloudFoundryDeploy: true              # true, if you want to deploy to Cloud Foundry. If you set this parameter to true, the CloudFoundryDeploy step is mandatory
    cfApiEndpoint: "<YOUR SAP BTP, CLOUD FOUNDRY ENVIRONMENT API ENDPOINT>" # for example, https://api.cf.eu10.hana.ondemand.com
    cfOrg: "<NAME OF YOUR CLOUD FOUNDRY ORGANIZATION>"
    cfSpace: "<NAME OF YOUR CLOUD FOUNDRY SPACE>"
    cfCredentialsId: "<NAME OF YOUR CEDENTIAL>"
    tmsUpload: true                       # true if you want to upload your artifact to SAP Cloud Transport Management. If you set this parameter to true, the tmsUpload step is mandatory

# Steps configuration
 steps: 
# Init stage step 
  artifactPrepareVersion: 
    versioningType: "cloud_noTag"         # or "cloud", if you want your pipeline to write Git tags. In this case, you need to add the gitHttpsCredentialsId parameter

  npmExecuteLint: 
    failOnError: false                    # true, if you want your pipeline to fail, if the lint check reveals any errors

# Test stage step 
  npmExecuteScripts:                      # only relevant, if you set the npmExecuteScripts parameter in the Additional Unit Tests stage to true
    runScripts: 
      - "test"                            # list of script names in your package.json file to be executed

# Complaince stage steps 
  sonarExecuteScan:
    serverUrl: "<SONARQUBE SERVER URL>"                                                    # "https://sonarcloud.io" for SonarCloud and custom URL to your internet-facing SonarQube server for SonarQube
    organization: "<SONARCLOUD ORGANIZATION>"                                              # only relevant for the SonarCloud configuration mode
    projectKey: "<SONARQUBE PROJECT KEY>"                                                  # project key that you provided for your SonarQube project                                      
    sonarTokenCredentialsId: "<SONARQUBE CREDENTIAL>"                                      # credential of type "Secret Text", containing the token that was generated when creating your SonarQube project

# Release stage steps 
  transportRequestUploadCts:                                                               # only relevant, if you set the cloudFoundryDeploy parameter in the Release stage to true 
    endpoint: "<http://host:port>"                                                         # the URL of your ABAP server using the HTTP protocol (http://<host:port>)
    uploadCredentialsId: "<ABAP CREDENTIAL>"                                               # credential of type "Basic Authentication" to authenticate your pipeline against your ABAP system
    abapPackage: "<ABAP PACKAGE NAME>"                                                     # the name of the ABAP package you want to upload your application to
    applicationName: "<NAME>"                                                              # the name of your application
    applicationDescription: "<DESCRIPTION>"                                                # a description for your application
    transportRequestId: "<TRNSPORT REQUEST ID>"                                            # the transport request ID of an open CTS+ transport in your ABAP system

 Please ensure that if you use on-premise abap system, it is required to configure the cloud connector credentials as well.

Thanks and Regards,

Nikitha

Joy_Ragavie
Explorer
0 Kudos
Hi @NIKITHA, Thank you i will look into it and come back to you