Create a GitLab Page for a given project

C’est une petite note sur comment créer une page GitLab Pages pour un projet donné.

Créez un fichier .gitlab-ci.yml comme indiqué ici : https://gitlab.inria.fr/help/user/project/pages/getting_started/new_or_existing_website.md
(partez de HTML si vous n’avez pas à compiler un framework, ou choisissez le framework que vous utilisez sinon, par exemple vous pouvez partir d’un fichier plus ou moins bien rempli pour Doxygen, Jekyll, etc.)
Définissez dans quelles branches le runner doit se lancer (par défaut il se lance uniquement s’il y a une action dans a branche master).
Définissez un tag en haut du fichier avec :

tags:
– mon-super-tag

Pour exemple, dans le cas du projet precis (https://gitlab.inria.fr/coffee/precis/ ), le fichier .gitlab-ci.yml contient ça :

# This file is a template, and might need editing before it works on your project.
# Full project: https://gitlab.com/pages/doxygen

pages:
tags:
  - mon-super-tag
script:
  - source ~/conda_setup
  - conda env update -f pkg/env/precis-doc.yaml
  - conda activate precis-doc
  - mkdir build
  - cd build
  - cmake ..
  - make doc
  - mv doxygen/out/html/ ../public/
artifacts:
  paths:
    - public
only:
  - master
  - develop
  - feature/doxygen

Activez le pipeline dans Gitlab:
– dans la barre à gauche, Settings -> General -> Visibility, project features, permissions, cochez Pipeline
– dans la barre à gauche, Settings -> CI/CD -> (expand) Runner, notez l’URL et surtout le token du repository.

Créez (ou utilisez) un slave Jenkins dans CI :
– créer un projet CI et un slave, ou un slave Jenkins dans un projet sur CI, ou utilisez un slave Jenkins déjà existant
– se connecter dessuss en SSH
– faire l’install de gitlab-runner puis faire le gitlab-runner register en suivant la procédure : https://gitlab.inria.fr/siteadmin/doc/-/wikis/faq#enabling-ci-on-a-gitlab-project
Au moment du tag, rentrez mon-super-tag

Si tout s’est bien fait, votre runner doit apparaitre sur Gitlab sous Settings -> CI/CD -> (expand) Runner
Et dans la barre à gauche, CI/CD -> Pipeline votre pipeline doit apparaitre tout seul dès qu’une action se fait dans une branche mentionnée dans le .gitlab-ci.yml.
Sous Settings -> Pages vous trouverez un lien vers votre GitLab Page.
Sous Settings -> General -> Visibility, project features, permissions, passez la page en visibilité publique pour la rendre visible à tout le monde (sans besoin de se connecter à GitLab)

Leave a Reply

Your email address will not be published. Required fields are marked *