Automating Your CI/CD Pipeline with HCS Using Webhooks

Integrating GitHub with HCS (HostSpace) using webhooks for app deployment allows you to automate the process of deploying your applications upon code changes. Here's a step-by-step guide on how to set up this integration:

1. Prerequisites

  • GitHub Repository: Ensure you have a repository on GitHub.

  • HCS Account: Ensure you have access to the HCS dashboard and necessary permissions to create deployments.

2. Setting Up a Webhook in GitHub

  1. Access Your Repository:

    • Log in to GitHub and navigate to your repository.

  2. Navigate to Webhooks:

    • Go to Settings in your repository.

    • Click on Webhooks in the left-hand menu.

    • Click on Add webhook.

  3. Configure the Webhook:

    • Payload URL: Enter the webhook URL provided by HCS for app deployment integration.

    • Content Type: Select application/json.

    • Secret: Enter a secret key (this will be configured in HCS as well).

    • Events: Choose Push events to trigger deployments on code changes.

    • Click on Add webhook to save the configuration.

3. Configuring HCS to Receive Webhooks

  1. Login to HCS:

    • Open your browser and go to the HCS dashboard.

    • Log in with your credentials.

  2. Navigate to Applications:

    • From the main dashboard, select the "Applications" section.

  3. Create a New Application Deployment:

    • Click on “Create Application” or a similar button.

    • Name: Enter a name for your application.

    • Source Code Repository: Connect to your GitHub repository by providing the necessary credentials and repository URL.

    • Branch: Choose the branch you want to deploy.

  4. Configure Webhook Integration:

    • In the application configuration, find the section for webhook settings.

    • Secret Key: Enter the same secret key you used when setting up the GitHub webhook.

    • Webhook URL: Ensure that the webhook URL matches the one you provided in GitHub.

  5. Define Build and Deployment Steps:

    • Build Steps: Configure the steps to build your application, such as compiling and packaging.

    • Deployment Steps: Set up the steps to deploy your application to HCS’s environment.

  6. Set Up Environment Variables:

    • Define any environment variables needed for your build and deployment processes.

  7. Configure Notifications and Alerts:

    • Set up notifications to receive updates on the status of your deployment.

    • Create alerts for build failures or deployment issues.

4. Testing the Integration

  1. Make a Push to Your Repository:

    • Make a code change and push it to the branch you configured for deployment.

  2. Check HCS Dashboard:

    • Go to the HCS dashboard and check the status of your application deployment.

    • Ensure that the deployment is triggered by the push event and that the build and deployment steps are executed correctly.

  3. Review Logs and Status:

    • Review the logs for each step to troubleshoot any issues.

    • Confirm that the deployment was successful.

5. Managing and Monitoring Your Application Deployment

  1. Edit Application Configuration:

    • Update build and deployment steps as needed.

    • Adjust webhook settings if necessary.

  2. Monitor Deployment Performance:

    • Use the HCS dashboard to monitor the performance of your deployments.

    • Review metrics and logs to optimize your deployment process.

  3. Version Control and Documentation:

    • Keep your deployment configuration in version control.

    • Document your deployment setup and processes to help team members understand the configuration.

Last updated