Support #452
Updating GitLab 7.1 to 7.2
Description
This is a brief guide for upgrading GitLab 7.1 to the latest current version, 7.2.
Backup¶
- Its good to back everything up, in case the upgrade fails:
cd /home/git/gitlab sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production
Upgrade GitLab¶
- Stop the GitLab server:
sudo service gitlab stop
- Get latest GitLab code:
cd /home/git/gitlab sudo -u git -H git fetch --all
- For GitLab Community Edition:
sudo -u git -H git checkout 7-2-stable
- For GitLab Community Edition:
- Update gitlab-shell:
cd /home/git/gitlab-shell sudo -u git -H git fetch sudo -u git -H git checkout v1.9.7
Install new system dependencies¶
- The latest version of the 'rugged' gem requires pkg-config and cmake to build its native extensions:
sudo apt-get install pkg-config cmake
- Install libs, migrations, etc.:
cd /home/git/gitlab
- For MySQL installations (note: the line below states '--without ... postgres')
sudo -u git -H bundle install --without development test postgres --deployment
- For PostgreSQL installations (note: the line below states '--without ... mysql')
sudo -u git -H bundle install --without development test mysql --deployment
- 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
- Update init.d script
sudo cp lib/support/init.d/gitlab /etc/init.d/gitlab
- For MySQL installations (note: the line below states '--without ... postgres')
Update config files¶
New configuration options for gitlab.yml
- There are new configuration options available for gitlab.yml. View them with the command below and apply them to your current gitlab.yml:
git diff 7-1-stable:config/gitlab.yml.example 7-2-stable:config/gitlab.yml.example
- Update rack attack middleware config
sudo -u git -H cp config/initializers/rack_attack.rb.example config/initializers/rack_attack.rb
Restore GitLab service¶
- Start application
sudo service gitlab start sudo service nginx restart
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 is complete!
Update OmniAuth configuration¶
When using Google omniauth login, changes of the Google account required. Ensure that Contacts API and the Google+ API are enabled in the Google Developers Console. More details can be found at the integration documentation.
Things went south? Revert to previous version (7.1)¶
- Revert the code to the previous version
Follow the upgrade guide from 7.0 to 7.1, except for the database migration (The backup is already migrated to the previous version) - Restore from the backup:
cd /home/git/gitlab sudo -u git -H bundle exec rake gitlab:backup:restore RAILS_ENV=production
Resources¶
Related issues
Updated by Daniel Curtis over 10 years ago
- Description updated (diff)
- Status changed from New to In Progress
Updated by Daniel Curtis over 10 years ago
- Description updated (diff)
- Status changed from Resolved to Closed
- % Done changed from 0 to 100
Updated by Daniel Curtis about 10 years ago
- Copied to Support #505: Updating GitLab To The Latest Version added
Updated by Daniel Curtis almost 10 years ago
- Project changed from 98 to GNU/Linux Administration
- Category set to Source Code Management