Emittente - Azzione GitHub per furzà l'autoserviziu per l'utilizatori di repository

In i cunfini di u prugettu Emittente un bot hè statu preparatu per GitHub, risolve i prublemi di l'autoserviziu forzatu per l'utilizatori di repository. In GitHub pudete truvà repository chì a sola funzione hè di coordinà e persone attraversu u sistema Issue. Certi di elli dumandanu à quelli chì abbandunonu un Issue per compie un furmulariu. Allora vene un moderatore, verifica chì u furmulariu hè cumpletu bè, è mette tags in cunfurmità cù quelli specificati in u furmulariu (i tags ponu esse aghjuntu solu da un utilizatore privilegiatu s'ellu ùn sò micca specificati in u mudellu). Un esempiu di tali cumunità hè idee-open-source/idee-open-source.

U moderatore ùn vene micca immediatamente. Dunque, per cunvalidà e forme è eseguisce operazioni preparatu prisentatu in GitHub news. U bot hè scrittu in Python, ma avete sempre à lancià cù node.js, postu chì GitHub hà solu 2 tipi d'azzioni - node.js è docker, è per docker, u stessu containeru hè prima caricatu cum'è node.js, è caricatu ind'è un altru cuntainer, hè assai tempu. In cunsiderà chì u cuntinuu cù node.js cuntene python3 è tuttu ciò chì avete bisognu, hè raziunale per carcà solu e dependenzii in questu, postu chì sò chjuchi.

Funzioni:

  • L'azzione hè cuntrullata cù YAML config è mudelli Markdown;
  • Un bloccu hè aghjuntu à ogni mudellu di Markdown chì descrive e cundizioni per cumpiendu currettamente u furmulariu è l'azzioni desiderate;
  • Un schedariu di cunfigurazione cù paràmetri globale hè aghjuntu;
  • Forme sò custituiti da sezioni. Ci sò 2 tippi di sezzioni:
    • Testu liberu. L'azzione pò verificà chì l'utilizatore hà preoccupatu di riempie qualcosa quì. U significatu di u testu ùn hè micca verificatu automaticamente.
    • Checkboxes. Pudete dumandà n checkboxes per esse cumpletu cusì chì 0 {= m1 {= n {= m2 {= numeru tutale di checkboxes in a rùbbrica. L'azzione verifica chì e caselle di verificazione currispondenu à e caselle di cuntrollu in u mudellu. Se i bandieri sò stallati currettamente, l'azzione pò aghjunghje tags per issuà, rispettivamente. bandiere.
  • Se u furmulariu hè cumpletu in modu incorrectu, l'azzione urdineghja à l'utilizatore cumu si cumpone currettamente è mette una etichetta speciale nantu à questu.
  • Se a forma ùn hè micca curretta in un certu tempu, allura l'azzione pò chjude u prublema. A pruibizione automatica di l'utilizatori, l'eliminazione è a mossa di prublemi ùn hè micca stata implementata per a mancanza di una API ufficiale per l'azzioni necessarii è i prublemi cù u almacenamiento statale.
  • Se u prublema hè risolta, l'azzione elimina l'etichetta.
  • I mudelli di risposta d'azzione sò, sicuru, persunalizabili.

Source: opennet.ru

Add a comment