Emisor: acción de GitHub para forzar o autoservizo dos usuarios do repositorio

Nos límites do proxecto Emisor preparouse un bot para GitHub, resolvendo problemas de autoservizo forzado para os usuarios do repositorio. En GitHub podes atopar repositorios cuxa única función é coordinar persoas a través do sistema Issue. Algúns deles piden aos que deixan un número que enchen un formulario. Despois chega un moderador, comproba que o formulario estea cuberto correctamente e coloca etiquetas de acordo coas especificadas no formulario (as etiquetas só as pode engadir un usuario privilexiado se non están especificadas no modelo). Un exemplo de tal comunidade é ideas de código aberto/ideas de código aberto.

O moderador non chega inmediatamente. Polo tanto, para validar formularios e realizar operacións preparado aparece nas noticias de GitHub. O bot está escrito en Python, pero aínda tes que inicialo a través de node.js, xa que GitHub só ten 2 tipos de accións: node.js e docker, e para docker, o mesmo contedor cárgase primeiro como node.js e cargado nel outro recipiente, iso é moito tempo. Tendo en conta que o contedor con node.js contén python3 e todo o que necesites, é racional simplemente cargar nel as dependencias, xa que son pequenas.

Características:

  • A acción contrólase mediante a configuración de YAML e os modelos Markdown;
  • Engádese un bloque a cada modelo de Markdown que describe as condicións para cubrir correctamente o formulario e as accións desexadas;
  • Engádese un ficheiro de configuración con axustes globais;
  • Os formularios consisten en seccións. Hai 2 tipos de seccións:
    • Texto libre. A acción pode comprobar que o usuario se molestou en encher algo alí. O significado do texto non se verifica automaticamente.
    • Casillas de verificación. Pode esixir que se enchen n caixas de verificación de xeito que 0 {= m1 {= n {= m2 {= número total de caixas de verificación na sección. A acción verifica que as caixas de verificación coincidan coas caixas de verificación do modelo. Se as marcas están configuradas correctamente, a acción pode engadir etiquetas para emitir, respectivamente. bandeiras.
  • Se o formulario se enche incorrectamente, a acción indica ao usuario como enchelo correctamente e ponlle unha etiqueta especial.
  • Se o formulario non se corrixe nun tempo determinado, a acción pode pechar o problema. A prohibición automática de usuarios, problemas de eliminación e movemento aínda non se implementou debido á falta dunha API oficial para as accións necesarias e problemas co almacenamento do estado.
  • Se o problema se resolve, a acción elimina a etiqueta.
  • Os modelos de resposta á acción son, por suposto, personalizables.

Fonte: opennet.ru

Engadir un comentario