google.cloud.gcp_cloudbuild_trigger_info – Сбор информации о триггере GCP
Примечание
Этот плагин является частью коллекции google.cloud (версия 1.0.2).
Для его установки используйте: ansible-galaxy collection install google.cloud.
Для использования в книге задач укажите: google.cloud.gcp_cloudbuild_trigger_info.
Описание
- Сбор информации о триггере GCP
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| auth_kind строка / обязательно |
| Тип используемых учетных данных. |
| env_type строка | Указывает, в какой среде Ansible выполняется этот модуль. Не устанавливайте это значение, если вы не знаете, что делаете. Это изменяет только строку User Agent для любых запросов к API. | |
| project строка | Проект Google Cloud Platform, который следует использовать. | |
| scopes список / элементы=строка | Массив используемых областей видимости | |
| service_account_contents jsonarg | Содержимое файла JSON учетной записи службы, либо в виде словаря, либо в виде JSON-строки, представляющей его. | |
| service_account_email строка | Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию. | |
| service_account_file путь | Путь к файлу JSON учетной записи службы, если в качестве типа выбрано serviceaccount. |
Примечания
Примечание
- для аутентификации можно установить service_account_file с использованием переменной среды
gcp_service_account_file. - для аутентификации можно установить service_account_contents с использованием переменной среды
GCP_SERVICE_ACCOUNT_CONTENTS. - для аутентификации можно установить service_account_email с использованием переменной среды
GCP_SERVICE_ACCOUNT_EMAIL. - для аутентификации можно установить auth_kind с использованием переменной среды
GCP_AUTH_KIND. - для аутентификации можно установить scopes с использованием переменной среды
GCP_SCOPES. - значения переменных среды будут использоваться только в том случае, если значения в книге задач не заданы.
- Параметры service_account_email и service_account_file взаимоисключающие.
Примеры
- name: get info on a trigger
gcp_cloudbuild_trigger_info:
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
Возвращаемые значения
Общие возвращаемые значения описаны в этом разделе, следующие поля уникальны для данного модуля:
| Ключевые параметры | Возвращаемое значение | Описание | |||||
|---|---|---|---|---|---|---|---|
| ресурсы сложный | всегда | Список ресурсов | |||||
| сборка сложный | успешно | Содержимое шаблона сборки. Должен быть указан либо файл, либо шаблон сборки. | |||||
| артефакты сложный | успешно | Артефакты, созданные в результате сборки, которые должны быть загружены после успешного выполнения всех этапов сборки. | |||||
| изображения список / элементы=строка | успешно | Список изображений, которые нужно загрузить после успешного выполнения всех этапов сборки. Изображения будут загружены с использованием учетных данных сервисного аккаунта билдера. Хэши загруженных изображений будут сохранены в поле результатов ресурса сборки. Если какое-либо из изображений не удалось загрузить, сборка помечается как НЕУДАЧНАЯ. | |||||
| объекты сложный | успешно | Список объектов, которые нужно загрузить в хранилище Google Cloud после успешного выполнения всех этапов сборки. Файлы в рабочей области, соответствующие указанным шаблонам путей, будут загружены в расположение хранилища Google Cloud с использованием учетных данных сервисного аккаунта билдера. Расположение и данные загруженных объектов будут сохранены в поле результатов ресурса сборки. Если какой-либо из объектов не удалось загрузить, сборка помечается как НЕУДАЧНАЯ. | |||||
| местоположение строка | успешно | Ведро Google Cloud Storage и необязательный путь к объекту в формате "gs://bucket/path/to/somewhere/". Файлы в рабочей области, соответствующие любому шаблону пути, будут загружены в Google Cloud Storage с этим местоположением в качестве префикса. | |||||
| пути список / элементы=строка | успешно | Шаблоны путей, используемые для сопоставления файлов в рабочей области сборки. | |||||
| время сложный | успешно | Только для вывода. Содержит информацию о времени загрузки всех артефактов. | |||||
| endTime строка | успешно | Конец временного интервала. Отметка времени в формате RFC3339 UTC "Zulu" с разрешением в наносекунды и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z". | |||||
| startTime строка | успешно | Начало временного интервала. Отметка времени в формате RFC3339 UTC "Zulu" с разрешением в наносекунды и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z". | |||||
| изображения список / элементы=строка | успешно | Список изображений, которые нужно загрузить после успешного выполнения всех этапов сборки. Изображения загружаются с использованием учетных данных сервисного аккаунта билдера. Хэши загруженных изображений будут сохранены в поле результатов ресурса сборки. Если какое-либо из изображений не удалось загрузить, статус сборки помечается как НЕУДАЧНЫЙ. | |||||
| logsBucket строка | успешно | Ведро Google Cloud Storage, в котором должны быть записаны журналы. Имена файлов журналов будут иметь формат ${logsBucket}/log-${build_id}.txt. | |||||
| параметры сложный | успешно | Специальные параметры для этой сборки. | |||||
| diskSizeGb целое число | успешно | Запрашиваемый размер диска для виртуальной машины, на которой выполняется сборка. Обратите внимание, что это НЕ "свободное место на диске"; часть пространства будет использоваться операционной системой и утилитами сборки. Также обратите внимание, что это минимальный размер диска, который будет выделен для сборки — сборка может выполняться с диском большего размера, чем запрошенное значение. В настоящее время максимальный размер диска составляет 1000 ГБ; сборки, запрашивающие больше, чем максимальный размер, отклоняются с ошибкой. | |||||
| dynamicSubstitutions логический | успешно | Вариант для указания применения операций с подстановкой строк в стиле bash. ПРИМЕЧАНИЕ. Это всегда включено для триггерных сборок и не может быть переопределено в файле конфигурации сборки. | |||||
| env список / элементы=строка | успешно | Список глобальных определений переменных среды, которые будут существовать для всех этапов сборки в этой сборке. Если переменная определена как глобально, так и на этапе сборки, переменная будет использовать значение этапа сборки. Элементы имеют вид "KEY=VALUE" для переменной среды "KEY", которой задаётся значение "VALUE". | |||||
| logging строка | успешно | Вариант для указания режима ведения журналов, который определяет, сохраняются ли и где сохраняются журналы сборки. | |||||
| logStreamingOption строка | успешно | Вариант для определения поведения потоковой передачи журналов сборки в Google Cloud Storage. | |||||
| machineType строка | успешно | Тип машины Compute Engine, на которой будет выполняться сборка. | |||||
| requestedVerifyOption строка | успешно | Запрашиваемые варианты проверки. | |||||
| secretEnv список / элементы=строка | успешно | Список глобальных переменных среды, которые зашифрованы с помощью ключа шифрования Cloud Key Management Service. Эти значения должны быть указаны в секретах сборки. Эти переменные будут доступны всем этапам сборки в этой сборке. | |||||
| sourceProvenanceHash список / элементы=строка | успешно | Запрошенный хэш для SourceProvenance. | |||||
| substitutionOption строка | успешно | Вариант для указания поведения при возникновении ошибки в проверке подстановки. ПРИМЕЧАНИЕ. Это всегда устанавливается в ALLOW_LOOSE для триггерных сборок и не может быть переопределено в файле конфигурации сборки. | |||||
| volumes сложный | успешно | Глобальный список томов, которые нужно смонтировать для ВСЕХ этапов сборки. Каждый том создаётся как пустой том перед началом процесса сборки. После завершения сборки тома и их содержимое удаляются. Имена и пути глобальных томов не должны конфликтовать с томами, определёнными на этапе сборки. Использование глобального тома в сборке с единственным этапом не является допустимым, так как это указывает на запрос сборки с неправильной конфигурацией. | |||||
| name строка | успешно | Имя тома для монтирования. Имена томов должны быть уникальными для каждого этапа сборки и должны быть допустимыми именами для томов Docker. Каждое имя тома должно использоваться, по крайней мере, двумя этапами сборки. | |||||
| path строка | успешно | Путь, по которому будет смонтирован том. Пути должны быть абсолютными и не должны конфликтовать с другими путями томов на том же этапе сборки или с определёнными зарезервированными путями томов. | |||||
| workerPool строка | успешно | Вариант для указания WorkerPool для сборки. Формат projects/{project}/workerPools/{workerPool}. Это экспериментальное поле. | |||||
| queueTtl строка | success | Время ожидания в очереди для данной сборки. Если указано и сборка находится в очереди дольше этого значения, сборка истечёт, а статус сборки будет EXPIRED. Отсчёт времени ожидания начинается с createTime. Длительность в секундах с точностью до девяти десятичных знаков, заканчивающаяся на 's'. Пример: "3.5s". | |||||
| secrets сложный | success | Секреты для расшифровки с использованием службы управления ключами Cloud. | |||||
| kmsKeyName строка | success | Имя ключа Cloud KMS, используемого для расшифровки этих переменных окружения. | |||||
| secretEnv словарь | success | Карта имен переменных окружения и их зашифрованных значений. Секретные переменные окружения должны быть уникальными для всех секретов сборки и должны использоваться по крайней мере одним шагом сборки. Значения могут иметь размер не более 64 КБ. В сумме по всем секретам сборки может быть не более 100 секретных значений. | |||||
| source сложный | success | Расположение исходных файлов для сборки. | |||||
| repoSource сложный | success | Расположение исходного кода в репозитории Google Cloud Source. | |||||
| branchName строка | success | Регулярное выражение, сопоставляющее ветви для сборки. Должно быть указано ровно одно из имени ветви, тега или SHA коммита. Синтаксис принимаемых регулярных выражений соответствует синтаксису RE2 и описан на https://github.com/google/re2/wiki/Syntax. | |||||
| commitSha строка | success | Явное значение SHA коммита для сборки. Должно быть указано ровно одно из имени ветви, тега или SHA коммита. | |||||
| dir строка | success | Директория, относительная к корню исходного кода, в которой выполняется сборка. Это должен быть относительный путь. Если для шага указана абсолютная директория, это значение игнорируется для выполнения этого шага. | |||||
| invertRegex булево | success | Инициировать сборку только в том случае, если выражение регулярного выражения не соответствует выражению регулярного выражения. | |||||
| projectId строка | success | Идентификатор проекта, которому принадлежит репозиторий Cloud Source. Если опущено, используется идентификатор проекта, запросившего сборку. | |||||
| repoName строка | success | Имя репозитория Cloud Source. | |||||
| substitutions словарь | success | Замены, используемые в сборке по триггеру. Следует использовать только с triggers.run. | |||||
| tagName строка | success | Регулярное выражение, сопоставляющее теги для сборки. Должно быть указано ровно одно из имени ветви, тега или SHA коммита. Синтаксис принимаемых регулярных выражений соответствует синтаксису RE2 и описан на https://github.com/google/re2/wiki/Syntax . | |||||
| storageSource сложный | success | Расположение исходного кода в архиве в Google Cloud Storage. | |||||
| bucket строка | success | Ведро Google Cloud Storage, содержащее исходный код. | |||||
| generation строка | success | Генерация Google Cloud Storage для объекта. Если генерация опущена, будет использована последняя генерация. | |||||
| object строка | success | Объект Google Cloud Storage, содержащий исходный код. Этот объект должен быть сжатым архивом файлов (.tar.gz), содержащим исходный код для сборки. | |||||
| steps сложный | success | Операции, выполняемые в рабочей области. | |||||
| args список / элементы=строка | success | Список аргументов, которые будут переданы шагу при его запуске. Если для запуска контейнера шага используется образ с точкой входа, аргументы используются как аргументы к этой точке входа. Если образ не определяет точку входа, первый элемент в аргументах используется как точка входа, а остальные будут использоваться как аргументы. | |||||
| dir строка | success | Рабочая директория, используемая при запуске контейнера данного шага. Если это значение является относительным путем, оно относительно рабочей директории сборки. Если это абсолютный путь, он может находиться вне рабочей директории сборки, в этом случае содержимое пути может не сохраняться между выполнением шагов сборки, если для этого пути не указан `volume`. Если сборка определяет `RepoSource` с `dir` и шаг с `dir`, который определяет абсолютный путь, `RepoSource` `dir` игнорируется для выполнения шага. | |||||
| entrypoint строка | success | Точка входа, используемая вместо значения по умолчанию точки входа образа шага сборки. Если не задано, используется значение по умолчанию точки входа образа. | |||||
| env список / элементы=строка | success | Список определений переменных окружения, которые будут использоваться при выполнении шага. Элементы имеют вид "KEY=VALUE", где переменной окружения "KEY" присваивается значение "VALUE". | |||||
| id строка | success | Уникальный идентификатор для этого шага сборки, используемый в `wait_for` для ссылки на этот шаг сборки в качестве зависимости. | |||||
| name строка | success | Имя образа контейнера, который будет выполнять этот шаг сборки. Если образ доступен в кэше демона Docker хоста, он будет запущен непосредственно. В противном случае хост сначала попытается скачать образ, используя учетные данные сервисного аккаунта сборщика, если необходимо. Кэш демона Docker уже содержит последние версии всех официально поддерживаемых шагов сборки (см. https://github.com/GoogleCloudPlatform/cloud-builders для получения образов и примеров). Дэмон Docker также кэширует многие слои для некоторых популярных образов, таких как "ubuntu", "debian", но они будут обновляться при попытке их использования. Если вы создали образ на предыдущем шаге сборки, он будет сохранён в кэше демона Docker хоста и доступен для использования на последующих шагах сборки. | |||||
| secretEnv список / элементы=строка | success | Список переменных окружения, зашифрованных с помощью ключа шифрования криптографической службы Cloud Key Management Service. Эти значения должны быть указаны в `Secret` сборки. | |||||
| timeout строка | success | Срок выполнения для этого шага сборки. Если не определено, для шага нет ограничения по времени, и он будет продолжать выполняться, пока не завершится или не истечёт время выполнения самой сборки. | |||||
| время выполнения строка | успешно | Только для вывода. Содержит информацию о времени выполнения этого шага сборки. | |||||
| объёмы сложный тип | успешно | Список объёмов, которые нужно смонтировать в шаг сборки. Каждый объём создаётся как пустой объём перед выполнением шага сборки. По завершении сборки, объёмы и их содержимое удаляются. Использование именованного объёма только в одном шаге недопустимо, так как это указывает на запрос сборки с некорректной конфигурацией. | |||||
| имя строка | успешно | Имя объёма для монтирования. Имена объёмов должны быть уникальными для каждого шага сборки и должны быть допустимыми именами для объёмов Docker. Каждый именованный объём должен использоваться как минимум двумя шагами сборки. | |||||
| путь строка | успешно | Путь для монтирования объёма. Пути должны быть абсолютными и не должны конфликтовать с другими путями объёмов в том же шаге сборки или с определёнными резервированными путями объёмов. | |||||
| ожидать список / элементы=строка | успешно | Идентификатор(ы) шага(ов), от которого зависит этот шаг сборки. Этот шаг сборки не начнётся, пока все шаги сборки в `ожидать` не завершатся успешно. Если `ожидать` пусто, этот шаг сборки начнётся, когда все предыдущие шаги сборки в списке `Build.Steps` завершатся успешно. | |||||
| подстановки словарь | успешно | Данные подстановок для ресурса Build. | |||||
| метки список / элементы=строка | успешно | Метки для аннотации ресурса Build. Это не теги Docker. | |||||
| таймаут строка | успешно | Время, которое должно быть выделено для выполнения данной сборки (в секундах). Если это время истечёт, работа над сборкой будет прекращена, а статус сборки будет TIMEOUT. Этот таймаут должен быть равен или больше суммарного таймаута для шагов сборки внутри сборки. Ожидаемый формат — количество секунд, за которым следует s. По умолчанию время — десять минут (600s). | |||||
| время создания строка | успешно | Время создания триггера. | |||||
| описание строка | успешно | Описание триггера, понятное для человека. | |||||
| отключено булево значение | успешно | Отключён ли триггер или нет. Если true, триггер никогда не приведёт к сборке. | |||||
| имя файла строка | успешно | Путь от корня исходного кода до файла, содержимое которого используется для шаблона. Должно быть указано либо имя файла, либо шаблон сборки. | |||||
| github сложный тип | успешно | Описание конфигурации триггера, который создаёт сборку всякий раз, когда получает событие GitHub. | |||||
| имя строка | успешно | Имя репозитория. Например: имя для https://github.com/googlecloudplatform/cloud-builders — "cloud-builders". | |||||
| владелец строка | успешно | Владелец репозитория. Например: владелец для https://github.com/googlecloudplatform/cloud-builders — "googlecloudplatform". | |||||
| pullRequest сложный тип | успешно | Фильтр для сопоставления изменений в pull запросах. Укажите только один из pullRequest или push. | |||||
| ветка строка | успешно | Регулярное выражение для сопоставления веток. | |||||
| управление комментариями строка | успешно | Блокировать ли сборки при комментарии «/gcbrun» от владельца репозитория или сотрудника. | |||||
| обратный regex булево значение | успешно | Если true, ветки, которые НЕ соответствуют git_ref, будут запускать сборку. | |||||
| push сложный тип | успешно | Фильтр для сопоставления изменений в refs, таких как ветки или теги. Укажите только один из pullRequest или push. | |||||
| ветка строка | успешно | Регулярное выражение для сопоставления веток. Укажите только один из branch или tag. | |||||
| обратный regex булево значение | успешно | Если true, сборка будет запускаться только тогда, когда ревизионное регулярное выражение НЕ соответствует регулярному выражению git_ref. | |||||
| тег строка | успешно | Регулярное выражение для сопоставления тегов. Укажите только один из branch или tag. | |||||
| id строка | успешно | Уникальный идентификатор триггера. | |||||
| проигнорированные файлы список / элементы=строка | успешно | проигнорированные файлы и включенные файлы — совпадения шаблонов файлов, используя https://golang.org/pkg/path/filepath/#Match, расширенные поддержкой `**`. Если ignoredFiles и изменённые файлы оба пустые, то они не используются для определения того, запускать ли сборку. Если ignoredFiles не пустой, то мы игнорируем любые файлы, которые соответствуют любому из шаблонов ignored_file. Если изменение не содержит файлов, которые находятся вне шаблонов ignoredFiles, то сборка не запускается. | |||||
| включённые файлы список / элементы=строка | успешно | проигнорированные файлы и включённые файлы — совпадения шаблонов файлов, используя https://golang.org/pkg/path/filepath/#Match, расширенные поддержкой `**`. Если какой-либо из файлов, изменённых в коммите, проходит фильтр ignoredFiles, а includedFiles пустой, то, с точки зрения этого фильтра, сборка должна быть запущена. Если какой-либо из файлов, изменённых в коммите, проходит фильтр ignoredFiles, а includedFiles не пустой, то мы проверяем, что хотя бы один из этих файлов соответствует шаблону includedFiles. Если нет, сборка не запускается. | |||||
| имя строка | успешно | Имя триггера. Должно быть уникальным в рамках проекта. | |||||
| подстановки словарь | успешно | Данные подстановок для ресурса Build. | |||||
| метки список / элементы=строка | успешно | Метки для аннотации BuildTrigger. | |||||
| шаблон триггера сложный тип | успешно | Шаблон, описывающий типы изменений в источнике, которые запускают сборку. Имена веток и тегов в шаблонах триггеров интерпретируются как регулярные выражения. Любое изменение ветки или тега, которое соответствует этому регулярному выражению, запустит сборку. | |||||
| имя ветки строка | успешно | Имя ветки для сборки. Должен быть указан ровно один из имени ветки, тега или SHA коммита. Это поле является регулярным выражением. | |||||
| commitSha строка | успешно | Явный SHA коммита для сборки. Должен быть указан ровно один из имени ветки, тега или SHA коммита. | |||||
| каталог строка | успешно | Каталог, относительный к корню источника, в котором необходимо выполнить сборку. Это должен быть относительный путь. Если для шага указан абсолютный путь в поле dir, это значение игнорируется для выполнения этого шага. | |||||
| invertRegex boolean | success | Вызывать сборку только если шаблон регулярных выражений для ревизии НЕ совпадает с шаблоном регулярных выражений для ревизии. | |||||
| projectId string | success | ID проекта, владеющего репозиторием Cloud Source Repository. Если опущено, используется идентификатор проекта, запрашивающего сборку. | |||||
| repoName string | success | Имя репозитория Cloud Source Repository. Если опущено, используется имя "default". | |||||
| tagName string | success | Имя тега для сборки. Должно быть указано ровно одно из имени ветки, тега или SHA коммита. Это поле является регулярным выражением. | |||||
Авторы
- Google Inc. (@googlecloudplatform)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/google/cloud/gcp_cloudbuild_trigger_info_module.html