Pick a CI provider
What:
A CI provider is the service/environment for how you will run CI.
Why: CI helps to ensure that you are able to test your code often and choosing the right provider ensures that you are able to ???
When:Mid-Development
Implementations:
- Built into GitHub
- Provides support for interacting with the broader community
- Has its own marketplace for open source actions
- Easy to add to existing GitHub projects
- Limited by the compute options from GitHub themselves
- Requires the use of GitHub
- More dynamic compute options
- Similar to GitHub Actions
- Free for open source
- Provides a on-prem hosted option
- Built with Azure familiarity in-mind
- May require expertise of Azure
-
Bitbucket Pipelines
- Built into Bitbucket
- Provides native Jira integration
- Requires the use of Bitbucket
-
Jenkins
- Does not rely on a specific code forge such as GitHub/GitLab
- Requires infrastructure to run Jenkins on
-
GitLab CI
- Provides more complex runner solutions on self-hosted hardware or cloud infrastructure
- Works well on GitLab projects
- May require self-hosting an instance to get full functionality
-
CircleCI
- Does not rely on a specific code forge to run
- Hosted for you
- Adds an additional cost for running CI of larger projects
Recommendation:
GitHub Actions