Skip to main content

Flujos de trabajo de solución de problemas

Puede utilizar las herramientas de GitHub Actions para depurar los flujos de trabajo.

Sugerencias iniciales para la solución de problemas

Hay varias maneras de solucionar errores en las ejecuciones de flujo de trabajo.

Nota:

Si tienes una suscripción de GitHub Copilot Free, contará para el límite mensual de mensajes de chat.

Uso de GitHub Copilot

Para abrir un chat con GitHub Copilot sobre una ejecución de flujo de trabajo con errores, puedes:

  • Junto a la comprobación con errores en el cuadro de combinación, haz clic en y, luego, en Explicación del error.
  • En el cuadro de combinación, haz clic en la comprobación con errores. En la parte superior de la página de resumen de ejecución del flujo de trabajo, haz clic en Explicación del error.

Se abre una ventana de chat con GitHub Copilot, donde proporcionará instrucciones para resolver el problema.

Uso de registros de ejecución de flujo de trabajo

Cada ejecución de flujo de trabajo genera bitácoras de actividad que puedes ver, buscar y descargar. Para más información, consulta Uso de registros de ejecución de flujo de trabajo.

Habilitación del registro de depuración

Si los registros de flujo de trabajo no proporcionan suficiente detalle para diagnosticar por qué un flujo de trabajo o paso no funciona como se espera, puedes habilitar más registros de depuración. Para más información, consulta Habilitación del registro de depuración.

Si el flujo de trabajo usa herramientas o acciones específicas, habilitar sus opciones de registro detallado o depuración puede ayudar a generar resultados más detallados para solucionar problemas. Por ejemplo, puedes usar npm install --verbose para npm o GIT_TRACE=1 GIT_CURL_VERBOSE=1 git ... para Git.

Revisar errores de facturación

El uso de acciones incluye minutos de ejecutor y almacenamiento para artefactos de flujo de trabajo. Para más información, consulta Facturación de Acciones de GitHub.

Establecer un presupuesto

Establecer un presupuesto de Acciones puede ayudar a desbloquear inmediatamente los flujos de trabajo provocados por errores de facturación o almacenamiento. Permitirá que se facturen más minutos y el uso de almacenamiento hasta el importe presupuestado establecido. Consulta Configuración de presupuestos para controlar el gasto en productos medidos para obtener más información.

Revisar la actividad de GitHub Actions con métricas

Para analizar la eficacia y confiabilidad de los flujos de trabajo mediante métricas, consulta Visualización de métricas de GitHub Actions.

Solucionar problemas de desencadenadores de flujo de trabajo

Puedes revisar el campo on: del flujo de trabajo para comprender lo que se espera que desencadene. Para más información, consulta Activar un flujo de trabajo.

Para ver la lista completa de eventos disponibles, consulta Eventos que desencadenan flujos de trabajo.

Desencadenar condiciones de evento

Algunos eventos de desencadenamiento solo se ejecutan desde la rama predeterminada (es decir, issues, schedule). Las versiones del archivo de flujo de trabajo que existen fuera de la rama predeterminada no se desencadenarán en estos eventos.

Los flujos de trabajo no se ejecutarán en la actividad pull_request si la solicitud de incorporación de cambios tiene un conflicto de combinación.

Los flujos de trabajo que, de lo contrario, se desencadenarían en la actividad push o pull_request se omitirán si el mensaje de confirmación contiene una anotación de omisión. Para más información, consulta Saltarse las ejecuciones de código.

Flujos de trabajo programados que se ejecutan en momentos inesperados

Los eventos programados se pueden retrasar durante periodos de cargas altas de ejecuciones de flujo de trabajo de GitHub Actions.

Los tiempos de carga alta incluyen el inicio de cada hora. Si la carga es lo suficientemente alta, es posible que se quiten algunos trabajos en cola. Para aminorar la posibilidad de los retrasos, programa tu flujo de trabajo para que se ejecute en una porción diferente de la hora. Para más información, consulta Eventos que desencadenan flujos de trabajo.

Límites de filtrado y diferencias

Los eventos específicos permiten filtrar por rama, etiqueta o rutas de acceso que puedes personalizar. La creación de la ejecución del flujo de trabajo se omitirá si se aplican las condiciones de filtro para filtrar el flujo de trabajo.

Puedes usar caracteres especiales con filtros. Para más información, consulta Sintaxis del flujo de trabajo para GitHub Actions.

Para el filtrado de rutas de acceso, la evaluación de diferencias se limita a los primeros 300 archivos. Si hay archivos que cambiaron y no se correspondieron en los primeros 300 archivos que devuelve el filtro, el flujo de trabajo no se ejecutará. Para más información, consulta Sintaxis del flujo de trabajo para GitHub Actions.

Solución de problemas de ejecución de flujo de trabajo

La ejecución del flujo de trabajo implica cualquier problema detectado después de que se haya desencadenado el flujo de trabajo y se haya creado una ejecución de flujo de trabajo.

Cancelar flujos de trabajo

Si la cancelación estándar mediante la interfaz de usuario de UI o API no procesa según lo previsto, puede haber una instrucción condicional configurada para los trabajos de flujo de trabajo en ejecución que hacen que no se cancele.

En estos casos, puedes sacar provecho de la API para forzar la cancelación de la ejecución. Para más información, consulta Puntos de conexión de API de REST para ejecuciones de flujo de trabajo.

