Skip to content

Setup in Cloud Foundry

Deploy Eclipse Dirigible in SAP BTP1, Cloud Foundry environment.

Prerequisites

Steps


  1. Set the SAP BTP Cloud Foundry API host:

    cf api <cloud-foundry-api-host>
    
  2. Log in to the SAP BTP, Cloud Foundry environment with:

    cf login
    
  3. Create XSUAA service instance:

    • Copy and paste the following content into xs-security.json:

      {
         "xsappname": "<applicationName>-xsuaa",
         "tenant-mode": "shared",
         "scopes": [
            {
               "name": "$XSAPPNAME.Developer",
               "description": "Developer scope"
            },
            {
               "name": "$XSAPPNAME.Operator",
               "description": "Operator scope"
            }
         ],
         "role-templates": [
            {
               "name": "Developer",
               "description": "Developer related roles",
               "scope-references": [
                  "$XSAPPNAME.Developer"
               ]
            },
            {
               "name": "Operator",
               "description": "Operator related roles",
               "scope-references": [
                  "$XSAPPNAME.Operator"
               ]
            }
         ],
         "role-collections": [
            {
               "name": "dirigible",
               "description": "Dirigible Developer",
               "role-template-references": [
                  "$XSAPPNAME.Developer",
                  "$XSAPPNAME.Operator"
               ]
            }
         ]
      }
      

      Replace the <applicationName> placeholder with your application name, e.g. dirigible.

    • Create a XSUAA service instance:

      cf create-service xsuaa application <applicationName>-xsuaa -c xs-security.json
      

      Use the same <applicationName> as in the previous step.

  4. Deploy Eclipse Dirigible:

    cf push dirigible \
    --docker-image=dirigiblelabs/dirigible-sap-cf:latest \
    --hostname dirigible-<org-name> \
    -m 2G -k 2G
    

    Note

    • Replace the <org-name> placeholder with your subaccount's Subdomain value.
    • Instead of using the latest tag (version), for production and development use cases it is recomended to use a stable release version:
      • All released versions can be found here.
      • All Eclipse Dirigible Docker images and tags (versions) can be found here.
    • Bind the XSUAA service instance to the Eclipse Dirigible deployment:

      cf bind-service dirigible <applicationName>-xsuaa
      

      Replace the <applicationName> placeholder with the application name used in the previous steps.

    • Restart the dirigible deployment:

      cf restart dirigible
      
    • Download the sap-cf-all binaries from the downloads site: download.dirigible.io
    • Unzip the downloaded archieve to extract the ROOT.war file.
    • Create manifest.yaml file in the same directory where the ROOT.war is located:

      applications:
      - name: dirigible
        host: dirigible-<org-name>
        memory: 2G
        buildpack: sap_java_buildpack
        path: ROOT.war
        env:
          JBP_CONFIG_COMPONENTS: "jres: ['com.sap.xs.java.buildpack.jdk.SAPMachineJDK']"
          JBP_CONFIG_SAP_MACHINE_JRE: 'jre: { version: 11.+ }'
        services:
          - <applicationName>-xsuaa
      

      Note

      • Replace the <org-name> placeholder with your subaccount's Subdomain value.
      • Replace the <applicationName> placeholder with the application name used in the previous steps.
    • Deploy with:

      cf push
      

  5. Assign the Developer and Operator roles.

  6. Log in.

Additional Materials

  • For deployment through manifest.yaml follow these steps.
  • A step-by-step tutorial can be found here.

  1. SAP Cloud Platform is called SAP Business Technology Platform (SAP BTP) as of 2021.