There are hardware, software and service prerequisites for participating in this CodeJam. The exercises will be developed using different SAP Integration Suite services and communicating with remote services that will be made available for the CodeJam.
In this CodeJam, you will see that across exercises, there are references to files that will help you get started or that are needed to complete the activities. To access these files, you can download the individual files directly from the repository website, or you can make a copy of the repository on your local machine by following one of the options below:
-
(Recommended) Clone the git repository in your local machine with the following command:
$ git clone https://github.com/SAP-samples/connecting-systems-services-integration-suite-codejam.git
If you've set up SSH to communicate with GitHub from your local machine, you can clone it using the following command:
git clone [email protected]:SAP-samples/connecting-systems-services-integration-suite-codejam.git
Using
git
is recommended as there might be future updates on the CodeJam content; updating your local copy will just be a command away.$ git pull origin main
-
Alternatively, download the repository as a zip, and unzip it.
None.
A web browser supported by the SAP Integration Suite1: For the UIs of the service, the following browsers are supported on Microsoft Windows PCs and, where mentioned below, on macOS. Note that, however, certain limitations might apply for specific browsers:
Cloud Integration has been tested using the following browsers:
- Google Chrome (latest version)
- Microsoft Edge (latest version)
- Mozilla Firefox (latest version)
- Windows Internet Explorer (as of version 10)
The application can also be used with Safari browser and Internet Explorer 9. However, some features might not work as expected.
Postman, to send requests to the integration flows that we deploy to SAP Cloud Integration. Follow the installation instructions included in this tutorial: Install Postman REST Client.
Once installed you can import the collection and environments included in the
./connecting-systems-services-integration-suite-codejam/assets/postman
folder.
Using the SAP BTP Trial account (⚡️ recommended ⚡️)
- Get an SAP Business Technology Platform trial account: Tutorial: Get an account on SAP BTP Trial
- Tutorial: Set up the SAP Integration Suite trial
Using the SAP BTP Free Tier
- Get a free SAP Business Technology Platform account (if you don't already have one):
- Subscribe to the SAP Integration Suite service by following the instructions included in step 2 of the Set up the SAP Integration Suite trial tutorial.
Once subscribed to the SAP Integration Suite service, we will need to provision the following capabilities:
- Cloud Integration
- API Management
- Extend Non-SAP Connectivity
⚠️ Although the tutorial screenshot doesn't select the Extend Non-SAP Connectivity, don't be misguided by this... do include the Extend Non-SAP Connectivity capability.
To provision the SAP Integration Suite capabilities, follow the instructions included in step 3 of the Set up the SAP Integration Suite trial tutorial.
Once subscribed to the SAP Integration Suite, we will need to provision the create an instance of the Process Integration runtime. This service allow us to create client credentials which can be used to retrieve data from the SAP Cloud Integration APIs or calling an integration flow.
From command line:
# Login to Cloud Foundry
$ cf login --sso
# Create instance of service
$ cf create-service it-rt integration-flow pi-rt-iflow -c '{"roles": ["ESBMessaging.send"],"grant-types": ["client_credentials"],"redirect-uris": [] }'
# Create service key
$ cf create-service-key pi-rt-iflow iflow-client
# Get the credentials
$ cf service-key pi-rt-iflow iflow-client
From the BTP Cockpit:
-
Ensure the
ESBMessaging.send
role is selected and the grant-type isClient Credentials
Finalise by clicking the create button
-
Copy credentials: click on the service key just created and a pop-up will appear with the service key details, e.g.
clientid
,clientsecret
,url
,tokenurl
.
👉 Copy and paste the credentials details from
iflow-client
service key in theCloud Integration
Postman environment.
🚨 This is only required if you are running in a non-trial environment
Complete setup of SAP API Management (👉 when not running in the trial environment 👈)
Before being able to access API Management, you will need to complete the setup. Go to the API Management settings by navigating within the Integration Suite UI to *Settings > APIs*.
Enter a host alias, add a notification contact (your email address) and click the Set Up
button on the upper right corner.
Set up API Management capability
Set up API Management - Complete
For detailed steps, follow the instructions included in step 5 - Configure the API Management Service of the Set Up API Management from Integration Suite tutorial.
In exercise 05 we will configure a connection to Google's BigQuery via Open Connectors. Google Cloud Platform offers a free tier, through which you can use BigQuery. Go ahead and create a free account if you don’t have access to Google Cloud Platform – https://cloud.google.com/free/.
Once you have an account, navigate to BigQuery - https://console.cloud.google.com/bigquery, create a dataset and a table under your project.
👉 Create dataset under your Google Cloud project. Enable table expiration and set the maximum table age to 60
days.
Create bp_dependants_log dataset
👉 Create a table under the bp_dependants_log
dataset created with the schema below.
Field name | Type | Max Length |
---|---|---|
request_timestamp | TIMESTAMP | |
employee_id | STRING | 15 |
employee_country | STRING | 2 |
Create api-requests table
Alternatively, the remote services can be run locally or deployed to Cloud Foundry.
You can use the manifest.yml included in the assets/cf folder to deploy the services to your SAP BTP subaccount.
# Login to Cloud Foundry
cf login --sso
# Deploy the services using the manifest file
cf push -f assets/cf/manifest.yml
When running the services locally, we can use Cloud Connector to enable the communication between SAP BTP and the local service. The prerequisites to run it locally are included in running-locally-prerequisites.md Note: This is recommended if you are doing this exercise outside of a CodeJam event.