Skip to content

Mise en place du déploiement continue des github pages

Artan Sadiku edited this page Sep 14, 2022 · 3 revisions

Contexte

La méthode de déploiement continue des GitHub pages à du être mise à jour à cause de l'arrêt du support des manipulations git en s'authentifiant avec mot de passe et nom d'utilisateur (source: https://github.blog/changelog/2021-08-12-git-password-authentication-is-shutting-down/).

Ce qui est maintenant en place :

  • Authentification en SSH avec pair de clés RSA
  • Utilisation du Deploy key de GitHub

Réalisation

Une pair de clés a été généré en utilisant OpenSSH. La clé public est configuré dans le repository comme Deploy Key. La clé privée est ajoutée comme variable d'environnement dans Travis CI et est utilisée comme identité dans la pipeline (dans le stage before_install on utilise ssh-add pour ajouter la clé privée). Chaque opération est ensuite réalisé en SSH (d'où le besoin du ssh:// dans l'uri lors du git push).


Remarque: Il a fallu encoder la clef privée en base64 avant de l'ajouter dans les variables d'environnement, car Travis CI essaie d'échaper les characters spéciaux, espaces blanc, etc. ce qui provoque une erreur en la laissant tel quel.