Skip to main content

Source Control

info

Gitlab and Bitbucket Support

Zuplo can integrate with Source Control providers like GitHub, BitBucket and GitLab. GitHub is our primary option - BitBucket and GitLab (including private instances) are available on an enterprise plan.

GitHub Integration

In this article we'll talk about GitHub integration - which has numerous benefits, including:

  • source control integration in portal.zuplo.com
  • ability to deploy an edge-deployment just by adding a branch or making a commit.

1/ Authorize to GitHub

Before you begin, it is best to create an empty GitHub Repo to use for your Zuplo project. Click the button below to go to GitHub and create a new repository. Select the organization where you'd like to create the repository.

Create GitHub Repo

Next, go to your project in the Zuplo portal and open to the Settings tab (1), then select Source Control (2). Control. If your project isn't already connected to GitHub click the Connect to GitHub button and follow the auth flow. You'll need to grant permissions for any GitHub organizations you want to work with.

Next, a dialog will open asking you to authorize Zuplo. Click the Authorize Zuplo button.

GitHub Permissions

The permission "Act on your behalf" sounds a bit scary - however, this is a standard GitHub permission and by default Zuplo can't actually do anything with this. In order to perform actions on your behalf you must grant Zuplo access to a specific repository (shown in the next steps.).

You can read more about this permission on GitHub's docs.

After you have connected the GitHub app, it needs to be granted permission to edit a repository. If this is your first time connecting Zuplo, you will be immediately asked to select a GitHub Org to install Zuplo. Select the org you want to use.

Next, you will be asked to select the repositories that you want Zuplo to access. The easiest thing is to just select All Repositories, but if you want fine-grain control, you can select a specific repo.

Existing Installation

The next step is only if you already have Zuplo installed in a GitHub org and need to add another organization.

If you weren't prompted to select a GitHub org, it is likely that you are already a member of an an account that has authorized Zuplo. To add Zuplo to a new organization click Add GitHub Account in the org picker list.

2/ Connect GitHub to your Project

With your GitHub App configured, you can now return to the Zuplo portal. In the Source Control settings you should now see a list of GitHub repositories - if you just created your project, it should be listed on the top. If not, just type the name in the search box. Once you have located your repository click the Connect button.

After the connection succeeds you will see a link to your GitHub repository.

Click the link to return to GitHub. You should see a green check next to the commit hash (1). When you hover your mouse over that you'll see the Zuplo deployment was successful. Click Details (2) to open the deployment info.

On the deployment page, you will see Deployment has Completed!! and below that is the link to your new environment.

Connecting Existing Repositories

If you have an existing GitHub repository that contains a Zuplo project, you can connect to that repository when you create a new project. Select Advanced then select your GitHub organization and repository.

Limitations

Renaming or moving projects in GitHub

The Zuplo GitHub integration does not yet handle moving or renaming repositories. As a workaround, you can first disconnect your project from GitHub and recreate it in another org or with another name. To do so, go to Settings > Source Control and then click Disconnect to disconnect your project from GitHub. Then follow the above instructions to reconnect your project to GitHub.