{"meta":{"title":"Flujos de trabajo de solución de problemas","intro":"Puede usar las herramientas de GitHub Actions para depurar los flujos de trabajo.","product":"GitHub Actions","breadcrumbs":[{"href":"/es/actions","title":"GitHub Actions"},{"href":"/es/actions/how-tos","title":"Procedimientos"},{"href":"/es/actions/how-tos/troubleshoot-workflows","title":"Solución de problemas de flujos de trabajo"}],"documentType":"article"},"body":"# Flujos de trabajo de solución de problemas\n\nPuede usar las herramientas de GitHub Actions para depurar los flujos de trabajo.\n\n## Sugerencias iniciales para la solución de problemas\n\nHay varias maneras de solucionar errores en las ejecuciones de flujo de trabajo.\n\n> \\[!NOTE] Si tiene una suscripción GitHub Copilot Free, esto contará para su límite mensual de mensajes de chat.\n\n### Uso de GitHub Copilot\n\nPara abrir un chat con GitHub Copilot sobre una ejecución fallida de un flujo de trabajo, puedes hacer una de estas dos cosas:\n\n* Junto a la comprobación con errores en el cuadro de combinación, haga clic en **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"kebab-horizontal\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>** y, a continuación, haga clic en **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-copilot\" aria-label=\"copilot\" role=\"img\"><path d=\"M7.998 15.035c-4.562 0-7.873-2.914-7.998-3.749V9.338c.085-.628.677-1.686 1.588-2.065.013-.07.024-.143.036-.218.029-.183.06-.384.126-.612-.201-.508-.254-1.084-.254-1.656 0-.87.128-1.769.693-2.484.579-.733 1.494-1.124 2.724-1.261 1.206-.134 2.262.034 2.944.765.05.053.096.108.139.165.044-.057.094-.112.143-.165.682-.731 1.738-.899 2.944-.765 1.23.137 2.145.528 2.724 1.261.566.715.693 1.614.693 2.484 0 .572-.053 1.148-.254 1.656.066.228.098.429.126.612.012.076.024.148.037.218.924.385 1.522 1.471 1.591 2.095v1.872c0 .766-3.351 3.795-8.002 3.795Zm0-1.485c2.28 0 4.584-1.11 5.002-1.433V7.862l-.023-.116c-.49.21-1.075.291-1.727.291-1.146 0-2.059-.327-2.71-.991A3.222 3.222 0 0 1 8 6.303a3.24 3.24 0 0 1-.544.743c-.65.664-1.563.991-2.71.991-.652 0-1.236-.081-1.727-.291l-.023.116v4.255c.419.323 2.722 1.433 5.002 1.433ZM6.762 2.83c-.193-.206-.637-.413-1.682-.297-1.019.113-1.479.404-1.713.7-.247.312-.369.789-.369 1.554 0 .793.129 1.171.308 1.371.162.181.519.379 1.442.379.853 0 1.339-.235 1.638-.54.315-.322.527-.827.617-1.553.117-.935-.037-1.395-.241-1.614Zm4.155-.297c-1.044-.116-1.488.091-1.681.297-.204.219-.359.679-.242 1.614.091.726.303 1.231.618 1.553.299.305.784.54 1.638.54.922 0 1.28-.198 1.442-.379.179-.2.308-.578.308-1.371 0-.765-.123-1.242-.37-1.554-.233-.296-.693-.587-1.713-.7Z\"></path><path d=\"M6.25 9.037a.75.75 0 0 1 .75.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 .75-.75Zm4.25.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 1.5 0Z\"></path></svg> Explicar error**.\n* 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, haga clic en **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-copilot\" aria-label=\"copilot\" role=\"img\"><path d=\"M7.998 15.035c-4.562 0-7.873-2.914-7.998-3.749V9.338c.085-.628.677-1.686 1.588-2.065.013-.07.024-.143.036-.218.029-.183.06-.384.126-.612-.201-.508-.254-1.084-.254-1.656 0-.87.128-1.769.693-2.484.579-.733 1.494-1.124 2.724-1.261 1.206-.134 2.262.034 2.944.765.05.053.096.108.139.165.044-.057.094-.112.143-.165.682-.731 1.738-.899 2.944-.765 1.23.137 2.145.528 2.724 1.261.566.715.693 1.614.693 2.484 0 .572-.053 1.148-.254 1.656.066.228.098.429.126.612.012.076.024.148.037.218.924.385 1.522 1.471 1.591 2.095v1.872c0 .766-3.351 3.795-8.002 3.795Zm0-1.485c2.28 0 4.584-1.11 5.002-1.433V7.862l-.023-.116c-.49.21-1.075.291-1.727.291-1.146 0-2.059-.327-2.71-.991A3.222 3.222 0 0 1 8 6.303a3.24 3.24 0 0 1-.544.743c-.65.664-1.563.991-2.71.991-.652 0-1.236-.081-1.727-.291l-.023.116v4.255c.419.323 2.722 1.433 5.002 1.433ZM6.762 2.83c-.193-.206-.637-.413-1.682-.297-1.019.113-1.479.404-1.713.7-.247.312-.369.789-.369 1.554 0 .793.129 1.171.308 1.371.162.181.519.379 1.442.379.853 0 1.339-.235 1.638-.54.315-.322.527-.827.617-1.553.117-.935-.037-1.395-.241-1.614Zm4.155-.297c-1.044-.116-1.488.091-1.681.297-.204.219-.359.679-.242 1.614.091.726.303 1.231.618 1.553.299.305.784.54 1.638.54.922 0 1.28-.198 1.442-.379.179-.2.308-.578.308-1.371 0-.765-.123-1.242-.37-1.554-.233-.296-.693-.587-1.713-.7Z\"></path><path d=\"M6.25 9.037a.75.75 0 0 1 .75.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 .75-.75Zm4.25.75v1.501a.75.75 0 0 1-1.5 0V9.787a.75.75 0 0 1 1.5 0Z\"></path></svg> Explicar error**.\n\nSe abre una ventana de chat con GitHub Copilot, donde proporcionará instrucciones para resolver el problema.\n\n### Uso de registros de ejecución de flujo de trabajo\n\nCada 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 flujo de trabajo](/es/actions/how-tos/monitor-workflows/use-workflow-run-logs).\n\n### Habilitación del registro de depuración\n\nSi 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](/es/actions/how-tos/monitor-workflows/enable-debug-logging).\n\nSi 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.\nPor ejemplo, puedes usar `npm install --verbose` para npm o `GIT_TRACE=1 GIT_CURL_VERBOSE=1 git ...` para Git.\n\n## Revisar errores de facturación\n\nEl uso de acciones incluye minutos de ejecutor y almacenamiento para [artefactos de flujo de trabajo](/es/actions/tutorials/store-and-share-data). Para más información, consulta [facturación de Acciones de GitHub](/es/billing/concepts/product-billing/github-actions).\n\n### Establecer un presupuesto\n\nEstablecer 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](/es/billing/how-tos/set-up-budgets) para obtener más información.\n\n## Revisar la actividad de GitHub Actions mediante métricas\n\nPara analizar la eficacia y confiabilidad de los flujos de trabajo mediante métricas, consulta [Visualización de métricas de GitHub Actions](/es/actions/how-tos/administer/view-metrics).\n\n## Solucionar problemas de desencadenadores de flujo de trabajo\n\nEn primer lugar, asegúrese de que el flujo de trabajo no se ha deshabilitado manualmente, consulte [Deshabilitación y habilitación de un flujo de trabajo](/es/actions/how-tos/manage-workflow-runs/disable-and-enable-workflows). Un flujo de trabajo deshabilitado no responde a sus desencadenadores.\n\nPuedes 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](/es/actions/how-tos/write-workflows/choose-when-workflows-run/trigger-a-workflow).\n\nPara ver la lista completa de eventos disponibles, consulta [Eventos que desencadenan flujos de trabajo](/es/actions/reference/workflows-and-actions/events-that-trigger-workflows).\n\n### Desencadenar condiciones de evento\n\nAlgunos 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.\n\nLos 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.\n\nLos 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](/es/actions/how-tos/manage-workflow-runs/skip-workflow-runs).\n\n### Flujos de trabajo programados que se ejecutan en momentos inesperados\n\nLos eventos programados pueden retrasarse durante periodos de alta carga de GitHub Actions ejecuciones de flujos de trabajo.\n\nLos 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](/es/actions/reference/workflows-and-actions/events-that-trigger-workflows#schedule).\n\n### Límites de filtrado y diferencias\n\nLos 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.\n\nPuedes usar caracteres especiales con filtros. Para más información, consulta [Sintaxis del flujo de trabajo para Acciones de GitHub](/es/actions/reference/workflows-and-actions/workflow-syntax#filter-pattern-cheat-sheet).\n\nPara 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 Acciones de GitHub](/es/actions/reference/workflows-and-actions/workflow-syntax#git-diff-comparisons).\n\n## Solución de problemas de ejecución de flujo de trabajo\n\nLa 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.\n\n### Depuración de condiciones de trabajo\n\nSi un trabajo se omitió de forma inesperada o se ejecutó cuando esperaba que se omitiera, puede ver la evaluación de la expresión para comprender por qué:\n\n1. Haga clic en el trabajo dentro de la ejecución del flujo de trabajo.\n2. Descargue el archivo de registro desde el menú del trabajo.\n3. Abra el archivo `JOB-NAME/system.txt` .\n4. Busque las líneas `Evaluating`, `Expanded` y `Result`.\n\nEn la `Expanded` línea se muestran los valores reales en tiempo de ejecución que se sustituyeron en la `if` condición, lo que aclara por qué la expresión se evaluó como `true` o `false`.\n\nPara más información, consulta [Visualización de registros de expresiones de condición de trabajo](/es/actions/how-tos/monitor-workflows/view-job-condition-logs).\n\n### Cancelar flujos de trabajo\n\nSi la cancelación estándar mediante la interfaz de usuario de [UI](/es/actions/reference/workflows-and-actions/workflow-cancellation) o [API](/es/rest/actions/workflow-runs?apiVersion=2022-11-28#cancel-a-workflow-run) 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.\n\nEn 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](/es/rest/actions/workflow-runs?apiVersion=2022-11-28#force-cancel-a-workflow-run).\n\nUna causa común puede ser el uso de la `always()`función de comprobación de estado [](/es/actions/reference/workflows-and-actions/expressions#status-check-functions), que devuelve `true`, incluso en caso de cancelación. Una alternativa es usar el inverso de la función `cancelled()`, `${{ !cancelled() }}`.\n\nPara más información, consulta [Utilizar condiciones para controlar la ejecución de jobs](/es/actions/how-tos/write-workflows/choose-when-workflows-run/control-jobs-with-conditions) y [Cancelar una ejecución de flujo de trabajo](/es/actions/how-tos/manage-workflow-runs/cancel-a-workflow-run).\n\n## Solucionar problemas de ejecutores\n\n### Definir etiquetas de ejecutor\n\nGitHubLos ejecutores hospedados aprovechan [las etiquetas preestablecidas](/es/actions/reference/runners/github-hosted-runners#standard-github-hosted-runners-for-public-repositories) mantenidas a través del repositorio [`actions/runner-images`](https://github.com/actions/runner-images?tab=readme-ov-file#available-images).\n\nSe 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.\n\n### Ejecutores autohospedados\n\nSi utilizas ejecutores auto-hospedados, puedes ver su actividad y diagnosticar problemas comunes.\n\nPara más información, consulta [Supervisión y solución de problemas de ejecutores autohospedados](/es/actions/how-tos/manage-runners/self-hosted-runners/monitor-and-troubleshoot).\n\n### Direcciones IP del runner detectadas por escáneres de seguridad\n\nGitHubLos ejecutores hospedados usan direcciones IP asignadas dinámicamente desde la infraestructura compartida. Estas direcciones IP se publican a través de la API de Meta (por ejemplo, las claves `actions` y `actions_macos`). Para obtener más información, vea [Puntos de conexión de la API de REST para metadatos](/es/rest/meta/meta#get-github-meta-information).\n\nLos servicios de inteligencia sobre amenazas de terceros, los escáneres de reputación ip o los proveedores de firewall pueden marcar estas direcciones IP como \"malintencionadas\" o \"sospechosas\". Dado que la infraestructura subyacente se comparte, la actividad de otros usuarios de la misma infraestructura puede influir en las puntuaciones de reputación asignadas a estas direcciones.\n\nGitHub no controla las listas de reputación de IP de terceros y no puede comentar su precisión o frecuencia de actualización. Para verificar si una dirección IP pertenece a los ejecutores alojados en GitHub, consulte los rangos de IP devueltos por la API Meta.\n\nSi tiene un problema de seguridad sobre una dirección IP de propiedad Microsoft, notifique a la [Centro de respuestas de seguridad de Microsoft (MSRC)](https://msrc.microsoft.com/report/).\n\n## Sugerencias de solución de problemas de redes\n\nNuestro soporte técnico se limita a los problemas de red que implican lo siguiente:\n\n* Tus redes\n* Redes externas\n* Sistemas de terceros\n* Conectividad a Internet general\n\nPara ver el estado en tiempo real de la plataforma de GitHub, consulte [GitHub Estado](https://githubstatus.com/).\n\nPara 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.\n\nSi no está seguro sobre el problema, póngase 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](/es/support/contacting-github-support).\n\n### DNS\n\nSe 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.\n\n### Firewalls\n\nLos 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.\n\n### Proxies\n\nSe 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.\n\nConsulta [Uso de servidores proxy con un ejecutor](/es/actions/how-tos/manage-runners/use-proxy-servers) para obtener información sobre cómo configurar la aplicación del ejecutor para que use un proxy.\n\n### Subredes\n\nEs 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.\n\n### Certificados\n\nSe 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.\n\n### Listas de IP\n\nLas 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.\n\nPara obtener información sobre las direcciones IP de GitHub, como las que utilizan los runners alojados en GitHub, consulte [Acerca de las direcciones IP de GitHub](/es/authentication/keeping-your-account-and-data-secure/about-githubs-ip-addresses).\n\nLas direcciones IP estáticas están disponibles para usarse con ejecutores de mayor tamaño hospedados en GitHub. Para obtener más información, consulta [Administración de ejecutores más grandes](/es/actions/how-tos/manage-runners/larger-runners/manage-larger-runners).\n\n### Sistemas operativos y aplicaciones de software\n\nAdemás de los cortafuegos o servidores proxy, las personalizaciones realizadas en los ejecutores alojados 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 [Personalización de runners hospedados en GitHub](/es/actions/how-tos/manage-runners/github-hosted-runners/customize-runners).\n\n* Para los ejecutores autohospedados, obtén más información sobre los puntos de conexión necesarios en [Referencia de ejecutores autohospedados](/es/actions/reference/runners/self-hosted-runners).\n\n* Para obtener ayuda a fin de configurar WireGuard, consulta [Uso de WireGuard para crear una superposición de red](/es/actions/how-tos/manage-runners/github-hosted-runners/connect-to-a-private-network/connect-with-wireguard).\n\n* Para más información sobre la configuración de OpenID Connect (OIDC), consulta [Usar una puerta de enlace de API con OIDC](/es/actions/how-tos/manage-runners/github-hosted-runners/connect-to-a-private-network/connect-with-oidc).\n\n### Redes privadas de Azure para ejecutores hospedados en GitHub\n\nPueden surgir problemas por el uso de ejecutores hospedados en GitHub dentro de la configuración de sus Redes virtuales de Azure (VNET).\n\nPara obtener consejos para solucionar problemas, consulte [Solución de problemas de configuraciones de red privada de Azure para los ejecutores hospedados en GitHub en su organización.](/es/organizations/managing-organization-settings/troubleshooting-azure-private-network-configurations-for-github-hosted-runners-in-your-organization) o [Solución de problemas de configuraciones de red privada de Azure para ejecutores hospedados en GitHub en su empresa.](/es/enterprise-cloud@latest/admin/configuring-settings/configuring-private-networking-for-hosted-compute-products/troubleshooting-azure-private-network-configurations-for-github-hosted-runners-in-your-enterprise) en la GitHub Enterprise Clouddocumentación."}