Atlassian or GitLab?... or... BOTH!
Kevin Anderson
SVP Strategy & Partnerships - Atlassian Platinum Partner @Sentify.co
It's a Friday bake-off!
DevOps pipeline modules - can you mix and match across vendors?
This question has come up a lot lately - specifically around Atlassian or GitLab: which should we be using and why? *Spoiler alert: you might just be able to have your cake and eat it too.
If you are a product owner, my guess is you are pretty stoked about the Atlassian toolset. By now, you have probably been using it for a while, you've got your workflows in Jira fine-tuned, your oversight and reporting is crisp, your Confluence IS the single source of truth, you can see your teams diligently following the Agile framework and you are pumping out high-quality features. What else could you possibly want? Not change, surely.
HOWEVER
If you are a tech lead, you're always interested in new innovative tech that can make your life easier... And you found GitLab Community Edition! And it's great! It's the full enchilada - wiki, workflows, tickets, dashboards, extensibility... You can customise your pipeline scripting with yaml files, you can have multiple stages of pipelines in one repo or multiple repos flowing into the one pipeline - it's continuous integration plumbing with all the pvc connections (as opposed to copper, solder and flux). It gives you the tech interface that you were missing with Bamboo, and on-site Bitbucket and it combines so many of the other tools you were using into one! Before you know it, it has sprouted up within a few different teams and now they want you to make a case to management about whether it's worth scaling and migrating.
Now you have a good old DevOps vendor bake-off on your hands. Atlassian vs GitLab.
On a quick side note, the GitLab Community Edition is pretty good at organically sprouting and spreading within teams all over the place. It seems that all good software solutions these days make it really easy for usage to sprout organically from within teams before taking over the entire enterprise... Like a parasite... A good parasite though! That's probably how your company started using the Atlassian suite in the first place. I digress.
SO which one should you pick? Atlassian or GitLab? There can be quite a division on this especially if you're looking at it from an "either-or" perspective...
What to do?
KEEP BOTH!
Absolutely, 100%
Here's a few things to consider:
- Wikis. Yeh sure, GitLab has a wiki, but Confluence is a Rolls Royce. Atlassian have had a 10 year head start on theirs. From a broader business perspective, Confluence is too business-user friendly to pass (GitLab's interface is a bit techy for the general business-user...). GL's wiki is good enough for your specific project and besides, you can capture everything about the product (user manuals, specs, rationale for change etc) back into confluence at the end of your project quite easily. SO - Keep Confluence!
- Workflows, tickets, dashboards. Same as above - Jira is too good overall to say goodbye to. So - Keep Jira (and all those lovely plugins)
BUT
The best thing about GitLab is "CI/CD". You were never considering GitLab because of its wikis and workflows on their own anyway. So instead of Atlassian VS GitLab, the conversation is really about "Bitbucket and Bamboo" VS Gitlab.
- Continuous Integration/Deployment and Delivery. This is what makes GitLab great. And this is the reason GitLab has sprouted up in your organisation in the first place. Pipeline definition - The yaml functionality is awesome and beautifully documented in GitLab. For dev teams, code beats buttons every time and that's a nice feature (less klicki-bunti). Gitlab runners are the equivalent of Bamboo agents, and we have an elastic capability there, limited only by hardware. Branched builds? Go for gold! When it comes to CI/CD, I'm going to say that in the Bitbucket and Bamboo VS GitLab comparison... GitLab wins.
- Interoperability. GitLab knew what marketplace they were competing in so they have, like Atlassian, created well-documented APIs which allow some pretty neat interoperability functions to your Jira project and Confluence space. You can link feature branches directly to tickets and back again, or even create your feature branches from Jira - just like in pure Atlassian.
- Cost. Each tool is charged at a PER USER rate. So if you use GitLab instead of Bitbucket and Bamboo, you'll still just pay per-user the same as you would if you used the Atlassian set. And GitLab comes out slightly cheaper - there are a few factors to determining your exact cost, but using some recent test cases we've found there is a bit of savings with GL. (One substantial disadvantage of Bamboo is that you pay per agent not per user, so if you have a decent feature based branching strategy, and limited agents... your fast feedback becomes slow). SO from a cost perspective, keep BOTH toolsets - Confluence and Jira AND Gitlab!
We could go on and on about the cool features in both toolsets and you'll always have people in both camps for good reasons. And that's ok! But you don't have to live in a world of "either-or". You can, and we've worked with many who do, successfully use the both Atlassian and GitLab toolsets in harmony.
So the moral of the story is that instead of a two kitchen bake-off, you can have your cake and eat it too!
Have a great weekend,
Kevin,
Comment, like, share - or get in touch!
#Atlassian #Gitlab #Confluence #Jira #wiki #pipeline #CI/CD #Agile #Bitbucket #Bamboo #AutomatedTesting