Definieren und Verwenden von Auftragsausgaben
-
Öffne die Workflowdatei, die den Auftrag enthält, von dem du Ausgaben abrufen möchtest.
-
Verwende die
jobs.<job_id>.outputs-Syntax, um die Ausgaben für den Auftrag zu definieren. Der folgende Auftrag definiert z. B. dieoutput1- undoutput2-Ausgaben, die den Ergebnissen vonstep1undstep2zugeordnet sind: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" -
Verwende in einem separaten Auftrag, in dem du auf diese Ausgaben zugreifen möchtest, die
jobs.<job_id>.needs-Syntax, um sie abhängig vom ursprünglichen Auftrag zu machen. Der folgende Auftrag überprüft beispielsweise, objob1abgeschlossen ist, bevor er ausgeführt wird:jobs: # Assume job1 is defined as above job2: runs-on: ubuntu-latest needs: job1 -
Verwende die
needs.<job_id>.outputs.<output_name>-Syntax, um auf die Ausgaben im abhängigen Auftrag zuzugreifen. Beispielsweise greift der folgende Auftrag auf die injob1definiertenoutput1- undoutput2-Ausgaben zu: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"
Nächste Schritte
Weitere Informationen zu Auftragsausgaben und needs-Kontext findest du in den folgenden Abschnitten Workflowsyntax für GitHub Actions: