Today we rolled out a new GitHub integration (based on GitHub Apps) which changes login options and how projects are created.
Logging in with GitHub
The first thing you might notice, is that you’ll be asked to authorize CodeShip to access your GitHub account. We are migrating away from the OAuth App to the new GitHub App.
One improvement is that we no longer require read/write access to your repositories. Using the GitHub App APIs enables us to be more granular in what permissions the CodeShip GitHub App requires.
If you only use GitHub to login to CodeShip, you can stop here and skip the rest of this message. However, if you manage or setup projects, please read the next sections as these are important.
Installing the CodeShip GitHub App and setting up new projects
Before you can use the new project creation flow, you’ll need to install the CodeShip GitHub App on your GitHub organization and authorize it to access the repositories you want to use with CodeShip. The simplest way to do this, is to go through the migration flow covered in the following section.
As part of the new integration, we’ve optimized how you select your repositories, especially for GitHub. As you can see below, there’s no longer a need to copy and paste the clone URL or a risk of having permissions mis-configured.
Now you can simply select the GitHub organization from the dropdown that owns the repository you need. If you, or the CodeShip GitHub App, doesn’t have access to the repository it will not be listed (and you’ll need to go to GitHub to fix that).
Once you’ve selected your project, the rest of the setup stays the same.
IMPORTANT: Migrating old projects
In order to continue running builds, we need to get your projects migrated to use the new CodeShip GitHub App before Jan 31, 2019. Otherwise, GitHub will simply stop sending triggers, which means that none of your builds will continue to run.
Fortunately, the migration is super simple. If you have fewer than 100 repositories connected to CodeShip, it’s only a few simple clicks after installing the CodeShip GitHub App.
When you login, you will see a banner similar to this:
To start the migration, click “Migrate Projects” and you’ll see a list of the organizations that have projects that need to be migrated.
Simply click the organization you wish to migrate. This will take you to GitHub where you will install the CodeShip GitHub App on your organization and select which repositories you want CodeShip to be able to access. To make things easy, we’ve already asked for permissions to your current projects. In most cases, just click “Approve & Install” and we’ll handle the rest.
Note the migration process might take a few minutes depending on the number of projects you have, so you can check back later to verify that the migration was successful. If you experience any issues, don’t hesitate to reach out to us for help.
Do you have more than 100 projects?
Don’t worry if you’re one of those organizations that have more than 100 repositories connected to CodeShip, we have a simple way for you too. It requires a few extra steps, but is still much easier than trying to migrate manually.
The reason for this limitation is that GitHub doesn’t allow us to migrate more than 100 repositories using the UI method. What we’ve done instead is built a Ruby gem for you that takes care of everything. More details are available in the repository.