Просмотр действий Marketplace в редакторе рабочих процессов
Вы искать находить и просматривать действия непосредственно в редакторе рабочих процессов репозитория. На боковой панели можно найти конкретное действие, просмотреть рекомендуемые действия и рекомендуемые категории. Вы также можете просмотреть количество звездочек, полученных действием от сообщества GitHub.
-
В репозитории перейдите к файлу рабочего процесса, который необходимо изменить.
-
В правом верхнем углу представления файла, чтобы открыть редактор рабочего процесса, щелкните .
 -
Справа от редактора используйте боковую панель GitHub Marketplace для просмотра действий. Действия с значком указывают GitHub подтвердили создателя действия как партнерскую организацию.

Добавление действия в рабочий процесс
Вы можете добавить действие в рабочий процесс, сославшись на действие в файле рабочего процесса. Действия, используемые в рабочем процессе, можно определять в следующих местах:
- Тот же репозиторий, что и файл рабочего процесса
- в любом общедоступном репозитории;
- Опубликованное изображение контейнера Docker на Docker Hub
Действия, на которые ссылаются ваши рабочие процессы GitHub Actions, можно просмотреть в виде зависимостей в графе зависимостей репозитория, содержащего рабочие процессы. Дополнительные сведения см. в разделе Сведения о графе зависимостей.
Примечание.
Для повышения безопасности GitHub Actions не поддерживает перенаправления для действий или повторно используемых рабочих процессов. Это означает, что при изменении владельца, имени репозитория действия или имени действия все рабочие процессы, использующие это действие с предыдущим именем, завершаются ошибкой.
Добавление действия из GitHub Marketplace
На странице со списком действий приводятся версия действия и синтаксис рабочего процесса, необходимый для использования действия. Чтобы обеспечить стабильность рабочего процесса даже при изменении действия, можно указывать версию действия, которую требуется использовать, с помощью номера тега GIT или Docker в файле рабочего процесса.
-
Перейдите к действию, которое необходимо использовать в рабочем процессе.
-
Щелкните, чтобы просмотреть полный список marketplace для действия.
-
В разделе "Установка" щелкните (Копировать в буфер обмена), чтобы скопировать синтаксис рабочего процесса.
 -
