Skip to main content

Enterprise Server 3.20 est actuellement disponible en tant que version candidate.

Transmission d’informations entre les travaux

Vous pouvez définir des sorties pour transmettre des informations d’un travail à un autre.

Définition et utilisation des sorties de travail

  1. Ouvrez le fichier de flux de travail contenant le travail à partir duquel vous souhaitez obtenir des sorties.

  2. Utilisez la syntaxe jobs.<job_id>.outputs pour définir les sorties du travail. Par exemple, le travail suivant définit les sorties output1 et output2 , qui sont mappées aux résultats de step1 et de step2 respectivement :

    jobs:
      job1:
        runs-on: ubuntu-latest
        outputs:
          output1: ${{ steps.step1.outputs.test }}
          output2: ${{ steps.step2.outputs.test }}
        steps:
          - id: step1
            run: echo "test=hello" >> "$GITHUB_OUTPUT"
          - id: step2
            run: echo "test=world" >> "$GITHUB_OUTPUT"
    
  3. Dans un travail distinct où vous souhaitez accéder à ces sorties, utilisez la syntaxe jobs.<job_id>.needs pour la rendre dépendante du travail d’origine. Par exemple, le travail suivant vérifie que job1 est terminé avant d’exécuter :

    jobs:
      # Assume job1 is defined as above
      job2:
        runs-on: ubuntu-latest
        needs: job1
    
  4. Pour accéder aux sorties du travail dépendant, utilisez la syntaxe needs.<job_id>.outputs.<output_name>. Par exemple, le travail suivant accède aux sorties output1 et output2 définies dans job1 :

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

Étapes suivantes

Pour en savoir plus sur les résultats des tâches et du contexte needs, consultez les sections suivantes de Syntaxe de flux de travail pour GitHub Actions :