Una causa común puede ser el uso de la función de comprobación de estado de always() que devuelve true, incluso en caso de cancelación. Una alternativa es usar el inverso de la función cancelled(), ${{ !cancelled() }}.

Para más información, consulta Utilizar condiciones para controlar la ejecución de jobs y Cancelar una ejecución de flujo de trabajo.

Solucionar problemas de ejecutores

Definir etiquetas de ejecutor

Los ejecutores hospedados en GitHub sacan provecho de etiquetas preestablecidas mantenidas mediante el repositorio de actions/runner-images.

Se recomienda usar nombres de etiqueta únicos para ejecutores más grandes y autohospedados. Si una etiqueta coincide con cualquiera de las etiquetas preestablecidas existentes, puede haber problemas de asignación de ejecutor en los que no hay ninguna garantía sobre la opción del ejecutor coincidente en la que se ejecutará el trabajo.

Ejecutores autohospedados

Si utilizas ejecutores auto-hospedados, puedes ver su actividad y diagnosticar problemas comunes.

Para más información, consulta Supervisión y solución de problemas de ejecutores autohospedados.

Sugerencias de solución de problemas de redes

Nuestro soporte técnico se limita a los problemas de red que implican lo siguiente:

  • Tus redes
  • Redes externas
  • Sistemas de terceros
  • Conectividad a Internet general

Para ver el estado de la plataforma en tiempo real de GitHub, comprueba Estado de GitHub.

Para otros problemas relacionados con la red, revisa la configuración de red de tu organización y comprueba el estado de los servicios de terceros a los que accedes. Si los problemas persisten, considera la posibilidad de ponerte en contacto con los administradores de red para obtener más ayuda.

Si tienes dudas sobre el problema, ponte en contacto con Soporte de GitHub. Para más información sobre cómo ponerse en contacto con el soporte técnico, consulta Contactar al Soporte de GitHub.

DNS

Se pueden producir incidencias en la configuración del Sistema de nombres de dominio (DNS), la resolución o problemas de solucionadores. Te recomendamos revisar los registros disponibles, la documentación del proveedor o consultar con los administradores para obtener ayuda adicional.

Firewalls

Los firewalls pueden bloquear las actividades. Si esto ocurre, es posible que quieras revisar los registros disponibles, la documentación del proveedor o consultar con los administradores para obtener ayuda adicional.

Proxies

Se podría producir un error en las actividades al usar un proxy para las comunicaciones. Es recomendable revisar los registros disponibles, la documentación del proveedor o consultar con los administradores para obtener ayuda adicional.

Consulta Uso de un servidor proxy con ejecutores autohospedados para obtener información sobre cómo configurar la aplicación del ejecutor para que use un proxy.

Subredes

Es posible encontrar problemas con subredes en uso o superposiciones con una red existente, como dentro del proveedor de nube virtual o las redes de Docker. En esos casos, se recomienda revisar la topología de red y las subredes en uso.

Certificados

Se pueden producir problemas de cadenas de certificados autofirmados o personalizados, y almacenes de certificados. Puedes comprobar que un certificado en uso no ha expirado y que actualmente es de confianza. Los certificados se pueden inspeccionar con curl o herramientas similares. También puedes revisar los registros disponibles, la documentación del proveedor o consultar con los administradores para obtener ayuda adicional.

Listas de IP

Las listas de direcciones IP permitidas o denegadas pueden interrumpir las comunicaciones esperadas. Si hay un problema, deberías revisar los registros disponibles, la documentación del proveedor o consultar con los administradores para obtener ayuda adicional.

Si tu cuenta de GitHub está configurada con una lista de direcciones IP permitidas, se producirá un error en los flujos de trabajo si un ejecutor usa una dirección IP que no está incluida en la lista de permitidos. Para resolver este problema, comprueba que las direcciones IP del ejecutor se agregan a la lista de permitidos de tu organización o empresa. Para más detalles, consulta Administrar las direcciones IP permitidas en tu organización o Restricción del tráfico de red a la empresa con una lista de direcciones IP permitidas.

Para obtener información sobre las direcciones IP de GitHub, como las usadas por los ejecutores hospedados por GitHub, consulta Acerca de las direcciones de IP de GitHub.

Las direcciones IP estáticas están disponibles para su uso con ejecutores de mayor capacidad hospedados en GitHub. Para obtener más información, consulta Administración de ejecutores más grandes.

Sistemas operativos y aplicaciones de software

Además de firewalls o servidores proxy, las personalizaciones realizadas en los ejecutores hospedados en GitHub, como la instalación de paquetes de software adicionales, pueden provocar interrupciones en la comunicación. Para obtener información sobre las opciones de personalización disponibles, consulta Personalizar los ejecutores hospedados en GitHub.

Redes privadas de Azure para ejecutores hospedados en GitHub

Pueden surgir problemas por el uso de ejecutores hospedados en GitHub dentro de la configuración de las redes virtuales (VNET) de Azure configuradas.

Para obtener consejos de solución de problemas, consulta Solución de problemas de configuraciones de redes privadas de Azure para ejecutores hospedados en GitHub en su organización o Solución de problemas de configuraciones de red privada de Azure para ejecutores hospedados en GitHub en su empresa.