Skip to main content

Включение Actions с помощью Google Cloud Storage

Вы можете включить Actions на Enterprise Server и использовать Google Cloud Storage для хранения данных, созданных рабочими процессами.

Кто может использовать эту функцию?

Site administrators can enable Actions and configure enterprise settings.

Примечание.

Поддержка Actions для Google Cloud Storage в настоящее время находится в public preview и подлежит изменению.

О внешнем хранилище для Actions

Actions использует внешнее хранилище BLOB-объектов для хранения данных, созданных рабочими процессами. Сохраненные данные включают журналы рабочих процессов, кэши и артефакты сборки, отправленные пользователем. Дополнительные сведения см. в разделе Начало работы с Actions для сервера Enterprise.

Существует два варианта настройки Enterprise Server для подключения к внешнему поставщику хранилища:

  • OpenID Connect (OIDC)
  • Традиционная проверка подлинности на основе учетных данных с помощью секретов

Мы рекомендуем использовать OIDC, если это возможно, так как вам не потребуется создавать конфиденциальные и длительные секреты учетных данных для поставщика хранилища и риск их предоставления. После определения доверия с помощью OIDC поставщик облачных хранилищ автоматически выдает маркеры доступа с коротким сроком действия к экземпляр Enterprise Server, которые автоматически истекают.

Необходимые компоненты

Перед включением Actions выполните следующие действия:

  • Создайте контейнер Google Cloud Storage для хранения данных, созданных рабочими процессами.

  • Ознакомьтесь с требованиями к оборудованию для Actions. Дополнительные сведения см. в разделе Начало работы с Actions для сервера Enterprise.

  • Протокол TLS должен быть настроен для домена Enterprise Server. Дополнительные сведения см. в разделе Настройка TLS.

    Примечание.

    Настоятельно рекомендуется настроить TLS в Enterprise Server с сертификатом, подписанным доверенным центром авторизации. Хотя самозаверяющий сертификат можно использовать, необходимо дополнительно настроить локальные средства выполнения тестов, и не рекомендуется использовать сертификат для рабочих сред.

  • Если у вас есть http-прокси-сервер **, настроенный **на :

  • Необходимо добавить .localhostи 127.0.0.1``::1 в список исключений **** прокси-сервера HTTP (в этом порядке).

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

Дополнительные сведения об изменении параметров прокси-сервера см. в разделе Настройка сервера веб-прокси исходящего трафика.

  • Если вы используете OIDC для подключения к поставщику хранилища, необходимо предоставить следующие URL-адреса службы маркеров OIDC на экземпляр Enterprise Server в общедоступном Интернете:

    https://HOSTNAME/_services/token/.well-known/openid-configuration
    https://HOSTNAME/_services/token/.well-known/jwks
    

    Это гарантирует, что поставщик хранилища может связаться с экземпляр Enterprise Server для проверки подлинности.

Включение Actions с google Cloud Storage с помощью OIDC (рекомендуется)

Чтобы настроить Enterprise Server для использования OIDC с Google Cloud Storage, необходимо сначала создать учетную запись службы Google Cloud, а затем создать пул удостоверений Google Cloud и поставщик удостоверений, а затем настроить Enterprise Server для доступа к контейнеру облачного хранилища Google.

1. Создание учетной записи службы

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

    При создании учетной записи службы убедитесь, что вы выполните указанные ниже действия.

    • Включите API IAM, как описано в начале создания учетных записей служб и управления ими.
    • Добавьте следующие роли в учетную запись службы:
      • Создатель маркера учетной записи службы
      • Администратор объекта хранилища
  2. После создания учетной записи службы запишите его адрес электронной почты, так как он понадобится позже. Адрес электронной почты учетной записи службы находится в формате [email protected].

2. Создание пула удостоверений и поставщика удостоверений

  1. В консоли Google Cloud перейдите на страницу "Новый поставщик рабочей нагрузки" и страницу пула .

  2. В разделе "Создание пула удостоверений" введите имя пула удостоверений и нажмите кнопку "Продолжить".

  3. В разделе "Добавление поставщика в пул":

    • Для параметра "Выбор поставщика" выберите OpenID Connect (OIDC).

    • В поле "Имя поставщика" введите имя поставщика.

    • В поле "Издатель (URL-адрес)" введите следующий URL-адрес, заменив HOSTNAME общедоступным именем узла для экземпляр Enterprise Server:

      https://HOSTNAME/_services/token
      

      Например:

      https://my-ghes-host.example.com/_services/token
      
    • В разделе "Аудитории" оставьте выбранную аудиторию по умолчанию, но обратите внимание на URL-адрес поставщика удостоверений, так как это необходимо позже. URL-адрес поставщика удостоверений находится в формате https://iam.googleapis.com/projects/PROJECT-NUMBER/locations/global/workloadIdentityPools/POOL-NAME/providers/PROVIDER-NAME.

    • Нажмите кнопку Продолжить.

  4. В разделе "Настройка атрибутов поставщика":

    • Введите assertion.subдля сопоставления "OIDC 1".

    • В разделе "Условия атрибута" нажмите кнопку "Добавить условие".

    • В поле "Условие CEL" введите следующее условие, заменив HOSTNAME общедоступным именем узла экземпляр Enterprise Server:

      google.subject == "HOSTNAME"
      

      Например:

      google.subject == "my-ghes-host.example.com"
      

      Примечание.

      Имя узла экземпляр Enterprise Server, используемое здесь , не должно включать протокол.

    • Нажмите кнопку Сохранить.

  5. После создания пула удостоверений в верхней части страницы пула удостоверений нажмите кнопку "Предоставить доступ".

    • В разделе "Выбор учетной записи службы" выберите учетную запись службы, созданную в предыдущей процедуре.
    • В разделе "Выбор субъектов (удостоверений, которые могут получить доступ к учетной записи службы)", выберите только удостоверения, соответствующие фильтру.
    • В поле "Имя атрибута" выберите тему.
    • В поле "Значение атрибута" введите имя узла Enterprise Server без протокола. Например, my-ghes-host.example.com.
    • Нажмите кнопку Сохранить.
    • Диалоговое окно "Настройка приложения" можно закрыть, так как файл конфигурации не нужен.

