Skip to main content

Управление параметрами GitHub Actions для репозитория

In this article

Вы можете отключить или настроить GitHub Actions для определенного репозитория.

Сведения о разрешениях GitHub Actions для вашего репозитория

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

Вы можете включить GitHub Actions для своего репозитория. Если включить GitHub Actions, рабочие процессы могут выполнять действия и повторно используемые рабочие процессы в репозитории и любом другом общедоступном репозитории. Вы можете полностью отключить GitHub Actions для своего репозитория. При отключении GitHub Actions рабочие процессы в репозитории не выполняются.

Кроме того, можно включить GitHub Actions в своем репозитории, но при этом ограничить действия и многократно используемые рабочие процессы, которые могут выполняться рабочим процессом.

Управление разрешениями GitHub Actions для вашего репозитория

Вы можете отключить GitHub Actions для репозитория или задать политику, определяющую, какие действия и многократно используемые рабочие процессы можно будет использовать в репозитории.

Примечание. Вы не сможете управлять этими параметрами, если ваша организация использует политику переопределения или управляется предприятием, которое использует такую политику. Дополнительные сведения см. в разделах Отключение или ограничение использования GitHub Actions для организации или Применение политик для GitHub Actions на предприятии.

  1. На GitHub.com перейдите на главную страницу репозитория. 1. Нажмите Параметры под именем репозитория. Кнопка параметров репозитория 1. На левой боковой панели щелкните и нажмите кнопку Общие.

  2. Выберите желаемый параметр в разделе "Разрешения действий".

    Если выбрать Разрешить действия OWNER и некоторые действия, отличные от OWNER, и многократно используемые рабочие процессы, действия и многократно используемые рабочие процессы вашей организации будут разрешены. При этом будут доступны дополнительные параметры для разрешения других отдельных действий и многократно используемых рабочих процессов. Дополнительные сведения см. в статье Разрешение выполнения действий выбора и многократно используемых рабочих процессов.

    Если разрешить действия и многократно используемые рабочие процессы только из организации, политикой будут блокироваться все попытки доступа к действиям, созданным GitHub. Например, действие actions/checkout будет недоступно.

    Настройка политики действий для этого репозитория

  3. Выберите команду Сохранить.

Разрешение выполнения выбранных действий и повторно используемых рабочих процессов

При выборе Разрешить действия OWNER и некоторые действия, отличные от OWNER, и многократно используемые рабочие процессы разрешаются локальные действия и повторно используемые рабочие процессы. Для разрешения других конкретных действий и повторно используемых рабочих процессов доступны дополнительные параметры:

  • Разрешить действия, созданные с помощью GitHub: все действия, созданные с помощью GitHub, можно разрешить использовать рабочими процессами. Действия, созданные с помощью GitHub, находятся в actions и в организациях github. Дополнительные сведения см. в actions и организациях github.

  • Разрешить действия Marketplace проверенным создателям: Можно разрешить всем действиям GitHub Marketplace, созданным проверенными создателями, для использования рабочими процессами. Когда GitHub проверит автора действия в качестве партнерской организации, рядом с действием в GitHub Marketplace появится значок .

  • Разрешить указанные действия и повторно используемые рабочие процессы: можно ограничить использование действий и повторно используемых рабочих процессов в рабочих процессах определенных организаций и репозиториев.

    Чтобы ограничить доступ к определенным тегам или зафиксировать SHA действия или повторно используемого рабочего процесса, используйте синтаксис для выбора действия или повторно используемого рабочего процесса в рабочих процессах.

    • Для действия используется синтаксис <OWNER>/<REPO>@<TAG OR SHA>. Например, используйте actions/javascript-action@v1.0.1, чтобы выбрать тег или actions/javascript-action@172239021f7ba04fe7327647b213799853a9eb89 для выбора SHA. Дополнительные сведения см. в разделе "Поиск и настройка действий".
    • Для многократно используемого рабочего процесса используется синтаксис <OWNER>/<REPO>/<PATH>/<FILENAME>@<TAG OR SHA>. Например, octo-org/another-repo/.github/workflows/workflow.yml@v1. Дополнительные сведения см. в статье Многократное использование рабочих процессов.

    Подстановочный знак * можно использовать для сопоставления шаблонов. Например, чтобы разрешить все действия и повторно используемые рабочие процессы в организациях, начинающихся на space-org, можно указать space-org*/*. Чтобы разрешить все действия и повторно используемые рабочие процессы в репозиториях, начинающихся на octocat, можно использовать */octocat**@*. Дополнительные сведения об использовании подстановочного знака * см. в разделе «Синтаксис рабочего процесса для GitHub Actions».

    Примечание. Параметр Разрешить указанные действия и повторно используемые рабочие процессы доступен только в общедоступных репозиториях с планами GitHub Free, GitHub Pro, GitHub Free для организаций или GitHub Team.

