Skip to main content

Utilizar ambientes para el despliegue

Especifique un entorno de implementación en el flujo de trabajo.

Nota: Actualmente los ejecutores hospedados en GitHub no se admiten en GitHub Enterprise Server. Puede ver más información sobre la compatibilidad futura planeada en GitHub public roadmap.

Acerca de los ambientes

Los entornos se usan para describir un destino de implementación general como production, staging o development. Cuando se despliega un flujo de trabajo de GitHub Actions en un ambiente, dicho ambiente se desplegará en la página principal del repositorio. Puede usar entornos para requerir aprobación para que un trabajo continúe, restringir qué ramas pueden desencadenar un flujo de trabajo, controlar las implementaciones con reglas de protección de implementación personalizadas o limitar el acceso a los secretos. Para más información sobre la creación de entornos, consulta "Administrar entornos para la implementación".

Cad job en un flujo de trabajo puede referenciar un solo ambiente. Cualquier regla de protección que se configure para el ambiente debe pasar antes de que un job que referencia al ambiente se envíe a un ejecutor. El job puede acceder a los secretos de ambiente únicamente después de que se envía a un ejecutor.

Cuando un flujo de trabajo referencia un ambiente, éste aparecerá en los despliegues del repositorio. Para obtener más información sobre cómo ver las implementaciones actuales y anteriores, consulta "Visualización del historial de implementación".

Uso de un entorno en un flujo de trabajo

Puedes especificar un ambiente para cada job de tu flujo de trabajo. Para ello, agregue una clave jobs.<job_id>.environment seguida del nombre del entorno.

Por ejemplo, en este flujo de trabajo se utilizará un entorno llamado production.

name: Deployment

on:
  push:
    branches:
      - main

jobs:
  deployment:
    runs-on: ubuntu-latest
    environment: production
    steps:
      - name: deploy
        # ...deployment-specific steps

Cuando se ejecute el flujo de trabajo anterior, el trabajo deployment estará sujeto a las reglas configuradas para el entorno production. Por ejemplo, si el ambiente requiere revisores, el job se pausará hasta que uno de ellos lo apruebe.

También puedes especificar una URL para el ambiente. La URL especificada aparecerá en la página de implementaciones del repositorio (a la que se accede al hacer clic en Environments (Entornos) en la página principal del repositorio) y en el gráfico de visualización de la ejecución del flujo de trabajo. Si una solicitud de incorporación de cambios ha desencadenado el flujo de trabajo, la URL también se muestra como un botón View deployment (Ver implementación) en la escala de tiempo de la solicitud de incorporación de cambios.

name: Deployment

on:
  push:
    branches:
      - main

jobs:
  deployment:
    runs-on: ubuntu-latest
    environment: 
      name: production
      url: https://github.com
    steps:
      - name: deploy
        # ...deployment-specific steps