Nota: GitHub Actions estuvo disponible para GitHub Enterprise Server 2.22 como un beta limitado. El beta terminó. GitHub Actions está ahora disponible habitualmente en GitHub Enterprise Server 3.0 o superior. Para obtener más información, consulta la sección de notas de lanzamiento para GitHub Enterprise Server 3.0.
- Para obtener más información acerca de cómo mejorar a GitHub Enterprise Server 3.0 o superior, consulta la sección "Mejorar a GitHub Enterprise Server".
- Para obtener más información acerca de configurar las GitHub Actions después de tu mejora, consulta la documentación de GitHub Enterprise Server 3.0.
Nota: Los ejecutores hospedados en GitHub no son compatibles con GitHub Enterprise Server actualmente. Puedes encontrar más información sobre el soporte que se tiene planeado en el futuro en el Itinerario público de GitHub.
Configurar los eventos del flujo de trabajo
Puedes configurar los flujos de trabajo para que se ejecuten una o más veces utilizando la sintaxis de flujo de trabajo on
. Para obtener más información, consulta la sección "Sintaxis del flujo de trabajo para las GitHub Actions".
Ejemplo: utilizando un solo evento
# Triggered when code is pushed to any branch in a repository
on: push
Ejemplo: Utilizando una lista de eventos
# Triggers the workflow on push or pull request events
on: [push, pull_request]
Ejemplo: Utilizando eventos múltiples con tipos de actividad o configuración
Si necesitas especificar tipos de actividad o configuración para un evento, debes configurar cada evento por separado. Debes agregar dos puntos (:
) a todos los eventos, incluyendo aquellos sin configuración.
on:
# Trigger the workflow on push or pull request,
# but only for the main branch
push:
branches:
- main
pull_request:
branches:
- main
# Also trigger on page_build, as well as release created events
page_build:
release:
types: # This configuration does not affect the page_build event above
- created
Nota: No puedes activar nuevas ejecuciones de flujo de trabajo usando el GITHUB_TOKEN
. Para obtener más información, consulta "Activar nuevos flujos de trabajo mediante un token de acceso personal".
Los siguientes pasos se producen para activar una ejecución de flujo de trabajo:
-
Se produce un evento en tu repositorio, y el evento resultante tiene una confirmación de SHA y una referencia de Git asociadas.
-
El directorio
.github/workflows
en tu repositorio se busca para los archivos de flujo de trabajo en la confirmación SHA o la referencia de Git asociadas. Los archivos de flujo de trabajo deben estar presentes en la confirmación SHA o la referencia de Git que se debe tener en cuenta.Por ejemplo, si el evento se produjo en una rama particular del repositorio, los archivos de flujo de trabajo deben estar presentes en el repositorio en esa rama.
-
Se inspeccionarán los archivos de flujo de trabajo para esa confirmación de SHA y referencia de Git, y se activará una nueva ejecución de flujo de trabajo para cualquier flujo de trabajo que tenga valores
on:
que coincidan con el evento desencadenante.El flujo de trabajo se ejecuta en el código de tu repositorio en la misma confirmación SHA y la referencia de Git que desencadenó el evento. Cuando se ejecuta un flujo de trabajo, GitHub Enterprise Server establece las variables de entorno
GITHUB_SHA
(confirmar SHA) yGITHUB_REF
(referencia de Git) en el entorno del ejecutor. Para obtener más información, consulta "Usar variables de entorno".
Eventos programados
El evento schedule
te permite activar un flujo de trabajo en una hora programada.
Nota: El evento de schedule
puede retrasarse durante periodos de cargas algas de ejecuciones de flujo de trabajo de GitHub Actions. Los tiempos de carga alta incluyen el inicio de cada hora. Para aminorar la posibilidad de los retrasos, programa tu flujo de trabajo para que se ejecute en una porción diferente de la hora.
programación
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
n/a | n/a | Última confirmación en la rama predeterminada | Rama por defecto |
Puedes programar un flujo de trabajo para que se ejecute en horarios UTC específicos usando sintaxis de cron POSIX. Los flujos de trabajo programados se ejecutan en la confirmación más reciente en la rama base o en la rama por defecto. El intervalo más corto en el que puedes ejecutar flujos de trabajo programados es una vez cada 5 minutos.
Este ejemplo activa el flujo de trabajo diariamente a las 5:30 y 17:30 UTC:
on:
schedule:
# * is a special character in YAML so you have to quote this string
- cron: '30 5,17 * * *'
La sintaxis de cron tiene cinco campos separados por un espacio, y cada campo representa una unidad de tiempo.
┌───────────── minuto (0 - 59)
│ ┌───────────── hora (0 - 23)
│ │ ┌───────────── día del mes (1 - 31)
│ │ │ ┌───────────── mes (1 - 12 o EN-DIC)
│ │ │ │ ┌───────────── día de la semana (0 - 6 o DOM-SÁB)
│ │ │ │ │
│ │ │ │ │
│ │ │ │ │
* * * * *
Puedes usar estos operadores en cualquiera de los cinco campos:
Operador | Descripción | Ejemplo |
---|---|---|
* | Cualquier valor | * * * * * se ejecuta todos los días a cada minuto. |
, | Separador de la lista de valores | 2,10 4,5 * * * se ejecuta en el minuto 2 y 10 de la cuarta y quinta hora de cada día. |
- | Rango de valores | 0 4-6 * * * se ejecuta en el minuto 0 de la cuarta, quinta y sexta hora. |
/ | Valores del paso | 20/15 * * * * se ejecuta cada 15 minutos a partir del minuto 20 hasta el minuto 59 (minutos 20, 35 y 50). |
Nota: GitHub Actions no es compatible con la sintaxis que no es estándar @yearly
, @monthly
, @weekly
, @daily
, @hourly
y @reboot
.
Puedes usar contrab guru para generar tu sintaxis de cron y confirmar a qué hora se ejecutará. Para que puedas comenzar, hay también una lista de ejemplos de crontab guru.
Las notificaciones para los flujos de trabajo programados se envían al usuario que modificó por última vez la sintaxis de cron en el archivo de flujo de trabajo. Para obtener más información, por favor consulta la sección "Notificaciones para las ejecuciones de flujo de trabajo".
Eventos manuales
Puedes activar ejecuciones de flujo de trabajo manualmente. Para activar flujos de trabajo específicos en un repositorio, utiliza el evento workflow_dispatch
. Para activar más de un flujo de trabajo en un repositorio y crear eventos personalizados y tipos de eventos, utiliza el evento repository_dispatch
.
workflow_dispatch
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
workflow_dispatch | n/a | Última confirmacion en la rama de GITHUB_REF | Rama que recibió el envío |
Puedes configurar propiedades de entrada definidas personalmente, valores de entrada predeterminados y entradas requeridas para el evento directamente en tu flujo de trabajo. Cuando se ejecuta el flujod e trabajo, puedes acceder a los valores de entrada en el contexto de github.event.inputs
. Para obtener más información, consulta "Contextos".
Puedes activar una ejecución de flujo de trabajo manualmente si utilizas la API de GitHub Enterprise Server y desde GitHub Enterprise Server. Para obtener más información, consulta la sección "Ejecutar un flujo de trabajo manualmente".
Cuando activas el evento en GitHub, puedes proporcionar la ref
y cualquier input
directamente en GitHub. Para obtener más información, consulta la sección "Utilizar entradas y salidas con una acción".
Para activar el evento de webhook personalizado de workflow_dispatch
utilizando la API de REST, debes enviar una solicitud de POST
a la terminal de la API de GitHub y proporcionar la ref
y cualquier input
relacionado. Para obtener más información, consulta terminal "Crear un evento de envío de flujo de trabajo" de la API de REST.
Ejemplo
Para utilizar el evento de workflow_dispatch
, necesitas incluirlo como un activador en tu archivo de flujo de trabajo de GitHub Actions. El siguiente ejemplo ejecuta el flujo de trabajo únicamente cuando se activa manualmente:
on: workflow_dispatch
Ejemplo de configuración de flujo de trabajo
Este ejemplo define las entradas name
y home
y las imprime utilizando los contextos github.event.inputs.name
y github.event.inputs.home
. Si no se proporciona un home
, se imprime el valor predeterminado 'The Octoverse'.
name: Manually triggered workflow
on:
workflow_dispatch:
inputs:
name:
description: 'Person to greet'
required: true
default: 'Mona the Octocat'
home:
description: 'location'
required: false
default: 'The Octoverse'
jobs:
say_hello:
runs-on: ubuntu-latest
steps:
- run: |
echo "Hello ${{ github.event.inputs.name }}!"
echo "- in ${{ github.event.inputs.home }}!"
repository_dispatch
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
repository_dispatch | n/a | Última confirmación en la rama predeterminada | Rama por defecto |
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Puedes utilizar la API de GitHub Enterprise Server para desencadenar un evento de webhook llamado repository_dispatch
cuando quieras desencadenar un flujo de trabajo para una actividad que sucede fuera de GitHub. Para obtener más información, consulta la sección "Crear un evento de envío de repositorio".
Para desencadenar el evento de webhook repository_dispatch
personalizado, debes enviar una solicitud de POST
a un punto final de una API de GitHub Enterprise Server y dar un nombre de event_type
para describir el tipo de actividad. Para desencadenar la ejecución de un flujo de trabajo, también debes configurar tu flujo de trabajo para usar el evento repository_dispatch
.
Ejemplo
Predeterminadamente, todos los event_types
desencadenan la ejecución de un flujo de trabajo. Puedes limitar tu flujo de trabajo para que se ejecute cuando un valor específico de event_type
se envíe en la carga útil del webhook de repository_dispatch
. Tú defines los tipos de evento enviados en la carga útil de repository_dispatch
cuando creas el repositorio.
on:
repository_dispatch:
types: [opened, deleted]
Eventos de webhook
Puedes configurar tu flujo de trabajo para que se ejecute cuando se generen los eventos de webhook en GitHub Enterprise Server. Algunos eventos tienen más de un tipo de actividad que activa el evento. Si más de un tipo de actividad activa el evento, puedes especificar qué tipos de actividad activarán el flujo de trabajo para que se ejecute. Para obtener más información, consulta la sección "webhooks".
No todos los eventos de webhook activan flujos de trabajo. Para encontrar una lista completa de eventos de webhook disponibles y sus cargas útiles, consulta la sección "Eventos de webhook y cargas útiles".
check_run
Ejecuta tu flujo de trabajo en cualquier momento que se produzca el evento check_run
. Más de un tipo de actividad desencadena este evento. Para obtener más información acerca de la API de REST, consulta la sección "Ejecuciones de verificación".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
check_run | - created - rerequested - completed | Última confirmación en la rama predeterminada | Rama por defecto |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando una ejecución de verificación esté como rerequested
o completed
.
on:
check_run:
types: [rerequested, completed]
check_suite
Ejecuta tu flujo de trabajo en cualquier momento en que se produzca el evento check_suite
. Más de un tipo de actividad desencadena este evento. Para obtener más información acerca de la API de REST, consulta la sección "Suites de verificación".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Nota: Para evitar flujos de trabajo recurrentes, este evento no activa flujos de trabajo si la comprobación de suite fue creada por GitHub Actions.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
check_suite | - completed - requested - rerequested | Última confirmación en la rama predeterminada | Rama por defecto |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando una comprobación de ejecución ha sido resolicitada
o completada
.
on:
check_suite:
types: [rerequested, completed]
create (crear)
Ejecuta tu flujo de trabajo en cualquier momento en que alguien cree una rama o etiqueta, que activa el evento crear
. Para obtener más información sobre la API de REST, consulta la sección "Crear una referencia".
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
create (crear) | n/a | Última confirmación en la rama o etiqueta creada | Rama o etiqueta creada |
Por ejemplo, puedes ejecutar un flujo de trabajo cuando se produzca el evento crear
.
on:
create
delete
Ejecuta tu flujo de trabajo en cualquier momento en que alguien cree una rama o etiqueta, que activa el evento eliminar
. Para obtener más información sobre la API de REST, consulta la sección "Borrar una referencia".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
delete | n/a | Última confirmación en la rama predeterminada | Rama por defecto |
Por ejemplo, puedes ejecutar un flujo de trabajo cuando se produzca el evento eliminar
.
on:
delete
deployment
Ejecuta tu flujo de trabajo en cualquier momento en que alguien cree una implementación, que activa el evento implementación
. Las implementaciones creadas con SHA de confirmación pueden no tener una referencia de Git. Para obtener más información acerca de la API de REST, consulta la sección "Despliegues".
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
deployment | n/a | Confirmación de implementación | Rama o etiqueta que se debe implementar (vacío si está confirmada) |
Por ejemplo, puedes ejecutar un flujo de trabajo cuando se produzca el evento implementación
.
on:
deployment
deployment_status
Ejecuta tu flujo de trabajo en cualquier momento en que un tercero proporcione un estado de implementación, que activa un evento de deployment_status
. Las implementaciones creadas con SHA de confirmación pueden no tener una referencia de Git. Para obtener más información acerca de la API de REST, consulta la sección "Crear un estado de despliegue".
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
deployment_status | n/a | Confirmación de implementación | Rama o etiqueta que se debe implementar (vacío si está confirmada) |
Por ejemplo, puedes ejecutar un flujo de trabajo cuando se produzca el evento implementación
.
on:
deployment_status
Nota: Cuando el estado de un estatus de despliegue se configure como inactive
, no se creará un evento de webhook.
bifurcación
Ejecuta tu flujo de trabajo en cualquier momento en que alguien bifurque un repositorio, lo que activa el evento de fork
. Para obtener más información sobre la API de REST, consulta la sección "Crear una bifurcación".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
bifurcación | n/a | Última confirmación en la rama predeterminada | Rama por defecto |
Por ejemplo, puedes ejecutar un flujo de trabajo cuando se produzca el evento fork
.
on:
fork
gollum
Ejecuta tu flujo de trabajo cuando alguien crea o actualiza una página Wiki, lo que activa el evento gollum
.
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
gollum | n/a | Última confirmación en la rama predeterminada | Rama por defecto |
Por ejemplo, puedes ejecutar un flujo de trabajo cuando se produzca el evento gollum
.
on:
gollum
comentario_propuesta
Ejecuta tu flujo de trabajo en cualquier momento en que se produzca el evento issue_comment
. Más de un tipo de actividad desencadena este evento. Para obtener más información acerca de la API de REST, consulta la sección "comentarios de una propuesta".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
comentario_propuesta | - created - edited - deleted | Última confirmación en la rama predeterminada | Rama por defecto |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando una propuesta ha sido created
(creada) o deleted
(eliminada).
on:
issue_comment:
types: [created, deleted]
El evento issue_comment
ocurre para los comentarios tanto en propuestas como en solicitudes de cambios. Para determinar si el evento issue_comment
se activó desde una propuesta o solicitud de cambios, puedes verificar la carga útil del evento para la propiedad issue.pull_request
y utilizarla como condición para saltarse un job.
Por ejemplo, puedes elegir ejecutar el job pr_commented
cuando ocurren los comentarios de evento en una solicitud de cambios, y el job issue_commented
cuando ocurran eventos de comentarios en una propuesta.
on: issue_comment
jobs:
pr_commented:
# This job only runs for pull request comments
name: PR comment
if: ${{ github.event.issue.pull_request }}
runs-on: ubuntu-latest
steps:
- run: |
echo "Comment on PR #${{ github.event.issue.number }}"
issue_commented:
# This job only runs for issue comments
name: Issue comment
if: ${{ !github.event.issue.pull_request }}
runs-on: ubuntu-latest
steps:
- run: |
echo "Comment on issue #${{ github.event.issue.number }}"
propuestas
Ejecuta tu flujo de trabajo en cualquier momento en que se produzca el evento issues
. Más de un tipo de actividad desencadena este evento. Para obtener información acerca de la API de REST, consulta la sección "propuestas".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
propuestas | - opened - edited - deleted - transferred - pinned - unpinned - closed - reopened - assigned - unassigned - labeled - unlabeled - locked - unlocked - milestoned - demilestoned | Última confirmación en la rama predeterminada | Rama por defecto |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando una propuesta ha sido opened
(abierta), edited
(editada), o milestoned
(marcada como hito).
on:
issues:
types: [opened, edited, milestoned]
etiqueta
Ejecuta tu flujo de trabajo en cualquier momento en que se produzca el evento de etiquetado
. Más de un tipo de actividad desencadena este evento. Para obtener más información sobre la API de REST, consulta la sección "Etiquetas".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
etiqueta | - created - edited - deleted | Última confirmación en la rama predeterminada | Rama por defecto |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando un miembro ha sido creado
o eliminado
.
on:
label:
types: [created, deleted]
hito
Ejecuta tu flujo de trabajo en cualquier momento en que se produzca el evento milestone
. Más de un tipo de actividad desencadena este evento. Para obtener más información sobre la API de REST, consulta la sección "Hitos".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
hito | - created - closed - opened - edited - deleted | Última confirmación en la rama predeterminada | Rama por defecto |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando un hito ha sido abierto
o eliminado
.
on:
milestone:
types: [opened, deleted]
page_build
Ejecuta tu flujo de trabajo en cualquier momento en que alguien suba a una GitHub Enterprise Server Rama habilitada para páginas, que activa el evento page_build
. Para obtener información acerca de la API de REST, consulta la sección "Páginas".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
page_build | n/a | Última confirmación en la rama predeterminada | n/a |
Por ejemplo, puedes ejecutar un flujo de trabajo cuando se produzca el evento page_build
.
on:
page_build
project
Ejecuta tu flujo de trabajo en cualquier momento en que se produzca el evento project
. Más de un tipo de actividad desencadena este evento. Para obtener más información sobre la API de REST, consulta la sección "Proyectos".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
project | - created - updated - closed - reopened - edited - deleted | Última confirmación en la rama predeterminada | Rama por defecto |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando un proyecto ha sido creado
o eliminado
.
on:
project:
types: [created, deleted]
project_card
Ejecuta tu flujo de trabajo en cualquier momento en que se produzca el evento project_card
. Más de un tipo de actividad desencadena este evento. Para obtener más información sobre la API de REST, consulta la sección "Tarjetas de proyecto".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
project_card | - created - moved - converted to an issue- edited - deleted | Última confirmación en la rama predeterminada | Rama por defecto |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando un proyecto ha sido abierto
o eliminado
.
on:
project_card:
types: [created, deleted]
project_column
Ejecuta tu flujo de trabajo en cualquier momento en que se produzca el evento project_column
. Más de un tipo de actividad desencadena este evento. Para obtener más información sobre la API de REST, consulta la sección "Columnas de proyecto".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
project_column | - created - updated - moved - deleted | Última confirmación en la rama predeterminada | Rama por defecto |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando una columna de proyecto ha sido created
o deleted
.
on:
project_column:
types: [created, deleted]
public
Ejecuta tu flujo de trabajo en cualquier momento en que alguien haga público un repositorio privado, lo que activa el evento public
. Para obtener más información acerca de la API de REST, consulta la sección "Editar repositorios".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
public | n/a | Última confirmación en la rama predeterminada | Rama por defecto |
Por ejemplo, puedes ejecutar un flujo de trabajo cuando se produzca el evento public
.
on:
public
solicitud_extracción
Ejecuta tu flujo de trabajo en cualquier momento en que se produzca el evento de pull_request
. Más de un tipo de actividad desencadena este evento. Para obtener más información sobre la API de REST, consulta la sección "Solicitudes de cambios".
Notas:
- Predeterminadamente, un flujo de trabajo solo se ejecuta cuando el tipo de actividad de una
pull_request
esopened
,synchronize
, oreopened
. Para activar los flujos de trabajo para más tipos de actividades, usa la palabra clavetipos
. - Los flujos de trabajo no se ejecutarán en la actividad de la
pull_request
si esta tiene un conflicto de fusión. El conflicto de fusión se debe resolver primero.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
solicitud_extracción | - assigned - unassigned - labeled - unlabeled - opened - edited - closed - reopened - synchronize - converted_to_draft - ready_for_review - locked - unlocked - review_requested - review_request_removed | Última confirmación de fusión en la rama GITHUB_REF | Rama de fusión de PR refs/pull/:prNumber/merge |
Puedes extender o limitar los tipos de actividad por defecto usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando una solicitud de extracción ha sido assigned
(asignada), opened
, syncronize
o reopened
.
on:
pull_request:
types: [assigned, opened, synchronize, reopened]
Eventos de solicitud de extracción para repositorios bifurcados
Nota: los flujos de trabajo no se ejecutan en repositorios base privados cuando abres una solicitud de extracción desde un repositorio bifurcado.
Cuando creas una solicitud de extracción desde un repositorio bifurcado al repositorio base, GitHub envía el evento pull_request
al repositorio base y no se producen eventos de solicitud de extracción en el repositorio bifurcado.
Los flujos de trabajo no se ejecutan en repositorios bifurcados por defecto. Debes habilitar las Acciones de GitHub en la pestaña Actions (Acciones) del repositorio bifurcado.
Con la excepción de GITHUB_TOKEN
, los secretos no se pasan al ejecutador cuando un flujo de trabajo se dispara desde un repositorio bifurcado. Los permisos para el GITHUB_TOKEN
en los repositorios bifurcados son de solo lectura. Para obtener más información, consulta "Autenticar con el GITHUB_TOKEN".
Nota: Los flujos de trabajo que se activan mediante las solicitudes de cambios del Dependabot se tratan como si fueran de un repositorio bifurcado y también están sujetas a estas restricciones.
revisión_solicitud de extracción
Ejecuta tu flujo de trabajo en cualquier momento en que se produzca el evento pull_request_review
. Más de un tipo de actividad desencadena este evento. Para obtener más información sobre la API de REST, consulta la sección "Revisiones de solicitudes de extracción".
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
revisión_solicitud de extracción | - submitted - edited - dismissed | Última confirmación de fusión en la rama GITHUB_REF | Rama de fusión de PR refs/pull/:prNumber/merge |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando una revisión de solicitud de extracción ha sido edited
(editada) o dismissed
(descartada).
on:
pull_request_review:
types: [edited, dismissed]
Eventos de solicitud de extracción para repositorios bifurcados
Nota: los flujos de trabajo no se ejecutan en repositorios base privados cuando abres una solicitud de extracción desde un repositorio bifurcado.
Cuando creas una solicitud de extracción desde un repositorio bifurcado al repositorio base, GitHub envía el evento pull_request
al repositorio base y no se producen eventos de solicitud de extracción en el repositorio bifurcado.
Los flujos de trabajo no se ejecutan en repositorios bifurcados por defecto. Debes habilitar las Acciones de GitHub en la pestaña Actions (Acciones) del repositorio bifurcado.
Con la excepción de GITHUB_TOKEN
, los secretos no se pasan al ejecutador cuando un flujo de trabajo se dispara desde un repositorio bifurcado. Los permisos para el GITHUB_TOKEN
en los repositorios bifurcados son de solo lectura. Para obtener más información, consulta "Autenticar con el GITHUB_TOKEN".
Nota: Los flujos de trabajo que se activan mediante las solicitudes de cambios del Dependabot se tratan como si fueran de un repositorio bifurcado y también están sujetas a estas restricciones.
comentarios _revisiones_solicitudes de extracción
Ejecuta tu flujo de trabajo en cualquier momento en que se modifique una diferencia unificada de solicitud de extracción, que activa el evento pull_request_review_comment
. Más de un tipo de actividad desencadena este evento. Para obtener más información sobre la API de REST, consulta la sección Revisar comentarios.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
comentarios _revisiones_solicitudes de extracción | - created - edited - deleted | Última confirmación de fusión en la rama GITHUB_REF | Rama de fusión de PR refs/pull/:prNumber/merge |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando un comentario de revisión de solicitud de extracción ha sido created
o deleted
.
on:
pull_request_review_comment:
types: [created, deleted]
Eventos de solicitud de extracción para repositorios bifurcados
Nota: los flujos de trabajo no se ejecutan en repositorios base privados cuando abres una solicitud de extracción desde un repositorio bifurcado.
Cuando creas una solicitud de extracción desde un repositorio bifurcado al repositorio base, GitHub envía el evento pull_request
al repositorio base y no se producen eventos de solicitud de extracción en el repositorio bifurcado.
Los flujos de trabajo no se ejecutan en repositorios bifurcados por defecto. Debes habilitar las Acciones de GitHub en la pestaña Actions (Acciones) del repositorio bifurcado.
Con la excepción de GITHUB_TOKEN
, los secretos no se pasan al ejecutador cuando un flujo de trabajo se dispara desde un repositorio bifurcado. Los permisos para el GITHUB_TOKEN
en los repositorios bifurcados son de solo lectura. Para obtener más información, consulta "Autenticar con el GITHUB_TOKEN".
Nota: Los flujos de trabajo que se activan mediante las solicitudes de cambios del Dependabot se tratan como si fueran de un repositorio bifurcado y también están sujetas a estas restricciones.
subir
Nota: La carga disponible del webhook para las acciones de GitHub no incluye los atributos added
, removed
y modified
en el objeto commit
. Puedes recuperar el objeto de confirmación completo usando la API REST. Para obtener más información, consulta la sección "Obtener una confirmación".
Ejecuta tu flujo de trabajo cuando alguien sube a una rama de repositorio, lo que activa el evento push
.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
subir | n/a | Confirmación subida, a menos que se elimine una rama (cuando se trata de la rama por defecto) | Referencia actualizada |
Por ejemplo, puedes ejecutar un flujo de trabajo cuando se produzca el evento push
.
on:
push
registry_package
Ejecuta tu flujo de trabajo en cualquier momento en que un paquete publicado
o actualizado
. Para obtener más información, consulta "Administrar paquetes con Registro del paquete de GitHub."
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
registry_package | - publicado - actualizado | Confirmación del paquete publicado | Rama o etiqueta del paquete publicado |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando un paquete ha sido publicado
.
on:
registry_package:
types: [published]
lanzamiento
Nota: El evento release
no se activará para los lanzamientos en borrador.
Ejecuta tu flujo de trabajo en cualquier momento en que se produzca el evento release
. Más de un tipo de actividad desencadena este evento. Para obtener más información sobre la API de REST, consulta la sección "Lanzamientos".
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
lanzamiento | - published - unpublished - created - edited - deleted - prereleased - released | Última confirmación en el lanzamiento etiquetado | Etiqueta de lanzamiento |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando un lanzamiento ha sido publish
.
on:
release:
types: [published]
Nota: El tipo prereleased
no se activará para los pre-lanzamientos publicados desde los borradores de lanzamientos, pero el tipo published
sí lo hará. Si quieres que se ejecute un flujo de trabajo cuando se publiquen los lanzamientos estables y los pre-lanzamientos, mejor suscríbete a published
en vez de a released
y prereleased
.
estado
Ejecuta tu flujo de trabajo en cualquier momento en que cambia el estado de una confirmación de Git, lo que activa el evento status
. Para obtener más información acerca de la API de REST, consulta la sección "Estados".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
estado | n/a | Última confirmación en la rama predeterminada | n/a |
Por ejemplo, puedes ejecutar un flujo de trabajo cuando se produzca el evento status
.
on:
status
observar
Ejecuta tu flujo de trabajo en cualquier momento en que se produzca el evento watch
. Más de un tipo de actividad desencadena este evento. Para obtener más información acerca de la API de REST, consulta la sección "Marcar con una estrella".
Nota: Este evento solo activará una ejecución de flujo de trabajo si el archivo de flujo de trabajo está en la rama predeterminada.
Carga del evento Webhook | Tipos de actividad | GITHUB_SHA | GITHUB_REF |
---|---|---|---|
observar | - comenzado | Última confirmación en la rama predeterminada | Rama por defecto |
Por defecto, todos los tipos de actividad desencadenan un flujo de trabajo a ejecutarse. Puedes limitar tus ejecuciones de flujo de trabajo a tipos de actividad específicos usando la palabra clave types
. Para obtener más información, consulta "Sintaxis del flujo de trabajo para GitHub Actions".
Por ejemplo, puedes ejecutar un flujo de trabajo cuando alguien coloca una estrella en un repositorio, que es el tipo de actividad started
que activa el evento Ver.
on:
watch:
types: [started]
Para ejecutar un job de un flujo de trabajo condicionalmente con base en el resultado de la ejecución de flujo de trabajo anterior, puedes utilizar los condicionales jobs.<job_id>.if
o jobs.<job_id>.steps[*].if
con la conclusion
de la ejecución previa. Por ejemplo:
on:
workflow_run:
workflows: ["Build"]
types: [completed]
jobs:
on-success:
runs-on: ubuntu-latest
if: ${{ github.event.workflow_run.conclusion == 'success' }}
steps:
...
on-failure:
runs-on: ubuntu-latest
if: ${{ github.event.workflow_run.conclusion == 'failure' }}
steps:
...
Activar nuevos flujos de trabajo mediante un token de acceso personal
Cuando utilizas el GITHUB_TOKEN
del repositorio para realizar tareas por parte de la app de GitHub Actions, los eventos que GITHUB_TOKEN
desencadena no crearán una ejecución de flujo de trabajo. Esto impide que crees ejecuciones de flujo de trabajo recursivas por accidente. Por ejemplo, si un flujo de trabajo sube código utilizando el GITHUB_TOKEN
del repositorio, no se ejecutará un nuevo flujo de trabajo aún si el repositorio contiene alguno configurado para ejecutarse cuando ocurran eventos de subida
de información. Para obtener más información, consulta "Autenticar con el GITHUB_TOKEN".
Si deseas activar un flujo de trabajo desde una ejecución de flujo de trabajo, puedes desencadenar el evento mediante un token de acceso personal. Necesitaras crear un token de acceso personal y almacenarlo como un secreto. Para minimizar tus costos de uso de GitHub Actions, asegúrate de no crear ejecuciones de flujo de trabajo recurrentes o involuntarias. Para obtener más información sobre almacenr un token de acceso personal como secreto, consulta la sección "Crear y almacenar secretos cifrados".