Izdavatelj - GitHub akcija za prisiljavanje korisnika repozitorija na samoposluživanje

U granicama projekta izdavatelj pripremljen je bot za GitHub koji rješava probleme prisilnog samoposluživanja za korisnike repozitorija. Na GitHubu možete pronaći repozitorije čija je jedina funkcija koordinirati ljude kroz Issue sustav. Neki od njih traže od onih koji ostavljaju problem da ispune obrazac. Zatim dolazi moderator, provjerava je li formular ispravno popunjen i postavlja oznake u skladu s onima navedenima u obrascu (oznake može dodati samo privilegirani korisnik ako nisu navedene u predlošku). Primjer takve zajednice je open-source-ideje/open-source-ideje.

Moderator ne dolazi odmah. Stoga, za provjeru valjanosti obrazaca i izvođenje operacija pripremljeni predstavljen u GitHub vijestima. Bot je napisan u Pythonu, ali ga svejedno morate pokrenuti kroz node.js, jer GitHub ima samo 2 vrste radnji - node.js i docker, a za docker se isti kontejner prvo učitava kao node.js, a utovario u njega drugi kontejner, to je dugo vremena. S obzirom da spremnik s node.js sadrži python3 i sve ostalo što vam treba, racionalno je u njega jednostavno učitati zavisnosti jer su male.

Značajke:

  • Radnjom se upravlja pomoću YAML config i Markdown predložaka;
  • Svakom Markdown predlošku dodaje se blok koji opisuje uvjete za ispravno ispunjavanje obrasca i željene radnje;
  • Dodana je konfiguracijska datoteka s globalnim postavkama;
  • Obrasci se sastoje od odjeljaka. Postoje 2 vrste odjeljaka:
    • Slobodan tekst. Radnja može provjeriti je li se korisnik potrudio ispuniti nešto tamo. Značenje teksta se ne provjerava automatski.
    • Potvrdni okviri. Možete zahtijevati da se ispuni n potvrdnih okvira tako da je 0 {= m1 {= n {= m2 {= ukupan broj potvrdnih okvira u odjeljku. Radnjom se provjerava odgovaraju li potvrdni okviri potvrdnim okvirima u predlošku. Ako su zastavice ispravno postavljene, akcija može dodati oznake problemu. zastave.
  • Ako je obrazac netočno ispunjen, akcija upućuje korisnika kako ga ispravno ispuniti i na njega stavlja posebnu oznaku.
  • Ako se obrazac ne ispravi unutar određenog vremena, radnja može zatvoriti problem. Problemi s automatskom zabranom korisnika, brisanjem i premještanjem još nisu implementirani zbog nedostatka službenog API-ja za potrebne radnje i problema s pohranom stanja.
  • Ako je problem riješen, radnja uklanja oznaku.
  • Predlošci odgovora na akciju su, naravno, prilagodljivi.

Izvor: opennet.ru

Dodajte komentar