Примечание. В GitHub Enterprise Server в настоящее время не поддерживаются средства выполнения тестов, размещенные в GitHub. Дополнительные сведения о планируемой поддержке в будущем см. в GitHub public roadmap.
Обзор
Можно использовать jobs.<job_id>.outputs для создания map выходных данных для задания. Выходные данные задания доступны для всех подчиненных заданий, которые зависят от этого задания. Дополнительные сведения об определении зависимостей заданий см. в разделе jobs.<job_id>.needs.
Выходные данные представляют собой строки Юникода длиной не более 1 МБ. Общий объем выходных данных в выполнении рабочего процесса не может превышать 50 МБ.
Выходные данные задания, содержащие выражения, вычисляются в средстве выполнения в конце каждого задания. Выходные данные, содержащие секреты, редактируются в средстве выполнения и не отправляются в GitHub Actions.
Чтобы применять выходные данные задания в зависимом задании, можно использовать контекст needs. Дополнительные сведения см. в разделе Контексты.
Примечание. $GITHUB_OUTPUT Общий доступ ко всем шагам в задании. Если вы используете одно и то же имя выходных данных в нескольких шагах, последний шаг для записи в выходные данные переопределит значение. Если задание использует матрицу и записывает $GITHUB_OUTPUTв нее, содержимое будет перезаписан для каждой комбинации матрицы. Контекст можно использовать matrix для создания уникальных выходных имен для каждой конфигурации задания. Дополнительные сведения см. в разделе Контексты.
Пример: определение выходных данных для задания
jobs:
  job1:
    runs-on: ubuntu-latest
    # Map a step output to a job output
    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"
  job2:
    runs-on: ubuntu-latest
    needs: job1
    steps:
      - env:
          OUTPUT1: ${{needs.job1.outputs.output1}}
          OUTPUT2: ${{needs.job1.outputs.output2}}
        run: echo "$OUTPUT1 $OUTPUT2"