Aller au contenu

Création d'une revue de presse#

icône news générique

Concrètement, une revue de presse est un fichier markdown, nommé d'une certaine façon, stocké dans le dossier content/rdp/ et organisé en sections dans lesquelles les contributeur/ices viennent ensuite insérer leurs "news". L processus de contribution est bâti autour de la logique de Git.

Avant d'ouvrir la revue de presse aux contributions, il est donc nécessaire de créer :

  1. une branche dédiée dans le dépôt du site
  2. le fichier Markdown avec la structure type
  3. la Pull Request permettant de visualiser les différentes contributions puis de publier (fusionner) la revue de presse une fois finalisée

Il est possible de créer en utilisant Git en ligne de commande ou via l'interface web de GitHub.

Zone réservée

La création d'une nouvelle revue de presse nécessite de disposer des droits d'écriture sur le dépôt GitHub : geotribu/site-contribuer.

Automatiquement via GitHub Workflow#

icône GitHub Actions

L'outillage et la logique de publication de Geotribu sont largement basés sur Git et la plateforme GitHub. Nous utilisons notamment les principes de l'intégration et du déploiement continus (CI/CD pour les intimes).

La méthode la plus simple pour créer une nouvelle revue de presse est donc d'utiliser le workflow "🗞 New GeoRDP" disponible sur GitHub :

  1. Se rendre sur l'onglet Actions et sélectionner le workflow "🗞 New GeoRDP" ou cliquer ici
  2. Cliquer sur Run workflow
  3. Entrer les infos demandées :
    • branche : master
    • date de la revue de presse : doit être au format YYYY-MM-DD et pointer sur un vendredi
    • choisir d'envoyer automatiquement une notification sur Slack
  4. Cliquer sur le bouton vert Run workflow.

Après une trentaine de secondes, on obtient :

  • une branche dédiée pour la revue de presse
  • un fichier Markdown avec la structure type et la date de publication
  • une Pull Request basée sur le modèle
  • une notification Slack pour informer l'équipe

Voici une vidéo illustrant le déroulé :

Prérequis

La bonne exécution du workflow dépend de ces éléments :

  • la revue de presse ou sa branche n'ont pas déjà été créées par ailleurs
  • le modèle de revue de presse est à jour et bien présent : content/rdp/templates/template_rdp.md
  • le modèle de Pull Request est bien présent : .github/PULL_REQUEST_TEMPLATE.md
  • l'URL du webhook de Slack (SLACK_WEBHOOK_URL) est bien configurée dans les secrets du dépôt (cliquer ici pour administrer le webhook Slack)

Utiliser le script intégré#

Si vous disposez d'un terminal Bash et disposez du dépôt cloné, il est possible d'utiliser le script intégré :

# stocker la date de la RDP au format YYYY-MM-DD
DATE_RDP=2022-01-07

# exécuter le script
scripts/new_rdp.sh $DATE_RDP

# pousser vers le dépôt distant
git pull
git checkout -b rdp/$DATE_RDP
git add content/rdp/
git commit -am "Crée la GeoRDP $DATE_RDP"
git push origin rdp/$DATE_RDP

Ne pas oublier ensuite de :

  1. se rendre sur GitHub pour créer la Pull Request
  2. sur le canal dédié aux revues de presse sur Slack pour notifier l'équipe

Manuellement via l'interface web de GitHub#

Il est également possible d'utiliser l'ancienne procédure manuelle.
Voici une vidéo retraçant les étapes de création d'une revue de presse via l'interface web de GitHub :


Processus détaillé#

Cette partie explique chaque étape du processus de création d'une revue de presse pour comprendre ce que font les automatisations présentées au-dessus (script, GitHub Actions...).

1. Créer la branche de la revue de presse#

logo Git

La première étape consiste à créer une branche Git pour la revue de presse. Elle n'est réalisable que par une personne disposant d'un compte GitHub ayant les droits en écriture sur le dépôt du site : geotribu/site-contribuer.

Il est important de respecter la convention de nommage rdp/YYYY-MM-DD où :

  • YYYY est l'année de publication
  • MM le mois de publication prévisionelle
  • DD le jour de publication prévisionnelle

Exemple si la GeoRDP devait être publiée le 17 septembre 2021 : rdp/2021-09-17.

GitHub#

Sur l'interface web du dépôt :

  1. Se positionner sur la branche master
  2. Dans le menu déroulant de sélection des branches, entrer le nom de la nouvelle branche
  3. Cliquant sur Create branch: rdp/2021-09-17 from 'master'.

Github - New branch

Ligne de commande#

Si vous disposez du dépôt localement et que vous préférez utiliser la ligne de commande de Git, voici les étapes à suivre :

  1. Mettre à jour le dépôt local :

    git pull
    
  2. Vérifier qu'une branche n'existe pas déjà en listant les branches du dépôt sur GitHub en filtrant sur la structure de nommage :

    git branch -r -l 'origin/rdp/*'
    
  3. Créer la nouvelle branche :

    $ git checkout -b rdp/2021-09-17
    Switched to a new branch 'rdp/2021-09-17'
    
  4. Pousser la branche sur GitHub :

    $ git push origin rdp/2021-09-17
    Total 0 (delta 0), réutilisés 0 (delta 0), réutilisés du pack 0
    remote:
    remote: Create a pull request for 'rdp/2021-09-17' on GitHub by visiting:
    remote:      https://github.com/geotribu/website/pull/new/rdp/2021-09-17
    remote:
    To github.com:geotribu/website.git
    * [new branch]        rdp/2021-09-17 -> rdp/2021-09-17
    

2. Créer le fichier de la revue de presse#

icône globe tricot

Afin d'accueillir les news, il s'agit de créer un fichier en respectant l'organisation et le nommage des fichiers : content/rdp/YYYY/rdp_YYYY-MM-DD.md où :

  • YYYY est l'année de publication
  • MM le mois de publication prévisionelle
  • DD le jour de publication prévisionnelle

Exemple si la GeoRDP devait être publiée le 17 septembre 2021 : content/rdp/2021/rdp_2021-09-17.md.

Structure type et modèle#

Les revues de presse sont structurées de la même façon d'une édition à l'autre, facilitant leur consultation et les traitements automatiques. Le plus simple est donc de copier/coller la structure type à partir du modèle maintenu à jour :

soit depuis le PAD soit depuis GitHub

Ensuite, il faut mettre à jour certains éléments :

  • dans l'en-tête du fichier, mettre à jour les valeurs de title:, date: et description: (notamment la date)
  • changer la date dans le titre de niveau 1

Les lignes concernées sont surlignées ci-dessous (attention, cela peut varier selon le modèle utilisé) :

---
title: "[TEMPLATE] Revue de presse du 21 août 2021"
authors:
    - Geotribu
categories:
    - revue de presse
date: 2021-08-21
description: ""
image: "URL de l'image d'illustration de la RDP"
license: default
tags:
    - tag 1
    - tag 2
    - ...
---

# Revue de presse du 21 août 2021

## Intro

![icône news générique](https://cdn.geotribu.fr/img/internal/icons-rdp-news/news.png "icône news générique"){: .img-thumbnail-left }

[Commenter cette revue de presse :fontawesome-solid-comments:](#__comments){: .md-button }
{: align=middle }

3. Pousser le fichier sur GitHub#

Enfin, il faut pousser le fichier sur la branche créée sur GitHub.

GitHub Desktop#

TO DOC

Ligne de commande#

git add content/rdp/2021/rdp_2021-09-17.md

  1. étape où un contributeur propose d'intégrer ses modifications dans le socle principal du projet. Voir la documentation de GitHub

Commentaires