Ресурс google_cloud_scheduler_job
Синтаксис
Используется для проверки ресурса Google Job.
Примеры
describe google_cloud_scheduler_job(project: 'chef-gcp-inspec', region: us-central1, name: 'job-name') do
it { should exist }
its('description') { should cmp 'A description' }
its('schedule') { should cmp '*/8 * * * *' }
its('time_zone') { should cmp 'America/New_York' }
its('http_target.http_method') { should cmp 'POST' }
its('http_target.uri') { should cmp 'https://example.com/ping' }
end
Свойства
Свойства, доступные для ресурса google_cloud_scheduler_job:
name- Имя задания.
description- Читабельное описание задания. Эта строка не должна содержать более 500 символов.
schedule- Описание расписания выполнения задания.
time_zone- Указывает часовой пояс для интерпретации расписания. Значение этого поля должно соответствовать имени часового пояса из базы данных tz.
attempt_deadline- Срок выполнения задания. Если обработчик запроса не отвечает к этому сроку, запрос отменяется, а попытка отмечается как ошибка DEADLINE_EXCEEDED. Неудачная попытка отображается в журналах выполнения. Cloud Scheduler повторит задание в соответствии с RetryConfig. Допустимый срок для этого дедлайна: для HTTP-мишеней — от 15 секунд до 30 минут, для HTTP-мишеней App Engine — от 15 секунд до 24 часов. Длительность в секундах с максимум девятью знаками после запятой, завершенная символом 's'. Пример: «3.5s»
retry_config- По умолчанию, если задание не выполняется успешно (то есть не получен ответ от обработчика), оно будет повторно выполняться с экспоненциальной задержкой в соответствии с настройками.
retry_count- Количество попыток выполнения задания с использованием процедуры экспоненциальной задержки, описанной в maxDoublings. Значения больше 5 и отрицательные значения недопустимы.
max_retry_duration- Предельное время повторных попыток выполнения неисправного задания, измеряемое с момента первой попытки выполнения. Если задано вместе с retryCount, задание будет повторно выполняться до достижения обоих пределов. Длительность в секундах с максимум девятью знаками после запятой, завершенная символом 's'.
min_backoff_duration- Минимальное время ожидания повторного выполнения задания после его неудачи. Длительность в секундах с максимум девятью знаками после запятой, завершенная символом 's'.
max_backoff_duration- Максимальное время ожидания повторного выполнения задания после его неудачи. Длительность в секундах с максимум девятью знаками после запятой, завершенная символом 's'.
max_doublings- Время между повторными попытками удваивается maxDoublings раз. Интервал повторного выполнения задания начинается с minBackoffDuration, затем удваивается maxDoublings раз, затем увеличивается линейно и, наконец, выполняется с интервалами maxBackoffDuration до retryCount раз.
pubsub_target- Целевой объект Pub/Sub. Если задание использует целевой объект Pub/Sub, задача cron опубликует сообщение в указанную тему.
topic_name- Полное имя ресурса темы Cloud Pub/Sub, в которую будут публиковаться сообщения при доставке задания.
Примечание
Имя темы должно иметь такой же формат, как и в PubSub’s PublishRequest.name, например:projects/my-project/topics/my-topic. data- Загрузка сообщения для PubsubMessage. Сообщение Pubsub должно содержать либо непустые данные, либо хотя бы один атрибут.
attributes- Атрибуты для PubsubMessage. Сообщение Pubsub должно содержать либо непустые данные, либо хотя бы один атрибут.
app_engine_http_target- Целевой объект App Engine HTTP. Если задание использует целевой объект App Engine HTTP, cron отправит запрос на экземпляр сервиса.
http_method- Какой HTTP-метод использовать для запроса.
app_engine_routing- Настройки маршрутизации App Engine для задания.
service- Сервис App. По умолчанию задание отправляется в сервис, который является сервисом по умолчанию при попытке выполнения задания.
version- Версия App. По умолчанию задание отправляется в версию, которая является версией по умолчанию при попытке выполнения задания.
instance- Экземпляр App. По умолчанию задание отправляется в доступный экземпляр при попытке выполнения задания.
relative_uri- Относительный URI. Относительный URL должен начинаться с «/» и быть допустимым относительным URL HTTP. Он может содержать путь, аргументы запроса и фрагменты #. Если относительный URL пустой, используется корневой путь «/». Пробелы недопустимы, а максимальная длина — 2083 символа.
body- Тело HTTP-запроса. Тело запроса разрешено только в том случае, если HTTP-метод — POST или PUT. Установка тела в задании с несовместимым HttpMethod приведет к ошибке неверного аргумента.
headers- HTTP-заголовки запроса. Эта карта содержит имена и значения заголовков. Заголовки могут быть установлены при создании задания.
http_target- HTTP-мишень. Если задание использует HTTP-мишень, cron отправит запрос на указанный URL.
uri- Полный URI-путь, на который будет отправлен запрос.
http_method- Какой HTTP-метод использовать для запроса.
body- Тело HTTP-запроса. Тело запроса разрешено только в том случае, если HTTP-метод — POST, PUT или PATCH. Установка тела в задании с несовместимым HttpMethod приведет к ошибке.
headers- Эта карта содержит имена и значения заголовков. Повторные заголовки не поддерживаются, но значение заголовка может содержать запятые.
oauth_token- Содержит информацию, необходимую для генерации токена OAuth. Этот тип авторизации следует использовать при отправке запросов на конечную точку GCP.
service_account_email- Электронный адрес учетной записи сервиса, используемый для генерации токена OAuth. Учетная запись сервиса должна находиться в том же проекте, что и задание.
scope- Диапазон OAuth, используемый для генерации токена доступа OAuth. Если не указано, будет использоваться «https://www.googleapis.com/auth/cloud-platform".
oidc_token- Содержит информацию, необходимую для генерации токена OpenID Connect. Этот тип авторизации следует использовать при отправке запросов на сторонние конечные точки или Cloud Run.
service_account_email- Электронный адрес учетной записи сервиса, используемый для генерации токена OAuth. Учетная запись сервиса должна находиться в том же проекте, что и задание.
audience- Аудитория, используемая при генерации токена OIDC. Если не указано, используется URI, указанный в целевом параметре.
region- Регион, в котором находится задание планировщика.
Разрешения GCP
© 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_cloud_scheduler_job/