Gitlab
Installation
Configuration
Mise à jour
- Backup
Avant de réaliser la mise à jour, on va réaliser une sauvegarde de Gitlab.
On peut soit utilisé l'outil fournit avec
cd /home/git/gitlab sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production
Si cela ne fonctionne pas, on peut le réaliser de manière manuel.
Je vais utiliser 2 scripts que j'ai réalisé pour sauvegarder l'applicatif et la base de donnée
#Gitlab script_backup_applicatif -s /srv/git -f /opt/backup/Gitlab -v #Postgresql script_backup_postgresql -u git -h localhost -p 5434 -d gitlabhq_production -f /opt/backup/Gitlab/ -v
1. Stop server
sudo service gitlab stop
2. Get latest code for the stable branch
In the commands below, replace LATEST_TAG with the latest GitLab tag you want to update to, for example v8.0.3. Use git tag -l 'v*.[0-9]' --sort='v:refname' to see a list of all tags. Make sure to update patch versions only (check your current version with cat VERSION).
cd /home/git/gitlab sudo -u git -H git fetch --all sudo -u git -H git checkout -- Gemfile.lock db/schema.rb sudo -u git -H git checkout LATEST_TAG -b LATEST_TAG
3. Update gitlab-shell to the corresponding version
cd /home/git/gitlab-shell sudo -u git -H git fetch sudo -u git -H git checkout v`cat /home/git/gitlab/GITLAB_SHELL_VERSION` -b v`cat /home/git/gitlab/GITLAB_SHELL_VERSION`
4. Update gitlab-workhorse to the corresponding version
cd /home/git/gitlab-workhorse sudo -u git -H git fetch sudo -u git -H git checkout `cat /home/git/gitlab/GITLAB_WORKHORSE_VERSION` -b `cat /home/git/gitlab/GITLAB_WORKHORSE_VERSION` sudo -u git -H make
5. Install libs, migrations, etc.
cd /home/git/gitlab
- PostgreSQL
sudo -u git -H bundle install --without development test mysql --deployment
- MySQL
sudo -u git -H bundle install --without development test postgres --deployment
- Optional: clean up old gems
sudo -u git -H bundle clean
- Run database migrations
sudo -u git -H bundle exec rake db:migrate RAILS_ENV=production
- Clean up assets and cache
sudo -u git -H bundle exec rake assets:clean assets:precompile cache:clear RAILS_ENV=production
6. Start application
sudo service gitlab start sudo service nginx restart
7. Check application status
Check if GitLab and its environment are configured correctly:
sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production
To make sure you didn't miss anything run a more thorough check with:
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
If all items are green, then congratulations upgrade complete!