Lorsque vous auto-hébergez un GitLab, il faut absolument appliquer les mises à jour de sécurité lorsqu’elles sont publiées.
Par défaut, vous devriez recevoir un mail « GitLab Critical Security Release : xx.xx, xx.yy… » vous prévenant qu’une mise à jour est nécessaire.
Voici ma ToDo pour faire ces mises à jour.
1 - Se connecter à votre serveur en SSH
Vous pouvez par exemple utiliser Putty sur windows ou tout autre terminal.
(Il vous faudra les droits root)
2 - Vous devez connaitre votre version actuelle de GitLab
Pour connaitre votre version tapez la commande suivante :
gitlab-rake gitlab:env:info
Vous devriez voir cette information :
GitLab information
Version: 15.7.5-eeSignification des préfixes :
-ee : entreprise edition
-ce : community edition3 - Rendez-vous sur la page ``Upgrade Path`` de GitLab
Voici l’url : https://gitlab-com.gitlab.io/support/toolbox/upgrade-path/
- Dans « Current », sélectionnez la version que vous avez récupérée au point précédant.
- Dans « Target » sélectionnez la dernière version
- Dans « Edition » choisissez selon le préfixe de votre version
- Dans « Distro » il s’agit de choisir le système sur lequel tourne votre serveur
- Enfin personnellement je ne coche aucune des cases « Auto Install » et « Zero Downtime »
- Validez
4 - Exécutez les commandes de mise à jour
Sur la page de résultat vous allez obtenir :
- Upgrade Path Docs : qui permet de voir comment effectuer les mises à jour par étapes si vous partez d’une version trop ancienne
- Les informations sur les nouveautés de la dernière version
- Check Migration Before Each Upgrade : Très important de le consulter pour être sûr de pouvoir faire la mise à jour sereinement
- Enfin la commande à passer (ou une liste de commandes) du type
apt-get install gitlab-ee=15.x.x-ee
Si vous avez plusieurs commandes c’est que le « Upgrade Path Docs » conseille de faire la mise à jour par étape. En effet certaines mises à jour sont « majeures » et doivent être faites avant les mises à jour suivantes.
Passer les commandes l’une après l’autre et vérifier bien après chacune que GitLab fonctionne toujours.
Après chaque commande, patenter quelques minutes que Gitlab redemarre.
S’il ne redemarre pas vous pouvez exécuter la commande
gitlab-ctl reconfigure
pour pouvoir à nouveau accéder à votre GitLab. (Si jamais votre GitLab reste indisponible, faites ungitlab-ctl restart
, puis ungitlab-ctl reconfigure
)