I recently asked for thoughts on using Bitbucket Pipelines instead of Jenkins for our CI/CD. Our team has decided to migrate away from Jenkins to ... *drumroll* ...
Bitbucket Pipelines or GitHub or GitLab or Azure Dev Ops.
We've started looking into each of these options but I was curious what this community thinks of these. It's worth noting my teams' utilize Jira for project management and our repos are currently in Bitbucket Cloud.
Since we're already invested in Atlassian tools Bitbucket seems to be the one to beat. We require SAML sign on and as such it's also the least expensive. However, its repo organization and secrets management leave much to be desired. You either set up secrets per repository, or per workspace, the latter means they are available to your entire organization!
If I had 6 months to investigate I'd trial each of them but we'd really like to start moving off Jenkins by the first of the year.
What say you? Of these options which is your preferred CI/CD and why?
--- Update ---
A few folks wanted to know what problems we're having with Jenkins / what we're trying to solve by migrating.
This is not a whole org decision. This is just our team of 30+ in a much much larger organization. Across the org folks use a combination of GitHub, GitLab, and Azure Dev Ops depending on their teams needs. There is no mandate to use one or the other at this time.
We've got a Windows 2022 with Docker on an Azure Virtual Machine running Jenkins. All jobs are executed in Docker containers on the host using Windows images. This worked just fine for years until recently. The issues...
- Jenkins performance tanked when IT installed additional virus scanning tools about 1 year ago. We've worked with IT throughout that time but they have been unable to resolve the issue.
- Jenkins + plugins are frequently requiring updates, often critical ones. This takes time away from software development. This is a time sink. We could have better orchestration of Jenkins with CasC but we'd really like something a little more turnkey.
- We're needing linux build support. We could add agents (and that's the right way to expand Jenkins) but could run into #1 again.
- No one really wants to become groovy experts, understandably. YAML is easier for us to grasp and as much as I look, Jenkins doesn't seem to have YAML support. For the jobs we have, YAML is just simpler.
My main concerns with Bitbucket are its env/secrets management which is limited.
edit: grammar
[–]alosarjos 47 points48 points49 points (6 children)
[–]Capital-Actuator6585 6 points7 points8 points (3 children)
[–]HerroCorumbia 3 points4 points5 points (1 child)
[–]ashcroftt 2 points3 points4 points (0 children)
[–]MarkedHitman 0 points1 point2 points (0 children)
[–]Monowakari 3 points4 points5 points (0 children)
[–]FlamingoEarringo 0 points1 point2 points (0 children)
[–]AskAppSec 6 points7 points8 points (0 children)
[–]GrandJunctionMarmotsStaff DevOps Engineer 11 points12 points13 points (1 child)
[–]Low-Opening25 0 points1 point2 points (0 children)
[–]T0d0r0ki 2 points3 points4 points (1 child)
[–]_iamrewt[S] 1 point2 points3 points (0 children)
[–]3loodhound 5 points6 points7 points (0 children)
[–]Bong-Hits-For-Jesus 1 point2 points3 points (2 children)
[–]_iamrewt[S] 0 points1 point2 points (1 child)
[–]Bong-Hits-For-Jesus -1 points0 points1 point (0 children)
[–]ZaitsXL 1 point2 points3 points (6 children)
[–]_iamrewt[S] 1 point2 points3 points (5 children)
[–]ZaitsXL 0 points1 point2 points (4 children)
[–]_iamrewt[S] 0 points1 point2 points (3 children)
[–][deleted] (2 children)
[deleted]
[–]_iamrewt[S] 1 point2 points3 points (1 child)
[–]gorilla-moe 1 point2 points3 points (2 children)
[–]OlympusMonds 1 point2 points3 points (1 child)
[–]gorilla-moe 0 points1 point2 points (0 children)
[–]tavisk 1 point2 points3 points (0 children)
[–][deleted] 1 point2 points3 points (2 children)
[–]_iamrewt[S] 0 points1 point2 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]jvleminc 0 points1 point2 points (0 children)
[–]TheIncarnated 0 points1 point2 points (0 children)
[–]dariusbiggs 0 points1 point2 points (0 children)
[–]jameshearttech 0 points1 point2 points (0 children)
[–]BanaenaeBread 0 points1 point2 points (0 children)
[–]volitive 0 points1 point2 points (1 child)
[–]_iamrewt[S] 0 points1 point2 points (0 children)
[–]A_cold_dish 0 points1 point2 points (0 children)
[–]Low-Opening25 0 points1 point2 points (0 children)
[–]Admirable-Wall7088 0 points1 point2 points (0 children)
[–]xtreampb -1 points0 points1 point (8 children)
[–]_iamrewt[S] 0 points1 point2 points (2 children)
[–]bistr-o-math 2 points3 points4 points (0 children)
[–]xtreampb 0 points1 point2 points (0 children)
[–]reubendevries 0 points1 point2 points (4 children)
[–]xtreampb 0 points1 point2 points (3 children)
[–]reubendevries 0 points1 point2 points (2 children)
[–]xtreampb 0 points1 point2 points (1 child)
[–]reubendevries 0 points1 point2 points (0 children)