Fiche 4 Migration d’un projet depuis gitlab.com vers Gitlab-forge

4.1 Procédure pas à pas

4.1.1 Exporter votre projet depuis gitlab.com

Accéder aux paramètres de votre projet sur gitlab.com
Choisir les menus ‘general’/‘Advanced’ (a déplier)
Appuyer sur le bouton ‘Export project’
Un message apparaît
un lien va vous être envoyé par mail, par exemple pour le projet dreal-datalab/shiny.dsfr :
https://gitlab.com/dreal-datalab/shiny.dsfr/download_export
Vous récupérez grâce à ce lien un dossier zippé.

4.1.2 Importer votre projet sur gitlab-forge

Aller sur gitlab-forge au niveau de votre groupe.

Cliquer sur ‘Nouveau projet’ / ‘import project’



Le menu Import project from s’ouvre, choisir gitlab export, puis :

  • saisir le nom du projet,
  • sélectionner le projet zippé exporté depuis gitlab.com.

🎉

Si la taille de votre répertoire ou de certains de ses composants excède la taille autorisée sur gitlab-forge, vous pouvez rencontrer une erreur bloquante.
Recommandation : installez git filter-repo et/ou suivre le pas à pas proposé dans l’aide de Gitlab Voici un exemple de script qui nettoie d’un export gitlab avant d’être réimporté créé grâce à ce pas à pas : [maigrir_repo_git.sh] (https://gitlab-forge.din.developpement-durable.gouv.fr/dreal-pdl/csd/geodata4apps.fiches/-/raw/main/maigrir_repo_git.sh).

4.2 Adaptations à opérer

4.2.1 Script d’installation de packages

Dans la documentation du projet, le script R pour installer un package R depuis Gitlab-forge, alors qu’il était auparavant sur l’instance gitlab.com passe de :

remotes::install_gitlab(repo = "adresse_du_groupe/nom_du_package")

à :

remotes::install_gitlab(repo = "adresse_du_groupe/nom_du_package", host = "gitlab-forge.din.developpement-durable.gouv.fr")

Par exemple :

remotes::install_gitlab(repo = "dreal-pdl/csd/zonages.habitat.r", host = "gitlab-forge.din.developpement-durable.gouv.fr")

4.2.2 Gitlab pages

Le liens vers les pages html rendue par l’intégration continue de gitlab passent de :

https://adresse_du_groupe.gitlab.io/nom_du_projet

à

https://nom_groupe_racine.gitlab-pages.din.developpement-durable.gouv.fr/sous_groupe/projets

par exemple :

https://dreal-pdl.gitlab-pages.din.developpement-durable.gouv.fr/csd/pages.projets.pub

4.2.3 Projet R : déclaration du changement de l’url du dépot distant

Sur votre poste de travail, il reste à faire correspondre votre répertoire local au répertoire distant de gitlab forge.
Dans le terminal de commande, vous pouvez switcher de l’ancien repo gitlab.com vers la nouvelle adresse gitlab-forge avec la commande git remote set-url Par exemple pour le projet dreal-pdl/csd/utilitaires.ju, la commande :

git remote set-url origin  https://gitlab-forge.din.developpement-durable.gouv.fr/dreal-pdl/csd/utilitaires.ju.git

va déclarer que le repo distant à suivre se trouve sur https://gitlab-forge.din.developpement-durable.gouv.fr/dreal-pdl/csd.