Synergy Logo

Contact Us

Menu Icon

Implementing CI/CD pipeline for E-commerce Platform and CMS/ Website Deployed on Azure using GitHub Actions.

Challenge

An e-commerce platform and a CMS website faced significant challenges in their development and deployment processes, as the project utilized agile methodologies and required daily deployments.

bullet-img

Manual Deployment Process: Deployments were manual, occurring 2-3 times daily, each taking 9-12 minutes and requiring a dedicated resource.

bullet-img

Limited Developer Access: Deployment was restricted to a dedicated resource, causing delays.

bullet-img

Inconsistent Deployments: Manual handling led to potential errors.

Solution

Backend CI/CD Process.

The backend was hosted on Azure Web Apps and deployments were done manually.

To automate the backend services, we implemented a CI/CD pipeline using GitHub Actions. The process starts when developers push code to the main or environment-specific branches, triggering a GitHub action defined by a YAML file. This action builds and runs the application and creates a Docker image from the code, which is then pushed to the Azure Container Registry (ACR). ACR triggers a webhook that deploys the latest Docker image to Azure Webapps, ensuring the latest changes are live and verifiable via Azure Web App logs.

Frontend CI/CD Process.

The frontend application was deployed on Azure Static Web Apps.

For the frontend, we set up a CI/CD pipeline that also uses GitHub Actions. When developers push code to the relevant branch, a GitHub action defined by a YAML file is triggered. The pipeline builds the frontend application and deploys it directly to Azure Static Web Apps, leveraging its built-in CI/CD capabilities for hosting static web applications.

Benefits

bullet-img

Deployment Time Reduction: Decreased from 9 - 12 minutes to 3 minutes (70% - 75% reduction).

bullet-img

Resource Efficiency: No longer required a dedicated resource for deployments.

bullet-img

Increased Deployment Frequency: Enabled deployments on each code push.

bullet-img

Developer Autonomy: All developers gained the ability to perform deployments, reducing bottlenecks and delays.

Implementing the CI/CD pipeline significantly streamlined the development and deployment processes for both the e-commerce platform and the CMS/ website, ensuring rapid, reliable, and scalable updates.