GitHub heeft een bot gelanceerd voor automatische probleembeheer

Als onderdeel van het Issuer-project, er is een bot voorbereid voor GitHub die de taken van het automatisch modereren oplost het volgsysteem op GitHub. Op GitHub kun je repositories vinden waarvan de enige functie is om mensen te coördineren via het Issue-systeem.

In sommigen van hen bij het afsluiten van Issue wordt u gevraagd een formulier in te vullen, toen zag ikheb een moderator, controleer de juistheid van het invullen van het formulier en plaats tags volgens die gespecificeerd in het formulier (tags kunnen alleen worden opgehangen door een geprivilegieerde gebruiker als ze niet zijn gespecificeerd in de sjabloon). Een voorbeeld van zo'n community is de Open Source Ideas-community.

De moderator komt niet meteen. Daarom Er is een GitHub-actie in het nieuws voorbereid om formulieren te valideren en bewerkingen uit te voeren.

De bot is geschreven in Python, maar het moet nog steeds door node.js worden uitgevoerd, aangezien GitHub slechts 2 soorten acties heeft: node.js en docker en voor docker wordt eerst dezelfde container als node.js geladen en wordt deze in de andere container geladen die Het is lang.

Aangezien python3 en alles wat je nodig hebt zich in de container met node.js bevindt, is het rationeel om de afhankelijkheden erin te laden omdat ze klein zijn.

Dit is een GitHub-actie met 3 verbonden functies voor probleembeheer.

Controleer of binnenkomende problemen op een of andere manier overeenkomen met het sjabloon:

Dat de secties geen regels uit de standaardsjabloon bevatten (meestal aanwezig wanneer een gebruiker niet de moeite heeft genomen om de sectie in te vullen).

Dat de secties met selectievakjes die als labels moeten worden ingesteld, alleen de selectievakjes bevatten die aanwezig zijn in het originele sjabloon

Dat elke sectie een aantal vakjes heeft gemarkeerd in het bereik [min, max]

Stel labels in volgens de aangevinkte vakjes.

Sluit automatisch problemen als de auteur de door de linter gemarkeerde problemen niet binnen een bepaalde periode heeft opgelost.

Het gebruik van een toegewijd persoon om labels toe te wijzen is een last, omdat het het beste is om gebruikers toe te staan ​​"zelfbediening" te doen. Gebruikers kunnen een aantal labels toewijzen aan de problemen van een beperkte subset die kunnen worden gedaan via een Markdown-extensie en selectievakjes.

Ermee wanneer een gebruiker de selectievakjes aanvinkt of keuzerondjes de bot stelt de labels dienovereenkomstig in.

Van de kenmerken die opvallen van deze bot die is voorbereid, zijn de volgende:

  • De actie wordt bepaald door YAML-instellingen en de Markdown-sjablonen;
  • Aan elke Markdown-sjabloon wordt een blok toegevoegd die de voorwaarden beschrijft voor het correct invullen van het formulier en de gewenste acties;
  • Er wordt een configuratiebestand met algemene instellingen toegevoegd;
  • De formulieren zijn opgebouwd uit secties.
  • Er zijn 2 soorten secties:
    Vrije tekst: De actie kan verifiëren dat de gebruiker de moeite heeft genomen om iets te voltooien. De betekenis van de tekst wordt niet automatisch geverifieerd.
    In de selectievakjes n aantal vlaggen kan worden aangevraagd en / of ingevuld, zodat 0 {= m1 {= n {= m2 {= totaal aantal vlaggen in de sectie.
  • De actie controleert of de vakken overeenkomen met de vakken in de sjabloon​ Als de vlaggen correct zijn ingesteld, kan de actie blijven hangen aan de probleemtags, resp. Selectievakjes.
  • Als het formulier niet correct is ingevuld, vertelt de actie de gebruiker hoe het correct moet worden ingevuld en wordt er een speciale tag toegevoegd.
  • Als het formulier niet binnen een bepaalde tijd wordt gecorrigeerd, kan de actie het probleem oplossen. Automatische gebruikersverbod, verwijdering en verplaatsing van het probleem moet nog worden geïmplementeerd vanwege het ontbreken van een officiële API voor noodzakelijke acties en problemen met de opslagstatus.
  • Als het probleem is verholpen, verwijdert de actie de markering.
  • De reacties op actiesjablonen zijn natuurlijk aanpasbaar.

Eindelijk als u er meer over wilt weten, kunt u de details bekijken door naar te gaan volgende link.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.