Step 1: Install needed packages
you will need remove installed ruby because repo version is 1.8.7 and we need 1.9 at least
yum remove ruby
yum install wget
enable epel repos
wget
rpm -Uvh epel-release-6-5.noarch.rpm
install required libraries
yum install readline-devel libyaml-devel gdbm-devel ncurses-devel redis openssl-devel zlib-devel gcc gcc-c++ make autoconf readline-devel curl-devel expat-devel gettext-devel tk-devel libxml2-devel libffi-devel libxslt-devel libicu-devel httpd httpd-devel gitolite git-all python-devel python-pip sqlite-devel sendmail vim mysql-devel
Step 2: Install Ruby 1.9.3
wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p0.tar.gz
tar xzvf ruby-1.9.3-p0.tar.gz
cd ruby-1.9.3-p0
./configure
make
make install
Step 3: Install gitolite
Create gitolite-admin user
useradd -d /home/gitolite-admin gitolite-admin
generate RSA key pair for gitolite-admin user
su gitolite-admin
ssh-keygen
exit
Move generate public key to gitolite home dir
cp /home/gitolite-admin/.ssh/id_rsa.pub /var/lib/gitolite/id_rsa_gitolite_admin.pub
chown gitolite:gitolite /var/lib/gitolite/id_rsa_gitolite_admin.pub
complete gitolite and gitolite-admin users pairing
su gitolite
gl-setup /var/lib/gitolite/id_rsa_gitolite_admin.pub
a editor will opened changue repo permissions to 0007
$REPO_UMASK to 0007
exit
su gitolite-admin
cd
git clone gitolite@localhost:gitolite-admin
in the last command you clone the gitolite-admin repo on gitolite-admin’s home. Gitolite-admin repo is gitolite config
before continue we need configure gitolite-admin git profile
git config –global user.email “gitolite-admin@localhost”
git config –global user.name “gitolite-admin”
exit
add gitolite-admin to gitolite group
usermod -a -G gitolite gitolite-admin
changue gitolite-admin password
passwd gitolite-admin
Step 6 Launch Redis
chkconfig redis on
/etc/init.d/redis start
Step 7 GitLab
Clone GitLab sourcecode
cd /var/www
git clone git://github.com/gitlabhq/gitlabhq.git
chown -R gitolite-admin:gitolite-admin gitlabhq/
cd gitlabhq/
Install phython dependencies
pip-python install pygments
Install required gems
gem install bundler
bundle install
su gitolite-admin
bundle install
Prepare config files
cp config/database.yml.example config/database.yml
cp config/gitlab.yml.example config/gitlab.yml
Prepare production enviroment
RAILS_ENV=production rake db:setup
RAILS_ENV=production rake db:seed_fu
you will get these login data
login………admin@local.host
password……5iveL!fe
Config gitolite gitlab link
vim config/gitlab.yml
your git_host: section must be like this
# Git Hosting congiguration
git_host:
system: gitolite
admin_uri: gitolite@localhost:gitolite-admin
base_path: /var/lib/gitolite/repositories/
host: localhost
git_user: gitolite
# port: 22
fix gitolite permissions
chmod -R 770 /var/lib/gitolite/repositories/
try your installation launching webrick
bundle exec rails s -e production
open a web broser, write yourhost:3000 and check if everything is working if you get an error send me a comment
Install passenger for Apache
gem install passenger
passenger-install-apache2-module
follow screen instructions
edit apache config file
vim /etc/httpd/conf/httpd.conf
and append these lines at the end
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.11
PassengerRuby /usr/local/bin/ruby
enable apache service
/etc/init.d/httpd start
chkconfig httpd on
Sources
http://wasil.org/en/gitlab-installation-on-fedora-16-with-gitolite
http://rickfoosusa.blogspot.com/2011/08/gitolite-tutorial-senawario.html