Migration Overview
Migrating a Continuous Integration and Delivery (CI/CD) platform can be straightforward or challenging. Every project, every team is a world; for some, it is trivial while for others, it is a big effort. In any case, it is our dearest hope that the effort benefits you and your team.
These guides will help you migrate from other CI systems to Semaphore. In this page, we'll review the basis for the migration process, as several migration steps are common for all CI systems.
We recommend going through the Guided Tour pages to familiarize yourself with Semaphore before starting the migration plan.
Migration plan
Here is the recommended plan to migrate from any CI provider to Semaphore.
-
Set goals
Write down your goals and reasons for migrating your CI to Semaphore. For example, you might wish to reduce costs or speed up your builds. Setting expectations from the get-go will make the whole migration process clearer and more straightforward.
If at any point in the process, you have doubts, contact us at support@semaphoreci.com. We want this process to be as smooth and painless as possible.
-
Compare features
We suggest breaking down the requirements for the new CI system into three categories:
- Must have
- Nice to have
- Optional
Use the feature comparison page to select the best Semaphore edition for you.
-
Create a proof of concept for your workflows
Pick one of your projects to be a pilot in your migration effort.
- Connect your GitHub or connect your BitBucket repository to Semaphore
- Configure a CI pipeline, the objective is to reach a green build. See the Guided Tour to get an overview of Semaphore
The following pages describe key features you might need for the migration:
-
Optimize performance
Once your project is building on Semaphore, begin optimizing for performance.
- Add more powerful self-hosted agents
- Learn and implement the optimization strategies like caching, fail-fast, and auto-cancel
-
Onboard your team
Once satisfied with your CI workflow it's time to onboard the rest of your team:
- Begin by adding the core developer team and letting them familiarize with Semaphore
- Then, invite to your server the rest of the team
- Assign roles to ensure everyone has the permissions needed to fulfill their responsabilities
-
Repeat steps 3-5 for the rest of your projects
-
Shut down the old CI system
If you don't have any projects running in your old CI system you can shut it down or cancel your plan once you are satisfied with Semaphore. Remember to deactivate or delete the old secrets connected to the decommissioned systems.