Utfärdare - GitHub-åtgärd för att tvinga fram självbetjäning för arkivanvändare

I projektets gränser emittent en bot har förberetts för GitHub, som löser problem med påtvingad självbetjäning för arkivanvändare. På GitHub kan du hitta repositories vars enda funktion är att koordinera människor genom Issue-systemet. Några av dem ber de som lämnar ett ärende att fylla i ett formulär. Sedan kommer en moderator, kontrollerar att formuläret är korrekt ifyllt och placerar taggar i enlighet med de som anges i formuläret (taggar kan bara läggas till av en privilegierad användare om de inte är specificerade i mallen). Ett exempel på en sådan gemenskap är open-source-ideas/open-source-ideas.

Moderatorn kommer inte direkt. Därför att validera formulär och utföra operationer beredd med i GitHub-nyheterna. Boten är skriven i Python, men du måste fortfarande starta den genom node.js, eftersom GitHub bara har 2 typer av åtgärder - node.js och docker, och för docker laddas samma behållare först som node.js, och lastade in en annan behållare, det är lång tid. Med tanke på att behållaren med node.js innehåller python3 och allt annat du behöver, är det vettigt att helt enkelt ladda in beroenden i den, eftersom de är små.

Funktioner:

  • Åtgärden styrs med YAML-konfigurations- och Markdown-mallar;
  • Ett block läggs till i varje Markdown-mall som beskriver villkoren för att korrekt fylla i formuläret och önskade åtgärder;
  • En konfigurationsfil med globala inställningar läggs till;
  • Blanketter består av sektioner. Det finns 2 typer av sektioner:
    • Fri text. Åtgärden kan kontrollera att användaren brydde sig om att fylla i något där. Innebörden av texten kontrolleras inte automatiskt.
    • Kryssrutor. Du kan kräva att n kryssrutor fylls i så att 0 {= m1 {= n {= m2 {= totalt antal kryssrutor i avsnittet. Åtgärden kontrollerar att kryssrutorna matchar kryssrutorna i mallen. Om flaggorna är korrekt inställda kan åtgärden lägga till taggar för att utfärda respektive. flaggor.
  • Om formuläret är felaktigt ifyllt instruerar åtgärden användaren hur man fyller i det korrekt och sätter en speciell etikett på det.
  • Om formuläret inte korrigeras inom en viss tid kan åtgärden avsluta problemet. Automatisk förbud av användare, borttagning och flytt av problem har ännu inte implementerats på grund av bristen på ett officiellt API för nödvändiga åtgärder och problem med statlig lagring.
  • Om problemet är löst tar åtgärden bort etiketten.
  • Åtgärdssvarsmallar är naturligtvis anpassningsbara.

Källa: opennet.ru

Lägg en kommentar