6 ms·
Just a few weeks ago my organization was in the position of choosing a version control platform for our repos. I'm so glad we went ahead with self hosted gitlab
by r_singh 8y ago
Just a few weeks ago my organization was in the position of choosing a version control platform for our repos. I'm so glad we went ahead with self hosted gitlab. We installed it on a CentOS server at our premise, SSL'd via Let's encrypt, I've even set up a dedicated gitlab runner to use Gitlab CI for continuous delivery and so far the testing is progressing pretty smoothly.
All this for $0.
Update:
I agree, gitlab and github will cost the same in the long run. Time costs money and self hosted has a lot of downsides as well.
However, gitlab being self hosted (and not costing anything in terms of separate invoice) makes us feel like we're more in control and are somehow saving some money (as we add more developers as well). This comment here was just sparked by a sigh of relief because this week is an important release for us and had we been on github this monday wouldn't have started too well.
Overall, all the comments listing the trade-offs are true. Time costs $$$ and a paid hosted solution is worth the minimal cost, time and expertise required.
- woolvalley 8y ago+ cost of additional labor
- ToFab123 8y agoPlus cost of nobody can work because their single server crashed
- Grue3 8y agoGit is a distributed system. People can work if they want to, but it's certainly a convenient excuse to not be working.
- deadbunny 8y agoSure, but the tooling around git isn't. Hard to do things if you can't make PRs, which trigger tests, which trigger builds, which trigger test deployments, which trigger tests, etc...
- akerl_ 8y agoI feel like this is the first chapter of a story whose ending is probably happy, but whose plot twist is "and then the on-prem server crashed and it took a week to figure out how to fix it". Self-hosting vs 3rd party hosting has a ton of tradeoffs, but systems can fall over no matter who's hosting them.
- londons_explore 8y ago"and then the service we were using got 'sunsetted' and we spent weeks migrating to a new incompatible provider". With hard drive failure rates of 1.6% per year, and all other bits of computer hardware being very reliable, I would guess that an unmaintained self hosted solution will have a longer 'time to failure' than a service provider. The main benefit of a hosted service IMO is less setup time and a support team to help you when they inevitably 'retire' the 'old' api.
- r_singh 8y agoThis would definitely be true if we didn't have experience with self hosting services that are critical to the businesses of our customers. Luckily for us, we do have experience with figuring out servers and are usually required to fix crashes within minutes as the unit measured rather than days.
- yread 8y agoYou value your time at 0$ ?
- r_singh 8y agoDefinitely not, that was just a hyperbole sparked by a sigh of relief that our release won't be affected because of this outage.
- danpalmer 8y agoYour time isn’t free. GitLab may well be the right choice for many teams, but I’ve not yet seen price be the winning factor over the long term. Between general sysadmin tasks, scaling with the size of your team, doing upgrades, and performing database migrations, the cost of running GitLab will probably be the same ballpark as GitHub.
- r_singh 8y agoThis is true, we've always had troubles with amortizing costs for time spent on doing something. We're a profitable software company that intends to remain in business forever, we're well staffed though and people do have time to try out things and even do R&D on the side. Frugality is built in to our DNA and having spare time on top means failure at amortizing time costs.
- Cthulhu_ 8y agoWhat did the server cost? How many hours did you spend on it? What's your SLA? Who will be woken up at night when there's an outage? What's your backup and recovery procedure? I mean kudos to you for setting it up but it's a bit naive to believe it's better than a hosted solution right away.
- k_ 8y agoI agree that most of these are good points, although they can be worth it depending on your priorities. As for this: > Who will be woken up at night when there's an outage? Unless they are working with teams around the world, does it matter if their server is down the whole night, as long as they can get it back up first thing in the morning?
- r_singh 8y agoFair questions. We're a company making WISP/ISP software here in India and our cloud (hosted) offering is also hosted on servers at our office itself[1]. Our infra manages hundreds of thousands of internet subscribers in India. We're a small tech company with 25-30 people or so, with linux kernel experts who have experience of running software on questionable hardware so that service providers can take internet to new places in India, that experience helps a lot in keeping all our services up with minimum downtime. Our office runs 24x7 with support. If anything goes down our business will be in jeopardy so we have protocol to be back up in minimum amount of time. How many hours we spent on it? Less than a couple hours on setting up the self hosted gitlab instance. More time on getting people to get used to it and setting up the runner for CI, but I would have to spend that time on other paid solutions too. As for time costing $0, definitely not, but people in India don't cost nearly as much as they do in the USA. Also because of experience with self hosting it is less of a deal for us to spend time on this. [1] we have multiple bandwidth backup, electricity backup, etc needed to self host and we've always stuck with self hosting.
- simonjgreen 8y agoWhat do you make out of curiosity? I run an ISP in the UK.
- dis-sys 8y agoyou are basically assuming that your deployed version of GitLab is bug free and your hardware will be able to serve you 24/7 without downtime in the next few years.
- r_singh 8y agoI'm confident about the downtime not being an issue for us because of experience with all kinds of server issues. I'm interested to see what our experience with bugs and updates is in the future, my happiness could very well be premature.
- dustinmoris 8y ago> makes us feel like we're more in control and are somehow saving some money This is precisely the problem with developers. You decided to go with a complex self built solution because it "feels" cheaper. If only I would have received a $ every time someone made a wrong decision based on a feeling I'd be a rich man today.
- KaiserPro 8y agoHosted gitlab has more features than github. But you are on the hook for security, config and uptime. However, it might seem a wise choice given gitlab's history of breaking every week and a half. (However that has improved significantly in recent months.) Gitlab is a far better tool for enterprise, as it can group repos into projects and have a shared issue tracker at a project level (as well as repo). It also has first class CI integration(git lab runners). All of this beats paying for github[1] [1] I worked for a very large financial news company that has partially migrated from stash/bitbucket to github. With a mix of public/private repos its a total mess. The tools for managing more than 40 repos simply don't exist. Not only is it more expensive, it doesn't integrate will with Jira, (well thats not entirely github's fault) it literally is just a git HTTP web interface, with a ticketing system bolted on.
- onion2k 8y agoI'm so glad we went ahead with self hosted gitlab. You say that now but if you're at the sort of scale where you might have the same issue Github is having you'll be a lot less glad someone else isn't fixing it. Especially if it's 3am. On a Saturday. In the middle of your vacation. Gitlab is awesome but it's not invincible. Problems happen regardless of what solution you pick. I'm happy to pay Github to resolve them for me faster than I could do myself, and better, and with solutions in place up front to make sure I don't actually lose any data.
- deadbunny 8y agoI think you've forgotten this is HN, a place where operational issues are "easy", till they happen. Then they realize they might actually need to hire someone who has a clue what their doing when it comes operations that don't involve turning it off and on again.
- dsumenkovic 8y agoHello, Community Advocate from GitLab here. Thank you for sharing your feedback and comments with everyone, we really appreciate that. It's great to hear how you are handling your self-hosted GitLab instance, that's awesome!
- ksec 8y agoThe Only reason for sticking with GitHub is UX. gitlab is expanding in all directions may be they will catch up.
- ryanmccullagh 8y agoIt's definitely not zero cost. Your time and maintenance efforts will cost you time.