rake gitlab:check complains about git version

With the 5.2 version of gitlab, the

bundle exec rake gitlab:check RAILS_ENV=production

command complains about the current distro’s version of git:

Your git bin path is “/usr/bin/git”
Git version >= 1.7.10 ? … no
Try fixing it:
Update your git to a version >= 1.7.10 from 1.7.9
Please fix the error above and rerun the checks.

Checking GitLab … Finished

Here’s how to compile from source to a local (or system wide) location.

Continue reading “rake gitlab:check complains about git version”

Fixing gitlab errors with git operations

Recenlty, I was able to install the 5.2 branch of gitlab for work.

I ran into the following error when cloning a repo:

git pull
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

yet, ssh and ssh keys were working:

ssh -T git@gitlab.lib.unc.edu
Welcome to GitLab, Anonymous!

It took a while, but I found a way to check what gitlab-shell is doing:

gitlab-shell/bin/check

Check GitLab API access: FAILED. code: 302

Check directories and files:
/home/git/repositories: OK
/home/git/.ssh/authorized_keys: OK

This does make sense because it set up SSL in the apache conf for gitlab using the example conf file. It seems that gitlab-shell isn’t smart enough to handle a redirect to the https side. So in the gitlab-shell/config.yml make sure the gitlab_url setting has https set. Also, you may need to make sure your /etc/hosts has the name of the virtual host (if you are running it that way) pointing to the right interface.

Keep in mind, gitlab-shell doesn’t play nice with self-signed certs. I had to revert some things on another gitlab install.

After fixing this, ssh-ing into the server worked right:

ssh -T git@gitlab.lib.unc.edu
Welcome to GitLab, <user>!

Creating a x86_64 rpm from the src.rpm

I recently had a need to rebuild a x86_64 rpm from the source rpm on RHEL 6. I needed the Darwin Streaming Server from Apple, but it seems to be neglected. So no rpm at all.

A prerequisite for this is a key to sign the rpm with. If you don’t have one, creating one won’t be covered  here.
Download the source rpm into an appropriately rpm src directory and then extract the .spec file with

rpm -Uvh DarwinStreamingServer-6.0.3-2.src.rpm

Here you can edit it if needed. Then to build:

rpmbuild -ba –sign –target x86_64 SPECS/DarwinStreamingServer.spec

This would also build, bypassing the need to extract the spec file, if you don’t need to edit the spec file.

rpmbuild -v –sign –rebuild DarwinStreamingServer-6.0.3-2.src.rpm

I was able to verify the key was used:
rpm -i DarwinStreamingServer-6.0.3-2.src.rpm
rpm –checksig RPMS/x86_64/DarwinStreamingServer-6.0.3-2.x86_64.rpm
and compare the output of:

gpg –list-keys

Be sure to read the man page of rpmbuild for the meanings of the -ba, -bb, etc switches.