Skip to main content
Version: 1.0.0

CI/CD

One of the benefits of Zeet is that it automates your deployment pipeline, removing the need to manually log in to your server to pull code and build your Project while it's offline. Instead, Zeet connects to your GitHub Repository for full CI/CD integration out-of-the-box.

When you push any changes to your GitHub repo, Zeet will automatically pull the changes, rebuild, and deploy your Project with the new code. Upon successful deployment of the new version, Zeet will swap out the old deployment for the latest one - resulting in zero downtime between deployments. If the build or deployment is unsuccessful, Zeet will keep the existing deployment active.

Configuring Git Branch

By default, Zeet deploys the main or master branch of your GitHub repo. However, you can change the deployed branch by navigating to the CI/CD tab of your Project Settings. In the Branch field, you can specify the branch you want Zeet to track for your Project.

When you edit the source branch, Zeet will automatically update the deployment to the new branch. New deployments will be triggered when you push changes to the new branch. You can also pin the source branch to a specific commit hash or tag instead of a branch name.

Manually Triggering Deployments

To manually initiate a new branch deployment, go to the Deployments tab on your Project details page and click the Deploy Branch button. You have three options:

  1. Build from scratch - initiates a new deployment by rebuilding all resources from the ground up.
  2. Build with cache - triggers a deployment using cached resources when possible, speeding up the process.
  3. Restart - restarts the pod without launching a new build or deploy.

Deploy Strategies

Deploy strategies are methods to manage the rollout of new versions of a deployment. Zeet supports two common deploy strategies:

  1. Rolling Deployments - incrementally roll out updates by deploying to a subset of instances while the old version remains active, ensuring a smooth transition and minimal disruption. This is Zeet's default deploy strategy.
  2. Restart Deployments - quickly replace the existing deployment with the updated one, potentially causing brief service interruptions. This is suitable for stateless applications which can tolerate short downtimes.

You can change the Deploy Strategy for your Zeet Project in the Advanced tab of your Project Settings.

Manual Deploy Approvals

Enabling Manual Deploys allows you to disable Zeet's auto-deployment feature, providing better security controls and debugging capabilities.

You can switch from Automatic to Manual Deploys for your Zeet Project in the Source & Branch tab of your Project Settings.

Configure Submodules

Zeet allows easy configuration for submodules in your GitHub repository during the build process:

  1. Locate the "Git Submodules" section in the Advanced Settings page.
  2. Use the toggle to choose between:
    • None: Excludes submodules in the build.
    • Recursive: Includes all submodules recursively.

This setting ensures your build includes necessary dependencies from your main repository or submodules.