В этой процедуре показано, как добавить конкретные действия и повторно используемые рабочие процессы в список разрешений.

  1. На GitHub.com перейдите на главную страницу репозитория. 1. Нажмите Параметры под именем репозитория. Кнопка параметров репозитория 1. На левой боковой панели щелкните и нажмите кнопку Общие.

  2. В разделе "Разрешения действий" выберите Разрешить действия OWNER и некоторые действия, отличные от OWNER, и многократно используемые рабочие процессы и добавьте необходимые действия в список.

    Добавить действия и многократно используемые рабочие процессы в список разрешенных

  3. Выберите команду Сохранить.

Управление изменениями из вилок в рабочие процессы в общедоступных репозиториях

Любой пользователь может создать вилку общедоступного репозитория, а затем отправить запрос на вытягивание, предлагающий изменения в рабочих процессах GitHub Actions. Хотя рабочие процессы из вилок не имеют доступа к конфиденциальным данным, таким как секреты, они могут раздражать координаторов, если происходят чрезмерные ненужные изменения.

Чтобы избежать этого, рабочие процессы по запросам на вытягивание к общедоступным репозиториям от некоторых сторонних участников не будут выполняться автоматически и, возможно, сначала потребуется их утверждение. По умолчанию все участники, которые делают вклад впервые, должны получить утверждение для запуска рабочих процессов.

Примечание: Рабочие процессы, активированные событиями pull_request_target, выполняются в контексте базовой ветви. Так как базовая ветвь считается доверенной, рабочие процессы, активированные этими событиями, всегда будут выполняться независимо от параметров утверждения.

Можно настроить это поведение для репозитория, выполнив указанную ниже процедуру. Изменение этого параметра переопределяет набор конфигураций на уровне организации или предприятия.

  1. На GitHub.com перейдите на главную страницу репозитория. 1. Нажмите Параметры под именем репозитория. Кнопка параметров репозитория 1. На левой боковой панели щелкните и нажмите кнопку Общие. 1. В разделе Рабочие процессы создания вилок для запросов на вытягивание от внешних участников совместной работы выберите нужный вариант. Варианты перечислены в порядке от наименее до наиболее строгих.

    Параметр для утверждения рабочих процессов из общедоступных вилок

  2. Нажмите Сохранить, чтобы применить настроенные параметры.

Дополнительные сведения об утверждении рабочих процессов, к которым применяется эта политика, см. в разделе Утверждение запусков рабочих процессов из общедоступных вилок.

Включение рабочих процессов для вилок частных репозиториев

Если вы используете вилки частных репозиториев, можно настроить политики для управления тем, как пользователи могут запускать рабочие процессы при наступлении событий pull_request. Доступные только для частных репозиториев, эти параметры политики можно настроить для организаций или репозиториев.

Если политика отключена для организации, включить ее для репозитория невозможно.

  • Выполнять рабочие процессы из запросов на включение внесенных изменений в вилке репозитория — позволяет пользователям запускать рабочие процессы из запросов на включение внесенных изменений в вилке репозитория с помощью GITHUB_TOKEN с разрешением только для чтения и без доступа к секретам.
  • Отправлять маркеры записи в рабочие процессы из запросов на включение внесенных изменений — позволяет выполнять запросы на включение внесенных изменений в вилке репозитория для использования GITHUB_TOKEN с разрешением на запись.
  • Отправка секретов в рабочие процессы из запросов на вытягивание — делает все секреты доступными для запроса на вытягивание.
  • Требовать утверждение для рабочих процессов запросов на вытягивание вилки . Рабочий процесс, выполняемый в запросах на вытягивание от участников совместной работы без разрешения на запись, потребует утверждения от пользователя с разрешением на запись, прежде чем они будут запущены.

Настройка политики вилок для частного репозитория

  1. На GitHub.com перейдите на главную страницу репозитория. 1. Нажмите Параметры под именем репозитория. Кнопка параметров репозитория 1. На левой боковой панели щелкните и нажмите кнопку Общие. 1. В разделе Рабочие процессы запроса на вытягивание выберите нужные параметры. Например: Включение, отключение или ограничение действий для этого репозитория

  2. Нажмите Сохранить, чтобы применить настроенные параметры.

Настройка разрешений GITHUB_TOKEN для репозитория

Вы можете задать разрешения по умолчанию, предоставляемые параметру GITHUB_TOKEN. Дополнительные сведения о GITHUB_TOKEN см. в разделе Автоматическая проверка подлинности маркера. Вы можете выбрать ограниченный набор разрешений, принимаемые по умолчанию, или применить разрешающие параметры.

Разрешения по умолчанию можно также настроить в параметрах организации. Если репозиторий принадлежит организации и в параметрах организации выбраны более строгие настройки по умолчанию, в параметрах организации выбирается тот же параметр, что и в параметрах репозитория, а разрешающий параметр отключается.

Любой пользователь с доступом на запись в репозиторий может изменить разрешения, предоставленные GITHUB_TOKEN, добавляя или удаляя разрешения на доступ по мере необходимости путем редактирования ключа permissions в файле рабочего процесса. Дополнительные сведения см. на веб-сайте permissions.

