Implementation of CICD for Catalyst webclient and functions from Bitbucket

Implementation of CICD for Catalyst webclient and functions from Bitbucket

We can migrate our Catalyst project from the Bitbucket Repository to the Catalyst deployment environment using the CI/CD pipeline.

 

 Pre-requisites:

  1. Before setting up make sure you have the following data for your catalyst project

      1. catalyst token

      1. Catalyst project name

      1. Catalyst Project Org ID

  1. To know how to set up a catalyst project, you can try this tutorial on a simple web application.

  1. You need to generate a CLI token for executing commands for your user account from Catalyst CLI by executing the following command:

  1.                   catalyst token:generate

    1. This will initiate the token generation process. The CLI will display a URL that you can visit from any device. It will also generate a device verification code, which you must enter on the web page of the URL.

    1. Navigate to the URL displayed in the CLI and enter the verification code. Click Verify. The code will only be valid for five minutes.

    1. Once your device's CLI is verified, the token will be generated and displayed in your CLI.Do make a copy of that token.

  1. You can find your Catalyst Project name and Catalyst Org ID from the Catalyst Console Homepage: "https://console.catalyst.zoho.com/baas/{OrgID}/index"

CI/CD Setup:

  1. Navigate to the main branch of your Bitbucket repository where you stored your Catalyst project and create a called bitbucket-pipelines.yml which contains the script code to run in CI/CD pipeline.

  1. To know more about the Bitbucket CI/CD pipeline kindly refer here.

  1. After setting up the runners based on your preference you need to paste the below code based on the type of functions your catalyst application is going to run on.

 bitbucket-pipelines.yml 

  1.  image: atlassian/default-image:4
  2. pipelines:
  3.   default:
  4.         - step:
  5.             name: Deploy Catalyst application
  6.             script:
  7.               - apt update
  8.               - apt install software-properties-common -y
  9.               - add-apt-repository ppa:deadsnakes/ppa -y
  10.               - echo "6" | DEBIAN_FRONTEND=noninteractive apt install -y python3.9 python3.9-distutils
  11.               - curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
  12.               - python3.9 get-pip.py
  13.               - apt -y install openjdk-17-jdk
  14.               - npm install -g zcatalyst-cli@latest
  15.               - catalyst deploy --project ${CATALYST_PROJECT_NAME} --org ${CATALYST_ORG} --token ${CATALYST_TOKEN} 


  • Before committing any changes you need to add the below Values in your repository variables. You can find the help documentation for the same here.

    • CATALYST_PROJECT_NAME - Your Project Name

    • CATALYST_ORG - Your Project Org ID

    • CATALYST_TOKEN - Your catalyst token generated using the command catalyst token:generate

   

After pasting the above-mentioned code snippet in your bitbucket-pipelines.yml file, once you do a commit, the CI/CD pipeline executes the job mentioned in the bitbucket-pipelines.yml file.

    • Announcements

    • Important Announcements in Support for Catalyst Features

      Hello Catalyst Users, This announcement is to bring to your notice some of the recent updates in our support for various Catalyst components, to ensure that your existing Catalyst applications function properly. You can continue to build robust applications
    • Introducing Catalyst 2.0, the simplest cloud-based pro-code development platform.

      Dear Catalyst Community, We are beyond thrilled to present you Catalyst 2.0—the new-age, pro-code development platform that redefines the way you build, deploy, and scale apps. Catalyst 2.0 is not a mere upgrade, but a significant leap into the future
    • Set budgets to optionally disable your Catalyst production environment

      Hello all,    We are pleased to inform you that you can now configure the automatic disabling of a project's production environment upon reaching a specified budget's threshold. Budget alerts in Catalyst facilitate setting usage limits in amounts or Catalyst
    • #CatalystServerless Hackathon 2022

      We are pleased to announce #CatalystServerless Hackathon with prizes worth $5000 up for grabs. Create a working prototype aimed to solve a critical business issue using Catalyst and stand a chance to win exciting prizes. The Hackathon will happen in 3
    • Share your interest to participate in the #CatalystServerless Blogathon

      Hi, we are working on announcing the next edition of the #CatalystServerless Blogathon. Please fill up this form to stay posted on all updates related to the Blogathon. https://zfrmz.com/JN9ChxPU9JQpPgB1vRp8

      Catalyst Community