Spec-Zone.ru › Chef 16

Ресурс google_pubsub_subscription

Синтаксис

Используется для проверки ресурса подписки Google.

Примеры

describe google_pubsub_subscription(project: 'chef-gcp-inspec', name: 'inspec-gcp-subscription') do
  it { should exist }
end

describe google_pubsub_subscription(project: 'chef-gcp-inspec', name: 'nonexistent') do
  it { should_not exist }
end

Свойства

Свойства, доступные для ресурса google_pubsub_subscription:

name
Имя подписки.
topic
Ссылка на ресурс темы.
labels
Набор пар ключ-значение меток для этой подписки.
push_config
Если для этой подписки используется доставка push, это поле используется для ее настройки. Пустое значение pushConfig означает, что подписчик будет получать и подтверждать сообщения с помощью методов API.
oidc_token
Если указано, Pub/Sub сгенерирует и прикрепит токен OIDC JWT в качестве заголовка Authorization в HTTP-запросе для каждого отправляемого сообщения.
service_account_email
Электронная почта учетной записи сервиса, которая будет использоваться для генерации токена OIDC. Вызывающий абонент (для RPC-вызовов subscriptions.create, subscriptions.patch и subscriptions.modifyPushConfig) должен иметь разрешение iam.serviceAccounts.actAs для учетной записи сервиса.
audience
Аудитория, которая будет использоваться при генерации токена OIDC. Поле аудитории в заявлении JWT идентифицирует получателей, для которых предназначен JWT. Значение аудитории — строка с одним регистром. Не поддерживается использование нескольких значений (массива) для поля аудитории. Дополнительная информация о поле аудитории токена OIDC JWT: https://tools.ietf.org/html/rfc7519#section-4.1.3 Примечание: если не указано, в качестве URL-адреса точки завершения push будет использоваться URL-адрес конечной точки.
push_endpoint
URL-адрес конечной точки, на которую должны отправляться сообщения. Например, веб-хук-конечная точка может использовать «https://example.com/push".
attributes
Атрибуты конфигурации конечной точки. Каждая конечная точка имеет набор поддерживаемых API атрибутов, которые могут быть использованы для управления различными аспектами доставки сообщений. В настоящее время поддерживается атрибут x-goog-version, который можно использовать для изменения формата отправляемого сообщения. Этот атрибут указывает версию данных, ожидаемых конечной точкой. Это определяет структуру отправляемого сообщения (т. е. его поля и метаданные). Версия конечной точки основана на версии API Pub/Sub. Если при вызове subscriptions.create этот атрибут отсутствует, он будет по умолчанию иметь значение версии API, использованного для этого вызова. Если при вызове subscriptions.modifyPushConfig этот атрибут отсутствует, его значение не изменится. Вызовы subscriptions.get всегда возвращают допустимую версию, даже если подписка была создана без этого атрибута. Возможные значения этого атрибута: - v1beta1: использует формат push, определенный в API Pub/Sub v1beta1. - v1 или v1beta2: использует формат push, определенный в API Pub/Sub v1.
ack_deadline_seconds
Это значение является максимальным интервалом времени после того, как подписчик получает сообщение, прежде чем подписчик должен подтвердить сообщение. После доставки сообщения, но до истечения срока действия подтверждения и до подтверждения сообщения, это — ожидаемое сообщение и оно не будет повторно доставлено в течение этого времени (в порядке наилучшего соответствия). Для подписок pull это значение используется как начальное значение срока действия подтверждения. Чтобы переопределить это значение для конкретного сообщения, вызовите subscriptions.modifyAckDeadline с соответствующим ackId, если используется pull. Минимальное настраиваемое значение срока действия — 10 секунд. Максимальное настраиваемое значение срока действия — 600 секунд (10 минут). Если это значение равно 0, используется значение по умолчанию — 10 секунд. Для доставки push это значение также используется для установки таймаута запроса для вызова конечной точки push. Если подписчик никогда не подтверждает сообщение, система Pub/Sub в конечном итоге повторно доставит сообщение.
message_retention_duration
Сколько времени хранить неоповещенные сообщения в очереди подписки с момента публикации сообщения. Если retainAckedMessages true, это также настраивает хранение подтвержденных сообщений, и таким образом настраивает, насколько далеко в прошлое можно выполнить поиск subscriptions.seek. По умолчанию — 7 дней. Не может быть больше 7 дней ("604800s") или меньше 10 минут ("600s"). Продолжительность в секундах с до девяти десятичных знаков, завершенная символом ’s’. Пример: "600.5s".
retain_acked_messages
Указывает, нужно ли сохранять подтвержденные сообщения. Если true, то сообщения не удаляются из очереди подписки, даже если они подтверждены, пока не выйдут за пределы временного интервала messageRetentionDuration.
expiration_policy
Политика, определяющая условия истечения срока действия этой подписки. Подписка считается активной, пока любой подключенный подписчик успешно получает сообщения из подписки или выполняет операции с подпиской. Если expirationPolicy не задано, будет использоваться политика по умолчанию с ttl в 31 день. Если она задана, но ttl пустое, ресурс никогда не истекает. Минимальное разрешенное значение для expirationPolicy.ttl — 1 день.
ttl
Указывает продолжительность «срока действия» для связанного ресурса. Ресурс истекает, если он неактивен в течение периода ttl. Если ttl не задано, связанный ресурс никогда не истекает. Продолжительность в секундах с до девяти десятичных знаков, завершенная символом ’s’. Пример — «3.5s».
dead_letter_policy
Политика, определяющая условия для направления сообщений в эту подписку. Если dead_letter_policy не задано, направление в мертвую почту отключено. Учетная запись сервиса Cloud Pub/Sub, связанная с родительским проектом этой подписки (т. е., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com), должна иметь разрешение Acknowledge() для сообщений в этой подписке.
dead_letter_topic
Имя темы, в которую должны публиковаться сообщения мертвой почты. Формат — projects/{project}/topics/{topic}. Учетная запись сервиса Cloud Pub/Sub, связанная с родительским проектом подписки (т. е., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com), должна иметь разрешение Publish() в эту тему. Операция завершится ошибкой, если тема не существует. Пользователи должны убедиться, что к этой теме прикреплена подписка, так как сообщения, опубликованные в тему без подписок, теряются.
max_delivery_attempts
Максимальное количество попыток доставки для любого сообщения. Значение должно быть от 5 до 100. Количество попыток доставки определяется как 1 + (сумма количества NACK и количества раз, когда срок подтверждения сообщения истекал). NACK — это любой вызов ModifyAckDeadline со сроком действия 0. Обратите внимание, что клиентские библиотеки могут автоматически продлевать сроки подтверждения. Это поле будет учтено в порядке наилучшего соответствия. Если это значение равно 0, используется значение по умолчанию — 5.

Разрешения GCP

Убедитесь, что для текущего проекта включен API Cloud Pub/Sub: https://console.cloud.google.com/apis/library/pubsub.googleapis.com/.

© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/google_pubsub_subscription/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API