When I started this blog I wanted to be more consistent with my tech writing. After some time I have to say I haven't achieve that. Although I could sit here and enumerate the reasons I haven't been able to get myself to do so, I won't do it. Instead, I will only state that I moved out (and some of you will know how exhausting it is). Just as I moved out from home, I also moved out from source control server. And so, the story of this blog post begins...
Here at the office we have been successfully using Atlassian Bitbucket Server. We are not a big team and as such, the $10 USD licensing was sufficient for us. It is a good solution and we were happily using it (we have Jira for projects, so the integration was nice to have). Noticed the word I used in the last sentence? It was just good. Why?
Well, I have always hated Java, I really don't like it. Although syntactically similar to C++ or C#, I never enjoyed writing Java. I need to make a small pause here to say that this is 100% a prejudice of mine, be it the awful Swift GUI look I knew from back the days or the slowness I was used in the early days. I just don't like it.
I didn't really had any problems installing the latests versions of Bitbucket, and Atlassian has make big improvements over their distributables. The last versions were completely automated, even the upgrades. But it always made me struggle when I needed to fix the Tomcat config files (as we have an HTTP Reverse Proxy with SSL termination in place).
Be it as it may, that wasn't even the reason I migrated the server. It was Bamboo. The Bamboo fiasco is two-fold:
- Configuring a CI/CD build test pipeline is a pain!
- The princig model just doesn't feel right for us.
On the first bullet point: really Atlassian? It's just... I just cannot talk about how painful it is to configure a workflow (and that ties to the second reason).
Because of the way I had to setup our test/build workflow, with just one project I had gotten to the licensing limit, so there's that: not useful for us. If we wanted to have an on-premises CI/CD full DevOps automated workflow, I needed to find an alternate solution. Enter GitLab to the equation.
My solution was to migrate our Code Repository and CI/CD server from Bitbucket + Bamboo to GitLab and let me tell you that it has been a real delightful surprise (I had known GitLab from their early days and tried it once back then... jsut one word: gruesome). Today I can't be more happy with our change, which I will describe on a follow-up post.