Introduction to SAP Continuous Integration and Delivery service for SAP CPI Cloud Foundry environment.
SAP Continuous Integration and Delivery.
SAP Continuous Integration and Delivery service lets you manage software deliverables between accounts of different environment. One can configure CICD job to import development artifacts as well as their respective application specific content from source to target system. This solution has been provided to import application content from one subaccount to another subaccount and deploy it automatically in destination subaccount.
- To automate transportation of integration content artifacts between integration tenants in the CF environment one can use “Cloud Transport Management Service”.
- It can handle transports without the need for an on-premises system, other additional infrastructure, or any third-party services.
- Provide Access to SAP continuous integration and delivery.
- Choose an existing multi-environment subaccount, in which you want to use SAP CICD service, or create a new one.
- Subscribe to the SAP Continuous Integration and Delivery application and service key.
- Create different role collections for the CICD roles.
- Assign the CICD related roles to the role collections.
- Assign the role collections to users or user groups.
- Configure the landscape (create Destinations, Transport nodes, Transport Routes).
- We have to enable the “Continuous Integration and Delivery” Service in destination subaccount. Click on Service marketplace à Search for “Continuous Integration & Delivery” à click on “Create” Please refer : Link
2. We need to assign required Roles and Permissions to your ID to make administrator so that you can configure the CICD job to move the development artifact from source subaccount to destination subaccount. Refer Link
3. To open the “CICD” application. Click on “Instance and Subscription” –> Subscriptions –> Continuous Integration and Delivery. You can see the new application window where we need to configure the CICD jobs. (In trial account only two jobs can be configured).
4. Create credentials to connect CICD service to github. In github, click on “Personal settings” –> Developer settings –> Personal access token –> generate new token –> Select the repo scope –> Generate token –> copy the token
Make sure to copy your personal access token now. You won’t be able to see it again!
In CICD service, click on “Credentials tab” –> Create new credentials –> <<use above generated token as password>>
5. Create credentials to connect CICD service to destination CPI tenant.
Create “process integration runtime” instance in destination subaccount with “API” plan and create service key for the same. Using same service key, we need to create credentials in CICD service so that CICD service will be able to do handshake destination CPI tenant. Please find below two screenshots for more details.
6. Create new repository in GitHub which can be used for import development artifacts in destination subaccount.
7. Add a Repository in CICD service. Refer Link
8. Add a Webhook in GitHub
Configure a webhook between your repository and SAP Continuous Integration and Delivery to automate your builds.
In SAP Continuous Integration and Delivery, select repository –> Webhook data, which will provide information you need to create a webhook in GitHub.
Then, to add Webhook data in GitHub, click on settings –> Webhooks –> Add Webhook –> <<Enter all data collated from previous step (Payload URL, Content type, and Secret) >> –> Choose “Just the push event” –> Add webhook.
9. Create a job to configure the pipeline which will import development artifacts from source to tenant subaccount.
10. Check destination system, in “Test package”, we can see there is no artifacts.
11. Download the artifacts from source CPI tenant which needs to be imported into destination tenant and extract and upload it into git hub.
12. Once the files are uploaded to GitHub repository, CICD job will run automatically and import the artifacts in destination subaccount and will automatically deploy the artifacts in destination subaccount.
13. We can check the artifacts in destination subaccount.
Artifact is automatically deployed by the CICD service.
This blog post will help you to configure SAP CICD service which allows you to manage the transport of development artifacts and application-specific content between different SAP BTP account. It is fully cloud based solution and transports development without the need for an on-premise system, other additional infrastructure, or any third-party services. One can configure source and destination subaccounts in different global accounts and thus, SAP CICD can handle transports in Neo and in CF environment.
Q&A section: Link
Reference document : SAP Continuous Integration and Delivery | SAP Help Portal
Dear readers, if you find this blog post useful please provide me feedback or thoughts in the comment section, also, you can follow the product tag and my profile for more technical articles.
URL for product tag : cicd | SAP Community
Harshad chaudhari nice blog 🙂
is there a way to automate step 11? So e.g. for every new Version created the transfer to Github is automated?
While implementing this pipeline, I have searched for similar option but I could not find to automate that part in pipeline. but there is one option to make step 11 and 12 with more ease, we can use Sourcetree (Git GUI application) to upload the file mtar file from our desktop to Git. or
You can also use Cloud Platform transport management where we have a option to automatically import development artifacts into QA subaccount. Introduction to Cloud Platform Transport Management service for SAP CPI Cloud Foundry environment. | SAP Blogs
Could you tell me what role scope you applied to service instance “process integration runtime (api)”, so that CI/CD is able to execute necessary calls?
Thanks a lot!
you just need to configure service key of Process integration runtime as shown in step 5.