Gitlab: Mise à jour de la version 7.8 à la version 7.14 depuis les sources
Dans un article précédent, je vous parlais de l’installation de Gitlab depuis les sources. Cet article décrivait l’installation de la version 7.8. Aujourd’hui (le 3 septembre 2015), Gitlab existe en version 7.14 stable. Je vous propose donc ici, le passage de la version 7.8 à Gitlab 7.14.
Arrêt du serveur
Pour commencer, nous allons arrêter le serveur.
# service gitlab stop
Backup
Puis faire un backup de votre Gitlab. Ce backup sera sauvegardé dans le dossier tmp/backups
du répertoire d’installation de gitlab, dans notre cas : /home/git/gitlab/tmp/backups
.
$ cd /home/git/gitlab $ sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production
Celui ci pourra être restauré via la commande :
# sudo -u git -H bundle exec rake gitlab:backup:restore RAILS_ENV=production
Installation des nouveaux paquets requis
Après le parcours des changelogs et des fichiers de migrations entre la version 7.8 et 7.14. Il s’avère que la version 7.14 nécessite l’installation de NodeJS
un serveur Web Javascript. Je vous ai fait un article récemment sur Installation de NodeJS depuis les sources. Dans notre cas, nous utiliserons le paquet de dépôts Debian.
# apt-get install nodejs
Récupération des sources
Nous importons les informations du dépôt git, effaçons les possibles modifications faites sur le fichier db/schema.rb
puis passons sur la branche 7.14-stable
.
$ sudo -u git -H git fetch --all $ sudo -u git -H git checkout -- db/schema.rb $ sudo -u git -H git checkout 7-14-stable
Mise à jour de gitlab-shell
On passe sur la version 2.6.4 de gitlab-shell
.
$ cd /home/git/gitlab-shell/ $ sudo -u git -H git fetch $ sudo -u git -H git checkout v2.6.4
Installations des dépendances et migration de la BDD
De retour dans le dossier de gitlab, nous installons, mettons à jours les dépendances, migrons la base de données, régénérons les assets (CSS, icones, …), nettoyons le cache, pour finir par la mise à jour du script d’init.
ATTENTION: Les commandes suivantes ne fonctionnent que si vous utilisez PostgreSQL
comme serveur de base de données.
$ cd /home/git/gitlab $ sudo -u git -H bundle install --without development test mysql --deployment $ sudo -u git -H bundle exec rake db:migrate RAILS_ENV=production $ sudo -u git -H bundle exec rake assets:clean assets:precompile cache:clear RAILS_ENV=production $ sudo cp lib/support/init.d/gitlab /etc/init.d/gitlab
Mise à jour du fichier de configuration
On vérifies les modifications apportées au fichier de configuration de Gitlab : nouvelles options, … Pour ma part, ayant fait peu de modification dans mon fichier de configuration, j’ai pris celui de la version 7.14 et refais la configuration que j’avais déjà faite (modification des variables host
et email_from
).
$ git diff origin/7-8-stable:config/gitlab.yml.example origin/7-14-stable:config/gitlab.yml.example $ vi config/gitlab.yml
Redémarrage de Gitlab
La mise à jour est fini, vous pouvez redémarrer le service.
# service gitlab start # service nginx restart
Vérification de la mise à jour
Les commandes suivantes vérifient la configuration et le bon fonctionnement de gitlab.
$ sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production $ sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
Si tout est vert, tout est OK et vous avez une nouvelle interface.
Plus d’informations
Cet article est un extrait des pages suivantes, si vous avez un problème n’hésitez pas à les consulter.
Passage de la version 7.13 à la version 7.14
Passage de la version 7.12 à la version 7.13
Passage de la version 7.11 à la version 7.12
Passage de la version 7.10 à la version 7.11
Passage de la version 7.9 à la version 7.10
Passage de la version 7.8 à la version 7.9