Вставьте синтаксис в качестве нового шага рабочего процесса. Дополнительные сведения см. в разделе Синтаксис рабочего процесса для GitHub Actions.
-
Если действие требует предоставления входных данных, задайте их в рабочем процессе. Сведения о входных данных, которые может потребоваться действие, см. в разделе Использование стандартных блоков в рабочем процессе.
Вы также можете включить Dependabot version updates для действий, добавленных в рабочий процесс. Дополнительные сведения см. в разделе Поддержка актуальности действий с помощью Dependabot.
Добавление действия из того же репозитория
Если действие определено в том же репозитории, в котором оно используется в файле рабочего процесса, можно сослаться на действие с помощью синтаксиса {owner}/{repo}@{ref} или ./path/to/dir в файле рабочего процесса.
Пример структуры файла репозитория:
|-- hello-world (repository)
| |__ .github
| └── workflows
| └── my-first-workflow.yml
| └── actions
| |__ hello-world-action
| └── action.yml
Путь является относительным (./) к рабочему каталогу по умолчанию (github.workspace, $GITHUB_WORKSPACE). Если действие извлекает репозиторий в расположение, отличное от рабочего процесса, необходимо обновить относительный путь, используемый для локальных действий.
Пример файла рабочего процесса:
jobs:
my_first_job:
runs-on: ubuntu-latest
steps:
# This step checks out a copy of your repository.
- name: My first step - check out repository
uses: actions/checkout@v6
# This step references the directory that contains the action.
- name: Use local hello-world-action
uses: ./.github/actions/hello-world-action
Файл action.yml применяется для предоставления метаданных для действия. Узнайте о содержимом этого файла в Справочник по синтаксису метаданных.
Добавление действия из другого репозитория
Если действие определено не в том же репозитории, где находится файл рабочего процесса, сослаться на действие можно с помощью синтаксиса {owner}/{repo}@{ref} в файле рабочего процесса.
Действие должно храниться в общедоступный репозиторий.
jobs:
my_first_job:
steps:
- name: My first step
uses: actions/setup-node@v4
Ссылка на контейнер на Docker Hub
Если действие определено в опубликованном изображении контейнера Docker на Docker Hub, вы должны ссылаться на действие синтаксисом docker://{image}:{tag} в вашем рабочем процессе. Для защиты вашего кода и данных мы настоятельно рекомендуем проверить целостность образа контейнера Docker из Docker Hub перед использованием его в вашем рабочем процессе.
jobs:
my_first_job:
steps:
- name: My first step
uses: docker://alpine:3.8
Примеры действий Docker см. в разделе Docker-image.yml рабочий процесс и Создание действия контейнера Docker.
Защита безопасности для использования действий в рабочих процессах
GitHub предоставляет функции безопасности, которые можно использовать для повышения безопасности рабочих процессов. Встроенные функции %% данных variables.product.prodname_dotcom %}позволяют получать уведомления об уязвимостях в используемых действиях или автоматизировать процесс поддержания действий в рабочих процессах. Дополнительные сведения см. в разделе Справочник по безопасному использованию.
Применение управления выпусками для пользовательских действий
Создатели действия сообщества могут использовать теги, ветви или значения SHA для управления выпусками действия. Как и в случае с любой зависимостью, следует указать версию действия, которую необходимо использовать, в зависимости от того, насколько приемлемо автоматическое принятие изменений действия.
Версия действия указывается в файле рабочего процесса. Узнать, какой подход к управлению выпусками применяется и какой тег, ветвь или значение SHA следует использовать, можно в документации по действию.
Примечание.
Рекомендуется использовать значение SHA при использовании сторонних действий. Однако важно отметить, что Dependabot создает только Dependabot alerts для уязвимых данных GitHub Actions, использующих семантические управление версиями. Дополнительные сведения см. в разделе [AUTOTITLE и Справочник по безопасному использованию](/code-security/dependabot/dependabot-alerts/about-dependabot-alerts).
Использование тегов
Теги помогают решить, когда следует переключаться между основными и дополнительными версиями, но они являются временными и могут перемещаться или удаляться ответственным лицом. В этом примере показано, как нацелиться на действие, помеченное как v1.0.1:
steps:
- uses: actions/javascript-action@v1.0.1
Использование значений SHA
Если требуется более надежное управление версиями, следует использовать значение SHA, связанное с версией действия. Значения SHA являются неизменяемыми и, следовательно, более надежными, чем теги или ветви. Однако этот подход означает, что вы не будете автоматически получать обновления для действия, включая важные исправления ошибок и обновления системы безопасности. Необходимо использовать полное значение SHA фиксации, а не сокращенное. При выборе SHA необходимо убедиться, что он находится в репозитории действия, а не вилке репозитория. Этот пример предназначен для SHA действия:
steps:
- uses: actions/javascript-action@a824008085750b8e136effc585c3cd6082bd575f
Использование ветвей
Указание целевой ветви для действия означает, что всегда будет использоваться версия в этой ветви. Этот подход может вызвать проблемы, если обновление ветви включает критические изменения. В этом примере используется ветвь с именем @main:
steps:
- uses: actions/javascript-action@main
Дополнительные сведения см. в разделе Сведения о настраиваемых действиях.
Использование входных и выходных данных с действием
Действие часто принимает входные данные или требует их и создает выходные данные, которые можно использовать. Например, действие может требовать указать путь к файлу, имя метки или другие данные, которые будут использоваться в процессе обработки действия.
Чтобы просмотреть входные и выходные данные действия, проверьте action.yml корневой каталог репозитория.
В этом примере файла action.yml ключевое слово inputs определяет обязательные входные данные file-path и включает значение по умолчанию, которое будет использоваться, если значение не указано. Ключевое слово outputs определяет выходные данные results-file, то есть файл с результатами.
name: "Example"
description: "Receives file and generates output"
inputs:
file-path: # id of input
description: "Path to test script"
required: true
default: "test-file.js"
outputs:
results-file: # id of output
description: "Path to results file"