7 ms·
GitLab looks awesome, both features and design wise, but the installation process is so tedious and complicated that I quit in the middle of it more than once:
by n0nick 14y ago
GitLab looks awesome, both features and design wise, but the installation process is so tedious and complicated that I quit in the middle of it more than once:
https://github.com/gitlabhq/gitlabhq/blob/4-0-stable/doc/install/installation.md https://github.com/gitlabhq/gitlabhq/blob/4-0-stable/doc/ins...
This is feedback I heard from fellow developers as well.
I'm curious as to whether the maintainers are planning to simplify the list of dependencies and installation steps in the upcoming versions.
- sytse 14y agoI'm sad to hear your GitLab installation didn't go smooth. I hope to improve our Chef Cookbook for GitLab to the point where it can replace some of the scripts you need now. Was there any particular part of the installation guide that we can improve in the near future? (I run GitLab.com, offering GitLab as a service)
- FraaJad 14y agoI think providing a Vagrantfile that would automate the building of an entire vm with all the dependencies installed and software configured would be a good idea, ESP since a typical git user is familiar with Vms and vagrant..
- sytse 14y agoYou are right, an up-to-date Vagrantfile can be found here: https://github.com/gitlabhq/gitlab-vagrant-vm https://github.com/gitlabhq/gitlab-vagrant-vm
- n0nick 14y agoFirst of all, thanks a lot for the quick response. Let me apologise in advance for complaining on an open-source project instead of trying to contribute. Anyway, my personal feelings were that some of the dependencies could have been avoided (or perhaps set to some default value), at least for the community edition that I'm supposed to get up and running on an existing server machine. Some examples: * Requiring Python (for a Rails project!), * Asking me to create special system users for the processes, * Setting paths, keys and chmods manually (and not in some install.sh process), * Configuring a database and access to it (this could easily use a default setting that pro users could edit manually). From the comments around here, I realize that maybe I looked at the project in the wrong way and it should be installed either as a standalone service or as a virtual machine. If that's the case, I think a short Readme or Install doc explaining that would be very helpful for most users.
- n0nick 14y agoSilly me trying to use newlines in HN :) Hope the comment is still readable.
- sytse 14y agoNewlines, I should look in to that as well :-)
- sytse 14y agoHi n0nick, You're welcome, no problem that you are raising your opinion about the installation process, feedback will help make things better. The Phython dependency was there for a reason but I don't see it in the current installation doc so that is progress. The special users are due to using Gitolite, it is better to give it a separate unix user. The database requirement is needed unless you use SQlite, but support for this was dropped in 4.0 (and support for PostgreSQL made a lot better) because of the locking of SQlite. For sure GitLab is meant to run on a server and not on your development machine, did you get another impression from the readme description ('code hosting application')? What did you think it did?
- n0nick 14y agoI haven't tried running it on my development machine; last time I tried installing it, it was on the server we use at work to host our git repositories. Since it was already a dedicated server machine (which we even use sometimes to host some small web apps), I thought I had my work cut out for me. It was the amount of system work required (sudo-ing, chmod-ing, installing mysql because we only used postgres before, creating users) that made me give up eventually. I want to give GitLab another try, so I'll see into using Vagrant for that. But I still believe some install scripts would be very much appreciated and help the project gain popularity. Btw, re Python - I still see the paragraph "Make sure you have the right version of Python installed" on: https://github.com/gitlabhq/gitlabhq/blob/4-0-stable/doc/install/installation.md#1-packages--dependencies https://github.com/gitlabhq/gitlabhq/blob/4-0-stable/doc/ins...
- 14y ago
- stblack 14y agoThe GitLab website is opaque. I searched for, and did find 1) How to download the product 2) How much it costs 3) what hardware and OS it runs on or 4) how to find out more. Now I've only been developing web apps since 1997, and work every single day with GitHub. Evidently I'm just stupid. Oh, I actually tried to find those things twice. Yesterday, and again today. Are you guys even aware of your website's usability issues? What's with the mystery navigation? Edit: don't bother giving me links. Fix these serious problems.
- andrewmunsell 14y agoNo need to be hostile. The guy is trying to help you.
- sytse 14y agoGitLab.org got updated a few days ago, there is definitely room for improvement. But I don't get your points. 1) There is an installation guide button on the front page. This contains the clone source command under point 6. Just downloading something is not enough. 2) The tagline says 'Distributed under the MIT License', it's free! 3) First and second line of the installation guide refer to the hardware requirements, but I agree the website could be clearer on this. 4) What kind of 'more' are you looking for?
- frio 14y agoHaving just visited the site, I think it's fine. Everything he's asked for is plainly available on the front page: "a free and open-source..." is right there in the text up top, and links to the source/installation guide are plainly available. From a home user: well done on GitLab. I'm going to try out GitLab CI next, and see if I can replace my Bamboo server :).
- sytse 14y agoThanks, I hope you like GitLab CI.
- Xylakant 14y agoI found the installation process to be well described and installation went flawless. It seems like a long process but in the end, it's just because every little step from user creation to ruby installation is described in detail.
- dlisboa 14y agoEvery part of that process could be automated and reasonable defaults given. If someone made an install script this project would fly. It's incredibly boring to do it on your own and while the wiki is thorough and well-written, very few people want to sit through that just to play with it. If you have it set in your mind you'll use it, then it's a good installation process as any. But if you're trying to evaluate options you might just end up saying "fuck it, I'll just use github", or something like gitorious.
- sytse 14y agoAn up-to-date install script for Ubuntu can be found here: https://github.com/gitlabhq/gitlab-recipes/blob/master/install/v4/ubuntu_server_1204.sh https://github.com/gitlabhq/gitlab-recipes/blob/master/insta...
- akie 14y agoI think it would be a very good idea to make such scripts for other distros as well, and to test the living hell out of them. Your installation procedure is your biggest problem (just look at the size of the thread here), and you should fix it. I've just spent the last 5 (five!) hours trying to setup GitLab, and I just don't get it to work. And I ain't no rookie either. This is the second time in about a year that I spent so much time trying to get this to work, and I'm about to give up on this project. I want this to work, and I want to use this, but this is insane. I actually did a dist-upgrade from Lenny just to get this to work, and I made it through all the arcane steps (somehow) - but nothing. I can't get it to work. I can connect to GitLab, it redirects me to 'users/sign_in', and then it just crashes ('Killed', it says). Yup. Tough luck for me. That's five hours down the drain.
- makmanalp 14y agoI was just about to go make a chef cookbook myself when I found this: https://github.com/atomic-penguin/cookbook-gitlab https://github.com/atomic-penguin/cookbook-gitlab also this: https://github.com/gitlabhq/gitlab-vagrant-vm https://github.com/gitlabhq/gitlab-vagrant-vm
- mitchty 14y agoI started to try to get things running at work. We use SLES at work, needless to say this has to be the most annoying product to setup ever. Also the setup instructions have everything prefixed with sudo, why they don't just say sudo su - user and do the rest as that user is beyond me. Half of the setup could just be a few sh scripts. I'm about halfway through the setup, but this project won't see a lot of adoption given its insane dependency hell and installation tedium.
- mnutt 14y agoAlso the setup instructions have everything prefixed with sudo, why they don't just say sudo su - user and do the rest as that user is beyond me. Half of the setup could just be a few sh scripts. In many of the more security-conscious organizations, `sudo` is preferred over `su` because it leaves an audit trail. They could automate parts of that and perhaps they should, but the way they have it now shows you exactly which parts of your system you are modifying. It's a tradeoff; if they didn't, they'd have people scolding them for the install scripts wreaking havoc on their production systems.
- mitchty 14y agoI'm well aware of sudo vs su. Where I work sudo ONLY allows you to run preapproved scripts or if you have permission the ability to su - someuser (- is necessary). Yes I'm an admin and can do "more", but not markedly. In addition I have to type my password in each time I use sudo, also by policy thanks to things like PCI compliance. You can show what parts of the system you are modifying, and provide scripts to automate it. They aren't mutually exclusive actions.