Volver al índice

Usar Zeitlicht en GitHub Actions

Quiero …

… dejar que un workflow de GitHub cambie tareas, por ejemplo pasar una tarea a pruebas cuando se fusiona su pull request.

Antes de empezar

  • Necesitas una clave de API de este espacio de trabajo, consulta «Crear y revocar claves de API». Crea una solo para GitHub, con Lectura y escritura y solo los tableros que el workflow necesita.
  • La action ejecuta la línea de comandos zl, consulta «Usar la línea de comandos zl».
  • Las claves de API necesitan el plan Ultra de la persona Propietario o Admin que las crea, y están en beta.

Así se hace

  1. En tu repositorio de GitHub, abre Settings, luego Secrets and variables, luego Actions, y añade la clave como secreto con el nombre ZEITLICHT_API_KEY.
  2. Nombra las ramas con el ID corto de la tarea, como 3f2a9c1e-login-fix, o pon el ID corto en el título del pull request. La action lo encuentra ahí.
  3. Añade en .github/workflows/ un archivo de workflow con un paso uses: vince8000/zeitlicht-action@ seguido del SHA de un commit. En with, pon api-key en ${{ secrets.ZEITLICHT_API_KEY }}, task-from en branch o pr-title y args en el comando de zl, un argumento por línea.
  4. En args, {task} representa el ID de la tarea que encontró la action. Para pasar la tarea a pruebas, las líneas son test, request, {task}, --instructions-file y TESTING.md y, si quieres, --tester con un correo y --move-to con el ID de una columna.
  5. Para enlazar también el pull request, añade un segundo paso con las líneas link, add, {task} y la dirección del pull request.
  6. Fusiona un pull request. La ejecución del workflow muestra la respuesta del comando, y la tarea muestra el cambio.

El resultado

El workflow cambia la tarea en tu nombre, con el nombre de la clave junto al cambio en el historial de la tarea. Cada solicitud aparece en el registro de accesos de la clave.

Preguntas frecuentes

¿Por qué un argumento por línea?

Para que nada del nombre de una rama o del título de un pull request pueda ejecutarse como comando. La action nunca pasa tus argumentos por una shell.

¿Puede el texto del pull request convertirse en las instrucciones de prueba?

Sí. En un paso anterior, escribe el texto en un archivo, con el cuerpo del pull request en una variable de entorno, y pasa ese archivo a --instructions-file.

¿Debo fijar la action?

Sí, por el SHA del commit y no por una etiqueta como v1. Así una action modificada no puede colarse en tu workflow sin que lo notes.

Temas relacionados