Проверка работоспособности GitHub Actions
Вы можете проверить работоспособность GitHub Actions на ваш экземпляр GitHub Enterprise Server с помощью служебной ghe-actions-check
программы командной строки. Дополнительные сведения см. в разделе [AUTOTITLE и Служебные программы командной строки](/admin/configuration/configuring-your-enterprise/accessing-the-administrative-shell-ssh).
Настройка локальных средств выполнения при использовании самозаверяющего сертификата для GitHub Enterprise Server
Настоятельно рекомендуется настроить TLS в GitHub Enterprise Server с сертификатом, подписанным доверенным центром авторизации. Хотя самозаверяющий сертификат можно использовать, необходимо дополнительно настроить локальные средства выполнения тестов, и не рекомендуется использовать сертификат для рабочих сред. Дополнительные сведения см. в разделе Настройка TLS.
Установка сертификата на компьютере средства выполнения
Для подключения локального средства выполнения к GitHub Enterprise Server с помощью самозаверяющего сертификата необходимо установить сертификат на компьютере средства выполнения, чтобы усилить защиту подключения.
Инструкции по установке сертификата см. в документации по операционной системе средства выполнения.
Настройка Node.JS для использования сертификата
Большинство действий пишутся на JavaScript и выполняются с помощью Node.js, так что хранилище сертификатов операционной системы не используется. Чтобы локальное приложение средства выполнения использовало сертификат, необходимо задать переменную среды NODE_EXTRA_CA_CERTS
на компьютере средства выполнения.
Переменную среды можно задать как системную переменную среды или объявить ее в файле, вызываемом .env
в каталоге приложений для локального запуска (то есть каталог, в который вы скачали и распаковали программное обеспечение runner).
Например:
NODE_EXTRA_CA_CERTS=/usr/share/ca-certificates/extra/mycertfile.crt
Переменные среды считываются при запуске приложения локального средства выполнения, поэтому перед настройкой или запуском этого приложения необходимо задать переменную среды. При изменении конфигурации сертификата необходимо перезапустить приложение локального средства выполнения.
Настройка контейнеров Docker для использования сертификата
Если в рабочих процессах используются действия контейнеров Docker или контейнеры служб, возможно, потребуется также установить сертификат в образе Docker в дополнение к описанному выше заданию переменной среды.
Настройка параметров прокси-сервера HTTP для GitHub Actions
Если у вас есть http-прокси-сервер **, настроенный **на GitHub:
- Необходимо добавить
.localhost
и127.0.0.1``::1
в список исключений **** прокси-сервера HTTP (в этом порядке). - Если расположение внешнего хранилища не является маршрутизируемым, необходимо также добавить URL-адрес внешнего хранилища в список исключений.
Дополнительные сведения об изменении параметров прокси-сервера см. в разделе Настройка сервера веб-прокси исходящего трафика.
Если эти параметры настроены неправильно, при настройке или изменении конфигурации GitHub Actions могут возникнуть такие ошибки, как Resource unexpectedly moved to https://IP-ADDRESS
.
Средства выполнения не подключаются к GitHub Enterprise Server с новым именем узла
Warning
Не изменяйте имя узла для GitHub Enterprise Server после начальной настройки. Изменение имени узла приведет к непредвиденному поведению, вплоть до сбоя экземпляров и недопустимости ключей безопасности пользователей. Если вы изменили имя узла для экземпляра и столкнулись с проблемами, обратитесь к Поддержка GitHub Enterprise или Сведения о поддержке уровня "Премиум" GitHub.
Если вы развертываете GitHub Enterprise Server в среде с новым именем узла и старое имя узла больше не разрешается в экземпляр, локальные средства выполнения не смогут подключиться к старому имени узла и не будут выполнять задания.
Чтобы использовать новое имя узла для ваш экземпляр GitHub Enterprise Server, необходимо обновить конфигурацию локальных модулей выполнения. Для каждого локального средства выполнения потребуется выполнить одну из описанных ниже процедур.
- В каталоге приложения локального средства выполнения измените файлы
.runner
и.credentials
, заменив все упоминания старого имени узла новым именем узла, а затем перезапустите приложение локального средства выполнения. - Удалите средство выполнения из GitHub Enterprise Server с помощью пользовательского интерфейса и добавьте его повторно. Дополнительные сведения см. в разделе [AUTOTITLE и Удаление локальных средств выполнения](/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners).
Устранение неполадок при активации существующих рабочих процессов в Dependabot
После настройки обновлений Dependabot для ваш экземпляр GitHub Enterprise Serverмогут возникнуть сбои при активации существующих рабочих процессов событиями Dependabot .
По умолчанию запуски рабочих процессов GitHub Actions, которые активируются Dependabot при наступлении событий push
, pull_request
, pull_request_review
или pull_request_review_comment
, обрабатываются так, как если бы они были открыты из вилки репозитория. Это означает, что в отличие от рабочих процессов, активированных другими субъектами, они получают GITHUB_TOKEN
только для чтения и не имеют доступа к секретам, которые обычно доступны. Это приводит к сбою любых рабочих процессов, которые пытаются выполнить запись в репозиторий при активации из Dependabot.
Существует три способа решения этой проблемы.
- Вы можете изменить рабочие процессы так, чтобы они больше не активировались из Dependabot, с помощью следующего выражения:
if: github.actor != 'dependabot[bot]'
. Дополнительные сведения см. в разделе Оценка выражений в рабочих процессах и действиях. - Вы можете изменить рабочие процессы так, чтобы использовался двухэтапный процесс с событием
pull_request_target
, которое не имеет таких ограничений. Дополнительные сведения см. в разделе Устранение неполадок зависимостей от действий GitHub. - Вы можете предоставить рабочим процессам, активируемым из Dependabot, доступ к секретам и разрешить термину
permissions
увеличивать областьGITHUB_TOKEN
по умолчанию. Дополнительные сведения см. в статье "Предоставление рабочих процессов, активированных Dependabot доступа к секретам и повышенным разрешениям ниже.
Предоставление рабочим процессам, активируемым из Dependabot, доступа к секретам и повышенному уровню разрешений
-
Войдите в административную оболочку с помощью SSH. Дополнительные сведения см. в разделе Доступ к административной оболочке (SSH).
-
Чтобы удалить ограничения рабочих процессов, активированных Dependabot для ваш экземпляр GitHub Enterprise Server, используйте следующую команду.
ghe-config app.actions.disable-dependabot-enforcement true
-
Примените конфигурацию.
ghe-config-apply
-
Вернитесь на GitHub Enterprise Server.
Устранение неполадок, связанных с пакетными действиями, в GitHub Actions
Если при установке GitHub Actions в GitHub Enterprise Serverвозникает следующая ошибка, можно устранить проблему, установив официальные действия и шаблоны рабочих процессов.
A part of the Actions setup had problems and needs an administrator to resolve.
Чтобы установить официальные пакетные действия и шаблоны рабочих процессов в указанной организации в GitHub Enterprise Server, выполните следующую процедуру.
-
Определите организацию, которая будет хранить официальные объединенные действия и шаблоны рабочих процессов. Можно создать новую организацию или использовать существующую.
- Сведения о создании новой организации см. в разделе Создание новой организации с нуля.
- Дополнительные сведения о выборе имени для этой организации см. в разделе Начало работы с GitHub Actions для сервера GitHub Enterprise.
-
Войдите в административную оболочку с помощью SSH. Дополнительные сведения см. в разделе Доступ к административной оболочке (SSH).
-
Чтобы назначить организацию в качестве расположения для хранения пакетных действий, используйте команду
ghe-config
, заменивORGANIZATION
на имя своей организации.ghe-config app.actions.actions-org ORGANIZATION
and:
ghe-config app.actions.github-org ORGANIZATION
-
Чтобы добавить пакетные действия в организацию, отмените SHA.
ghe-config --unset 'app.actions.actions-repos-sha1sum'
-
Примените конфигурацию.
ghe-config-apply
После выполнения этих действий можно возобновить настройку GitHub Actions в Начало работы с GitHub Actions для сервера GitHub Enterprise.