3. Настройка Enterprise Server для подключения к Облачному хранилищу Google с помощью OIDC

  1. В учетной записи администратора Enterprise Server, в правом верхнем углу любой страницы щелкните .

  2. Если вы еще не на странице "Администратор сайта", в левом верхнем углу щелкните Администратор сайта.

  3. На боковой панели " "Администратор сайта" щелкните Консоль управления.

  4. На боковой панели "Параметры" щелкните "Действия".

  5. В разделе " Actions" выберите "Включить действия ".

  6. В разделе "Артефакт и хранилище журналов" рядом с пунктом "Google Cloud Storage" нажмите кнопку "Настройка".

  7. В разделе "Проверка подлинности" выберите OpenID Connect (OIDC) и введите значения для хранилища:

    • URL-адрес службы: URL-адрес службы для контейнера. Обычно https://storage.googleapis.comэто .

    • Имя контейнера: имя контейнера.

    • Идентификатор поставщика удостоверений рабочей нагрузки: идентификатор поставщика удостоверений для пула удостоверений.

      Это в формате projects/PROJECT-NUMBER/locations/global/workloadIdentityPools/POOL-NAME/providers/PROVIDER-NAME. Обратите внимание, что необходимо удалить https://iam.googleapis.com/ префикс из значения, указанного в предыдущей процедуре.

      Например, projects/1234567890/locations/global/workloadIdentityPools/my-pool/providers/my-provider.

    • Учетная запись службы: адрес электронной почты учетной записи службы, указанный в предыдущей процедуре. Например, [email protected].

  8. Нажмите кнопку "Проверить параметры хранилища"**, **чтобы проверить параметры хранилища.

    Если есть ошибки, проверяющие параметры хранилища, проверьте параметры с поставщиком хранилища и повторите попытку.

  9. На боковой панели "Параметры" нажмите кнопку "Сохранить параметры".

    Примечание.

    Сохранение параметров в Консоль управления перезапускает системные службы, что может привести к простоям, видимым пользователем.

  10. Подождите завершения запуска конфигурации.

Включение Actions с помощью Google Cloud Storage с помощью ключа HMAC

  1. Создайте учетную запись службы Google Cloud, которая может получить доступ к контейнеру и создайте ключ проверки подлинности на основе хэша сообщений (HMAC) для учетной записи службы. Дополнительные сведения см. в разделе "Управление ключами HMAC для учетных записей служб" в документации по Google Cloud.

    Учетная запись службы должна иметь следующие разрешения на управление удостоверениями и доступом (IAM) для контейнера:

    • storage.objects.create
    • storage.objects.get
    • storage.objects.list
    • storage.objects.update
    • storage.objects.delete
    • storage.multipartUploads.create
    • storage.multipartUploads.abort
    • storage.multipartUploads.listParts
    • storage.multipartUploads.list 1. В учетной записи администратора Enterprise Server, в правом верхнем углу любой страницы щелкните .
  2. Если вы еще не на странице "Администратор сайта", в левом верхнем углу щелкните Администратор сайта.

  3. На боковой панели " "Администратор сайта" щелкните Консоль управления.

  4. На боковой панели "Параметры" щелкните "Действия".

  5. В разделе " Actions" выберите "Включить действия ".

  6. В разделе "Артефакт и хранилище журналов" рядом с пунктом "Google Cloud Storage" нажмите кнопку "Настройка".

  7. В разделе "Проверка подлинности" выберите "Учетные данные" и введите сведения о контейнере хранилища:

    • URL-адрес службы: URL-адрес службы для контейнера. Обычно https://storage.googleapis.comэто .
    • Имя контейнера: имя контейнера.
    • Идентификатор доступа HMAC и секрет HMAC: идентификатор доступа к Google Cloud и секрет учетной записи хранения. Дополнительные сведения см. в разделе "Управление ключами HMAC для учетных записей служб" в документации по Google Cloud.
  8. Нажмите кнопку "Проверить параметры хранилища"**, **чтобы проверить параметры хранилища.

    Если есть ошибки, проверяющие параметры хранилища, проверьте параметры с поставщиком хранилища и повторите попытку.

  9. На боковой панели "Параметры" нажмите кнопку "Сохранить параметры".

    Примечание.

    Сохранение параметров в Консоль управления перезапускает системные службы, что может привести к простоям, видимым пользователем.

  10. Подождите завершения запуска конфигурации.

Следующие шаги

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