Sign inSign up

sapse/application-content-deployer-buildpack

By sapse

Updated about 2 months ago

Image
0

2.5K

sapse/application-content-deployer-buildpack repository overview

Application Content Deployer Buildpack

The Application Content Deployer Buildpack is a cloud Native Buildpack (CNB) that packages your application content — such as MTAR or zip archives — together with the Application Content Deployer into an Open Container Initiative (OCI) image. This OCI image can be deployed and executed on any cloud environment (Eg. Kyma).


Scenario CAP application integrated with SAP Build Work Zone (Common Data Model Approach)

This guide outlines the process for deploying CAP applications integrated with SAP Build Work Zone using the Common Data Model (CDM) approach. The Application content deployer buildpack automatically detects a resources folder containing HTML5 application zip archives and cdm.json and build the content deployment image.


Prerequisites

Follow this guide to prepare the application for Deployment following the common data model approach.

!!! note - To enable integration of a business solution with SAP Build Work Zone, standard edition or SAP Build Work Zone, advanced edition, the business solution can be defined as a content provider by including a cdm.json file.

- The cdm.json file contains the Common Data Model (CDM) definition for the business solution. To configure this, create a cdm.json file with the required CDM definition and place it in the `resources` folder so that it is included during the content deployment build process.

Deployment steps

  1. Build the content deployment image

    Option 1: Using pack build command

    Run the following command to build the image (packs both html5 and portal content):

    application-content-deployment:
    pack build --publish --trust-builder \
      --builder proxy-unified-runtime-dmz.int.repositories.cloud.sap/builder/gardenlinux:latest \
      --buildpack sapse/application-content-deployer-buildpack:<latest> \
      $(REGISTRY)/application-content-deployment:latest
    

    Option 2: Using containerize.yaml to create the image

    Alternatively, use cds add containerize command to generate the containerize.yaml and adapt the module definition for content deployer image to use the application content deployer buildpack:

    _schema-version: '1.0'
    repository: <your-container-registry>
    tag: latest
    modules:
    - name: app-html5-deployer
        build-parameters:
        buildpack:
            type: sapse/application-content-deployer-buildpack:<latest>
            builder: builder-jammy-base
            path: app/html5-deployer
    

Helm Chart Configuration

  1. Run the following command to generate the Helm chart folder (Chart.yaml, values.yaml, values.schema.json):
cds add helm
  1. Add the content-agent-service instance definition in values.yaml:
content-agent-service:
serviceOfferingName: content-agent
servicePlanName: application
  1. Bind the content-agent-service in the html5-apps-deployer bindings section of values.yaml:
bindings:
content-agent-service:
    serviceInstanceName: content-agent-service
!!! info
    The `content-agent-service` binding is required for the application content deployer to deploy content to target content runtimes

4. Provide destinations via env in the html5-apps-deployer section:

env:
destinations: '[{"forwardAuthToken":true,"name":"srv-api","url":"https://<deployment-name>-srv-<namespace>.<cluster-domain>"}]'
!!! info
    The Application Content Deployer will inject these destinations into the HTML5 apps deployment API configuration.

5. Add content-agent-service dependency in Chart.yaml:

dependencies:
- name: service-instance
    alias: content-agent-service
    version: ">0.0.0"
  1. Rebuild Helm artifacts for production:
cds build --production
  1. Install the Helm chart into the target Kyma namespace.

Tag summary

Content type

Image

Digest

sha256:621e84efa

Size

9.3 MB

Last updated

5 months ago

docker pull sapse/application-content-deployer-buildpack