Skip to content

commerce-deploy

Actions
Triggers the deployment process for the SAP Commerce Cloud project in the CCv2
v1.0.0
Latest
Star (1)

Tags

 (1)

SAP Commerce Cloud - Deploy

This GitHub Action provides the following functionalities to perform deployment operations on SAP Commerce Cloud in the Public Cloud (CCv2) projects.

🚀 Completed Items

  • Trigger Deployment: Trigger SAP Commerce Cloud deployment.
  • Deployment Notification: Sends a notification when a deployment is triggered in CCv2.
  • Deployment Status Notification: Frequently check the deployment status and send notifications when success or failure.
  • Notifications: Notify the user via email or webhook when the build is triggered or completed.
    • Trigger Deployment: Triggered with deployment is created in CCv2.
    • Deployment Completed: Triggered when the deployment is completed in CCv2 whether it is success or failure.
    • Slack: Send notifications to Slack.
    • Microsoft Teams: Send notifications to Microsoft Teams.

🔧 Planned Items

  • Testing: Improve test coverage with end-to-end tests.
  • Notifications: Notify the user via email or webhook when the build is triggered or completed.
    • Deployment Progress: Check the deployment status and send notifications. (Is it required?)
    • Email: Send notifications to email.
      • SendGrid: Send notifications using SendGrid.
      • AWS SES: Send notifications using AWS SES.
      • Custom SMTP: Send notifications using custom SMTP.
      • Similar SMTP services.

Getting Started

See action.yml

Prerequisites

  • GitHub repository with SAP Commerce Cloud in the Public Cloud (CCv2) project.
  • SAP Commerce Cloud in the Public Cloud (CCv2) project with the required configurations.
  • Webhook URL or email address(es) to send notifications.
  • GitHub Actions enabled in the repository.
  • GitHub token with the required permissions.
  • SAP Commerce Cloud in the Public Cloud (CCv2) API Token.
  • SAP Commerce Cloud in the Public Cloud (CCv2) Subscription Code.
  • Build code to deploy.
  • Environment code to deploy.
  • Platform update mode.
  • Deployment strategy.

Example Workflow

Create a workflow YAML file (e.g., .github/workflows/deploy.yml) in your repository with the following content:

name: Deploy SAP Commerce Cloud

on:
  push:
    branches:
      - main
      - 'release/*'
  pull_request:
    branches:
      - main

jobs:
  deploy:
    runs-on: ubuntu-latest

    env:
      SAP_CCV2_API_TOKEN: ${{ secrets.SAP_CCV2_API_TOKEN }}
      SAP_CCV2_SUB_CODE: ${{ secrets.SAP_CCV2_SUB_CODE }}
      WEBHOOK_URL: ${{ secrets.WEBHOOK_URL }}

    steps:
      - name: Checkout repository
        uses: actions/checkout@v2

      - name: Trigger SAP Commerce Cloud Deployment
        id: deploy-action
        uses: sap-cx-actions/commerce-deploy@v1
        with:
          buildCode: '20240910.1'
          environmentCode: 'd1'
          databaseUpdateMode: 'UPDATE'
          deploymentMode: 'ROLLING_UPDATE'
          notify: true
          dryRun: false
          timezone: America/New_York

      - name: Print Output
        id: output
        run: |
          echo "Deployment Code: ${{ steps.deploy-action.outputs.deploymentCode }}, Deployment Status: ${{ steps.deploy-action.outputs.deploymentStatus }}"

Environment Variables

Variable Purpose Required
SAP_CCV2_API_TOKEN SAP Commerce Cloud in the Public Cloud (CCv2) API Token. True
SAP_CCV2_SUB_CODE SAP Commerce Cloud in the Public Cloud (CCv2) Subscription Code True
WEBHOOK_URL The Webhook URL to send notifications. False

Inputs

Attribute Purpose Required Default Example
buildCode The build code to deploy, output from the @sap-cx-actions/commerce-build. True
environmentCode The environment code to deploy. True d1, s1, p1
databaseUpdateMode The database update mode. True NONE, UPDATE, INITIALIZE
deploymentMode The deployment strategy. True ROLLING_UPDATE, RECREATE, GREEN
notify Send notifications to the provided destination. False false true, false
dryRun Run the action in dry-run mode. If true, the action will not trigger the deployment in actual CCv2. False false false
timezone The timezone to use for the timestamps. False America/New_York

Outputs

  • deploymentCode - The deployment code of the current deployment.
  • deploymentStatus - The status of the triggered deployment.

commerce-deploy is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.

About

Triggers the deployment process for the SAP Commerce Cloud project in the CCv2
v1.0.0
Latest

Tags

 (1)

commerce-deploy is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.