Skip to main content

Passando informações entre trabalhos

Você pode definir saídas para passar informações de um trabalho para outro.

Como definir e usar saídas de trabalho

  1. Abra o arquivo de fluxo de trabalho que contém o trabalho do qual você deseja obter saídas.

  2. Use a sintaxe jobs.<job_id>.outputs para definir as saídas do trabalho. Por exemplo, o trabalho a seguir define as saídas output2 e output1, que são mapeadas para os resultados de step1 e 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. Em um trabalho separado em que você deseja acessar essas saídas, use a sintaxe jobs.<job_id>.needs para criar uma dependência do trabalho original. Por exemplo, o seguinte trabalho verifica se job1 está concluído antes da execução:

    jobs:
      # Assume job1 is defined as above
      job2:
        runs-on: ubuntu-latest
        needs: job1
    
  4. Para acessar as saídas no trabalho dependente, use a sintaxe needs.<job_id>.outputs.<output_name>. Por exemplo, o seguinte trabalho acessa as saídas output2 e output1 definidas em job1:

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

Próximas etapas

Para saber mais sobre saídas de trabalho e o contexto de needs, confira as seguintes seções de Sintaxe de fluxo de trabalho para o GitHub Actions: