Skip to main content

Admin Panel Deployment Process

This guide provides step-by-step instructions for deploying the Admin Panel to staging and production environments.

Prerequisites

Before starting the deployment process, ensure you have:

  • Access to the repository and GitHub Actions
  • Appropriate permissions for the target environment
  • Understanding of the service versioning scheme

Deploy to Staging

Follow these steps to deploy the Admin Panel to the staging environment:

  1. Create Pull Request

    • Open a Pull Request from your feat/xxx branch to the develop branch
    • Ensure all code changes are reviewed and tested
  2. Review and Merge

    • Review the Pull Request with your team
    • Address any review comments
    • Merge the PR into the develop branch
  3. Navigate to GitHub Actions

    • Go to the repository on GitHub
    • Navigate to Actions > Dev Pipeline
    • Select the Admin Panel service
  4. Deploy Service

    • Click the Run workflow button
    • Select the service and version from the dropdown menus
    • Click Run workflow again to initiate the deployment
  5. Verify Deployment

    • Monitor the deployment workflow for completion
    • Verify the Admin Panel is running correctly in the staging environment
    • Test key functionality to ensure everything works as expected

Deploy to Production

Production deployments follow a more rigorous process to ensure stability and reliability.

Step 1: Create Release Branch

Create a release or hotfix branch from the develop branch:

  • Release branch: release/x.y.z (e.g., release/1.0.0)
  • Hotfix branch: hotfix/x.y.z (e.g., hotfix/1.0.1)
Version Numbering

Follow semantic versioning (SemVer):

  • Major (x): Breaking changes
  • Minor (y): New features, backward compatible
  • Patch (z): Bug fixes, backward compatible

Step 2: Set Up Release Version

  • Update version numbers in the appropriate configuration files
  • Ensure all version references are consistent across the codebase

Step 3: Create Pull Request to Main

  1. Open a Pull Request from your release/x.y.z or hotfix/x.y.z branch to the main branch
  2. Wait for team approval
  3. Merge the PR after receiving all required approvals

Step 4: Sync Hotfix to Develop (Hotfix Only)

Important for Hotfixes

If you created a hotfix/x.y.z branch, you must sync the changes back to develop:

  1. Open a Pull Request from the main branch to the develop branch
  2. This ensures the hotfix is included in future releases
  3. Review and merge the sync PR

Step 5: Verify Production Deployment

  • Monitor the production deployment pipeline
  • Verify the Admin Panel is running correctly
  • Check application logs and metrics
  • Perform smoke tests on critical functionality

Troubleshooting

Common Issues

Deployment fails in GitHub Actions

  • Check workflow logs for specific error messages
  • Verify service version exists in the registry
  • Ensure all required secrets and environment variables are configured

Admin Panel not accessible after deployment

  • Verify the service container is running: docker ps
  • Check service logs: docker logs <container-name>
  • Verify environment variables are correctly set
  • Ensure firewall rules allow traffic on the configured ports

Build errors during deployment

  • Review build logs for compilation errors
  • Verify all dependencies are correctly specified
  • Check for missing environment variables or configuration files

UI issues after deployment

  • Clear browser cache and cookies
  • Verify static assets are being served correctly
  • Check CDN configuration (if applicable)
  • Review browser console for JavaScript errors