We were basically not able to create a stable deployment on a machine also running other services. But none of use really likes Ruby and rvm, maybe that's also one of the reasons why we struggled.
We were basically not able to create a stable deployment on a machine also running other services. But none of use really likes Ruby and rvm, maybe that's also one of the reasons why we struggled.
Nowadays we provide images / containers for most major platforms, so there should definitely be a good solution for you there.
That said, we make the Omnibus packages as that's the easiest and best way to maintain GitLab. It takes all the work away from you. The vast majority of our customers use Omnibus, even secure instances with thousands of developers.
That said, I switched to it after maintaining a hand installed version and I love how I don't have to run rails schema upgrades by hand any more. I used to put off upgrading gitlab for months because it was such a pain and now I don't have to think about it at all. Rails devs could learn a lot from php devs in that regard (upgrading wordpress is absolutely trivial to upgrading gitlab).
So yeah, I love the omnibus package since it means I don't have to think about it any more; I hate the omnibus package because it's a huge redundant monolith and pure crap from the point of view of a Debian package purist.
Whether there are enough volunteers to keep it and its dependencies up to date using backports remains to be seen, though.
I work in a mostly .Net shop, but the couple Python+Flask apps I maintain and administer integrate with everything else the way I expect as a sysadmin. As a Linux guy I have scoffed at Windows shops for ages for the sin of "xcopy deploy" but omnibus packages are no better.
how about building out a single jar based deployment based on jruby ? For example, mingle is built on jruby (ruby on rails) and packaged as a easy to install jar file [1]
[1] https://www.thoughtworks.com/mingle/news/2015/02/18/Forty-Mi...
jruby will be higher performing and will use overall lesser memory in general (yes.. the jvm takes up quite a bit of RAM during startup). Running a jar in production using jetty is a breeze.
It's also pretty self-contained you don't have to care about ruby and rvm and stuff like that, daemons are supervised with runit. I don't see why you have the need to switch versions on that.
Even if you want to modify it, it's probably easier to maintain a fork of the chef-cookbooks and apply local changes to that.
I'm not saying it couldn't be better but for opensource software it's quite well managed and packaged and documented, at least in my opinion.
Yeah, we have tried that but that didn't work for us. Instead, the internal nginx flooded our hard drive with log files, that was a bit annoying, haha.
At that point the internal shipped NGINX can be there and be happy without issues.