Настройка разрешений GITHUB_TOKEN по умолчанию

  1. На GitHub.com перейдите на главную страницу репозитория. 1. Нажмите Параметры под именем репозитория. Кнопка параметров репозитория 1. На левой боковой панели щелкните и нажмите кнопку Общие.

  2. В разделе "Разрешения рабочего процесса" укажите, должен ли GITHUB_TOKEN иметь доступ на чтение и запись ко всем областей или только доступ на чтение к области contents.

     Настройка разрешений GITHUB_TOKEN для этого репозитория

  3. Нажмите Сохранить, чтобы применить настроенные параметры.

Запрет GitHub Actions создавать или утверждать запросы на вытягивание

Вы можете разрешить или запретить рабочим процессам GitHub Actions создание или утверждение запросов на вытягивание.

  1. На GitHub.com перейдите на главную страницу репозитория. 1. Нажмите Параметры под именем репозитория. Кнопка параметров репозитория 1. На левой боковой панели щелкните и нажмите кнопку Общие.

  2. В разделе "Разрешения рабочего процесса" используйте параметр Разрешить GitHub Actions создавать и утверждать запросы на вытягивание, чтобы настроить для GITHUB_TOKEN возможность создания и утверждения запросов на вытягивание.

    Настройка разрешений GITHUB_TOKEN для этого репозитория

  3. Нажмите Сохранить, чтобы применить настроенные параметры.

Разрешение доступа к компонентам в частном репозитории

Действия и повторно используемые рабочие процессы в частных репозиториях можно совместно использовать с другими частными репозиториями , принадлежащими одному и тому же пользователю или организации. Сведения о частных репозиториях см. в разделе Сведения о видимости репозитория.

Приведенные ниже действия позволяют настроить возможность доступа к действиям и повторно используемым рабочим процессам в частном репозитории извне репозитория. Дополнительные сведения см. в разделах "Общий доступ к действиям и рабочим процессам из частного репозитория" и "Совместное использование действий и рабочих процессов с вашей организацией". Кроме того, можно использовать REST API для задания или получения сведений об уровне доступа. Дополнительные сведения см. в разделах Получение уровня доступа для рабочих процессов за пределами репозитория и Установка уровня доступа для рабочих процессов за пределами репозитория.

Управление доступом для частного репозитория

  1. На GitHub перейдите на главную страницу частного репозитория.

  2. Нажмите Параметры под именем репозитория.

  3. На левой боковой панели щелкните и нажмите кнопку Общие.

  4. В разделе Доступ выберите один из параметров доступа:

    • Недоступно — рабочие процессы в других репозиториях не могут получить доступ к этому репозиторию.
    • Доступ из репозиториев, принадлежащих пользователю USER NAME . Рабочие процессы в других репозиториях, принадлежащих тому же пользователю, могут получить доступ к действиям и повторно используемым рабочим процессам в этом репозитории. Доступ разрешен только из частных репозиториев.
  5. Нажмите Сохранить, чтобы применить настроенные параметры.

Управление доступом к частному репозиторию в организации

  1. На GitHub перейдите на главную страницу частного репозитория.

  2. Нажмите Параметры под именем репозитория.

  3. На левой боковой панели щелкните и нажмите кнопку Общие.

  4. В разделе Доступ выберите один из параметров доступа:

    • Недоступно — рабочие процессы в других репозиториях не могут получить доступ к этому репозиторию.
    • Доступ из репозиториев в организации "НАЗВАНИЕ ОРГАНИЗАЦИИ". Рабочие процессы в других репозиториях, входящих в организацию "НАЗВАНИЕ ОРГАНИЗАЦИИ", могут получать доступ к действиям и повторно используемым рабочим процессам в этом репозитории. Доступ разрешен только из частных репозиториев.
  5. Нажмите Сохранить, чтобы применить настроенные параметры.

Настройка периода хранения для артефактов и журналов GitHub Actions в репозитории

Период хранения для артефактов и журналов GitHub Actions в репозитории можно настраивать.

По умолчанию артефакты и файлы журналов, созданные рабочими процессами, сохраняются в течение 90 дней перед автоматическим удалением. Срок хранения можно настроить в зависимости от типа репозитория:

  • Для общедоступных репозиториев: можно изменить этот период хранения на любой срок в диапазоне от 1 дня до 90 дней.
  • Для частных репозиториев : можно изменить этот период хранения на любой срок в диапазоне от 1 дня до 400 дней.

При настройке периода хранения он применяется только к новым артефактам и файлам журнала и не применяется ретроактивно к существующим объектам. Для управляемых репозиториев и организаций максимальный срок хранения не может превышать предел, установленный управляющей организацией или предприятием.

Кроме того, можно настраивать желаемый период хранения для конкретного артефакта, созданного рабочим процессом. Дополнительные сведения см. в разделе Настройка периода хранения артефакта.

Настройка периода хранения для репозитория

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