yalegria / devops-git-actions

0 stars 0 forks source link

Comparing Various Jenkis CI/CD Alternatives #21

Open Voxelghiest opened 2 years ago

Voxelghiest commented 2 years ago
CI/CD Option Pros Cons
GitHub Actions Integrates directly with GitHub
Has a wide variety of community-contributed tools
Does not support advanced features as easily
Jenkins Has many tools for running mass tests and aggregating results
Integrates with repositories beyond GitHub
Requires additional setup to integrate with GitHub
Takes more time to learn its many features
CircleCI Allows for a wider variety of pipeline runner types, including using a docker image as a runner Locks many features behind a paywall
yuriaru commented 2 years ago

Research about CircleCI.

Voxelghiest commented 2 years ago

After spending some time looking into CircleCI, I can say that, for the most part, it appears to work almost exactly the same as GitHub Actions or Jenkins.

As outlined in the CircleCI overview page, the project configuration is stored in a YAML file called a pipeline. Under the pipeline are various workflows, which are individual CI/CD processes that coordinate jobs and run on remote runner machines. A job contains a series of steps outlining the program's execution. The formatting and syntax are also very similar.

Where CircleCI differs is in the amount of resources you can use for running various jobs. I found a comparison chart the CircleCI had on their website, outlining various statistics of the runners. For example, GitHub Actions grants an organization up to 2,000 build minutes per month, while CircleCI grants 6,000 (both under their free plans). CircleCI seems to generally grant more resources to free users, but is notably missing the ability to run workflows on a macOS runner machine. I've attached the PDF below so you can examine it yourself.

Overall, however, it doesn't seem to be all that different. And this reflects what I've learned from researching other pipelines like Jenkins: at the end of the day, it doesn't matter as much which pipeline service you pick so much as how you use it. It's almost like trying to say which programming language is best; the correct choice is the one that you and your team are most comfortable using.

free-plan-comparison-chart.pdf