Discourse GitHub

:discourse2: Résumé Discourse GitHub permet au personnel d’attribuer des badges aux utilisateurs en fonction de leurs contributions sur GitHub. Permet également aux utilisateurs de créer des liens vers GitHub et des liens permanents
:open_book: Guide d’installation Ce plugin est inclus dans le noyau de Discourse. Il n’est pas nécessaire de l’installer séparément.

Fonctionnalités

Badges GitHub

Attribuez des badges à vos utilisateurs en fonction de leurs contributions sur GitHub.

Comment utiliser :
  1. Activez github badges enabled dans Paramètres → Plugins.
  2. Générez un jeton d’accès GitHub et collez-le dans le paramètre github linkback access token. Voir ci-dessous pour les instructions.
  3. Ajoutez une ou plusieurs URL des dépôts GitHub à scanner pour les contributions dans le paramètre du site github badges repos.
Fonctionnement du comptage des badges :

Les badges comptent les commits sur tous les dépôts, et lorsque l’utilisateur contribue à plusieurs dépôts, tous ses commits sont additionnés pour former un total.

Badges de contributeur :

  • Bronze : 1 commit
  • Argent : 25 commits
  • Or : 1000 commits

Progression des badges : À mesure que les utilisateurs accumulent plus de contributions dans l’un quelconque des dépôts suivis, ils progressent automatiquement à travers les niveaux de badges. Par exemple, si un utilisateur contribue au dépôt A puis au dépôt B, toutes les contributions comptent pour son total, lui permettant de passer du bronze à l’argent puis à l’or.

Lien retour GitHub

Créez un lien depuis une demande de tirage (pull request) ou un commit GitHub vers un message Discourse où il est mentionné.

Comment utiliser :
  1. Activez github linkback enabled dans Paramètres → Plugins.
  2. Générez un jeton d’accès GitHub et collez-le dans le paramètre github linkback access token. Voir ci-dessous pour les instructions.
  3. Enfin, ajoutez les projets que vous souhaitez publier dans le paramètre du site github linkback projects dans les formats suivants :
    • username/repository pour des dépôts spécifiques
    • username/* pour tous les dépôts d’un utilisateur donné

Lien permanent GitHub

Remplacez les liens non permanents de GitHub par des liens permanents.

Comment utiliser :
  1. Activez github permalinks enabled dans Paramètres → Plugins.

Configuration

Jeton d’accès GitHub

Pour que la fonctionnalité de lien retour fonctionne et que les badges soient attribués à vos utilisateurs, vous devez fournir un jeton d’accès GitHub. Vous pouvez générer votre jeton ici : Sign in to GitHub · GitHub.

La fonctionnalité de lien retour nécessite la portée public_repo, et l’attribution de badges ne nécessite aucune portée (laissez tout désactivé si vous voulez uniquement des badges). Étant donné que la portée public_repo accorde un accès en écriture aux dépôts, nous vous recommandons de créer un compte GitHub jetable qui n’a accès à aucun dépôt et de l’utiliser uniquement pour générer un jeton.

JOURNAL DES CHANGEMENTS

À FAIRE

30 « J'aime »

Quel est le processus pour plusieurs liens ? Est-ce qu’ils sont simplement ajoutés au même commentaire de commit ? Ou est-ce qu’un nouveau commentaire est créé à chaque fois ?

1 « J'aime »

Je me demande si les badges de commits et de PRs pourraient être simplifiés car nous essayons de nous éloigner du paradoxe du choix :)\n\nActuellement, je viens de forker et de supprimer les badges de commit mais bien sûr, je me perds du badge de commit (car je commite directement) et le fork n’est pas égal à rester toujours avec le cœur.

Le caractère générique * n’a pas fonctionné pour moi pour une organisation GitHub, j’ai fini par tout mettre dans chaque dépôt individuellement. D’autres ont-ils eu des problèmes avec cela pour une organisation par rapport à un utilisateur ?

Comment définir la langue du commentaire de renvoi ?

Merci, j’aime beaucoup ce plugin ! J’étais confus au sujet du système de badges et j’étais content de trouver l’explication dans un autre sujet : Github Badges are not working. Its hard to see if I do something wrong or if the plugin is not working - #4 by simon

Cependant, cette réponse note que

Le plugin crée 6 badges :

Je ne vois aucun de ces badges, je ne sais pas ce qui s’est passé ? Y a-t-il un moyen de (re)déclencher la création de ces badges ?

1 « J'aime »

Pour répondre à ma propre question, après quelques heures, la tâche planifiée s’est exécutée et c’est à ce moment-là que les badges ont été créés.

La méthode manuelle pour ce faire serait de déclencher le job sidekiq semble-t-il.

1 « J'aime »

Demande de fonctionnalité : exclure les catégories et/ou tags des backlinks

Nous avons une catégorie Annonces dans laquelle le plugin RSS extrait automatiquement les nouvelles versions de GitHub. Lorsque les notes de version contiennent des liens vers des issues, ces liens apparaissent également dans Discourse et un backlink est créé, mais il n’est pas utile pour personne, ce qui crée du désordre sur Github.

Je voudrais pouvoir exclure certains posts, c’est-à-dire des catégories ou tags, ou même simplement des posts d’un utilisateur configuré dans le plugin RSS, afin qu’ils ne créent pas de backlinks.

:partying_face: Ce plugin est maintenant inclus dans le cœur de Discourse dans le cadre de Bundling more popular plugins with Discourse core. Si vous auto-hébergez et utilisez le plugin, vous devez le supprimer de votre app.yml avant votre prochaine mise à niveau.