Skip to main content

Pasar información entre trabajos

Puede definir salidas para pasar información de un trabajo a otro.

Definición y uso de salidas de trabajo

  1. Abre el archivo de flujo de trabajo que contiene el trabajo del que quieras obtener salidas.

  2. Usa la sintaxis jobs.<job_id>.outputs para definir las salidas del trabajo. Por ejemplo, el siguiente trabajo define las salidas output1 y output2, que se asignan a los resultados de step1 y step2 respectivamente:

    jobs:
      job1:
        runs-on: ubuntu-latest
        outputs:
          output1: $
          output2: $
        steps:
          - id: step1
            run: echo "test=hello" >> "$GITHUB_OUTPUT"
          - id: step2
            run: echo "test=world" >> "$GITHUB_OUTPUT"
    
  3. En un trabajo independiente en el que quieras acceder a esas salidas, usa la sintaxis jobs.<job_id>.needs para que dependa del trabajo original. Por ejemplo, el trabajo siguiente comprueba que job1 se ha completado antes de ejecutarse:

    jobs:
      # Assume job1 is defined as above
      job2:
        runs-on: ubuntu-latest
        needs: job1
    
  4. Para acceder a las salidas del trabajo dependiente, usa la sintaxis needs.<job_id>.outputs.<output_name>. Por ejemplo, el siguiente trabajo accede a las salidas output1 y output2 definidas en job1:

    jobs:
      # Assume job1 is defined as above
      job2:
        runs-on: ubuntu-latest
        needs: job1
        steps:
          - env:
              OUTPUT1: $
              OUTPUT2: $
            run: echo "$OUTPUT1 $OUTPUT2"
    

Pasos siguientes

Para más información sobre las salidas de trabajo y el contexto de needs, consulta las secciones siguientes de Sintaxis del flujo de trabajo para GitHub Actions: