Примечание.
GitHubразмещенные в данный момент средства выполнения не поддерживаются в GitHub Enterprise Server. Дополнительные сведения о планируемой поддержке в будущем см. в GitHub public roadmap.
Общие сведения о командах рабочего процесса
GitHub Actions могут связываться с компьютером выполнения, чтобы задавать переменные среды, выводить значения, используемые другими действиями, добавлять сообщения отладки в журналы выходных данных и выполнять другие задачи.
Большинство команд рабочего процесса используют команду echo
в определенном формате, остальные вызываются путем записи в файл. Дополнительные сведения см. в разделе Файлы среды.
Пример команды рабочего процесса
echo "::workflow-command parameter1={data},parameter2={data}::{command value}"
echo "::workflow-command parameter1={data},parameter2={data}::{command value}"
Write-Output "::workflow-command parameter1={data},parameter2={data}::{command value}"
Write-Output "::workflow-command parameter1={data},parameter2={data}::{command value}"
Примечание.
Команды рабочего процесса и имена параметров не учитывает регистр.
Предупреждение
Если вы используете командную строку, не указывайте двойные кавычки ("
) при использовании команд рабочего процесса.
Использование команд рабочего процесса для доступа к возможностям набора средств
В actions/toolkit содержится ряд функций, которые можно выполнять как команды рабочего процесса. Используйте синтаксис ::
, чтобы выполнить команды рабочего процесса в файле YAML. Затем они отправляются в средство выполнения через stdout
.
Например, вместо использования кода для создания заметки об ошибке, как показано ниже:
core.error('Missing semicolon', {file: 'app.js', startLine: 1})
core.error('Missing semicolon', {file: 'app.js', startLine: 1})
Пример. Создание заметки для ошибки
Чтобы создать ту же заметку об ошибках, можно использовать error
команду в рабочем процессе:
- name: Create annotation for build error run: echo "::error file=app.js,line=1::Missing semicolon"
- name: Create annotation for build error
run: echo "::error file=app.js,line=1::Missing semicolon"
- name: Create annotation for build error run: Write-Output "::error file=app.js,line=1::Missing semicolon"
- name: Create annotation for build error
run: Write-Output "::error file=app.js,line=1::Missing semicolon"
В следующей таблице перечислены функции набора средств, которые доступны в рабочем процессе:
Функция набора средств | Аналогичная команда рабочего процесса |
---|---|
core.addPath | Доступно с помощью файла среды GITHUB_PATH |
core.debug | debug |
core.notice | notice |
core.error | error |
core.endGroup | endgroup |
core.exportVariable | Доступно с помощью файла среды GITHUB_ENV |
core.getInput | Доступно с помощью переменной среды INPUT_{NAME} |
core.getState | Доступно с помощью переменной среды STATE_{NAME} |
core.isDebug | Доступно с помощью переменной среды RUNNER_DEBUG |
core.summary | Доступно с помощью файла среды GITHUB_STEP_SUMMARY |
core.saveState | Доступно с помощью файла среды GITHUB_STATE |
core.setCommandEcho | echo |
core.setFailed | Используется в качестве ярлыка для ::error и exit 1 |
core.setOutput | Доступно с помощью файла среды GITHUB_OUTPUT |
core.setSecret | add-mask |
core.startGroup | group |
core.warning | warning |
Задание сообщения отладки
Записывает сообщение отладки в журнал. Чтобы просмотреть в журнале сообщения отладки, заданные этой командой, необходимо создать секрет под названием ACTIONS_STEP_DEBUG
со значением true
. Дополнительные сведения см. в разделе Включение ведения журналов отладки.
::debug::{message}
::debug::{message}
Пример: задание сообщения отладки
echo "::debug::Set the Octocat variable"
echo "::debug::Set the Octocat variable"
Write-Output "::debug::Set the Octocat variable"
Write-Output "::debug::Set the Octocat variable"
Задание сообщения уведомления
Создает сообщение уведомления и записывает его в журнал. Это сообщение создаст заметку, которая может связать его с определенным файлом в репозитории. При необходимости сообщение может указать позицию в файле.
::notice file={name},line={line},endLine={endLine},title={title}::{message}
::notice file={name},line={line},endLine={endLine},title={title}::{message}
Параметр | Значение | Обязательное поле | По умолчанию. |
---|---|---|---|
title | Настраиваемый заголовок | No | нет |
file | Имя файла | No | .github |
col | Номер столбца, начиная с 1 | No | нет |
endColumn | Номер конечного столбца | No | нет |
line | Номер строки, начиная с 1 | No | 1 |
endLine | Номер конечной строки | No | 1 |