google.cloud.gcp_cloudfunctions_cloud_function – Создаёт GCP CloudFunction
Примечание
Этот плагин входит в коллекцию google.cloud (версия 1.0.2).
Для его установки используйте: ansible-galaxy collection install google.cloud.
Для использования в плейбуке укажите: google.cloud.gcp_cloudfunctions_cloud_function.
Описание
- Функция облака, содержащая пользовательские вычисления, выполняемые в ответ на событие.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| auth_kind строка / обязательно |
| Тип используемых учетных данных. | |
| available_memory_mb целое число | Объем памяти в МБ, доступный для функции. | ||
| description строка | Описание функции, предоставленное пользователем. | ||
| entry_point строка | Имя функции (как определено в исходном коде), которая будет выполнена. По умолчанию — суффикс имени ресурса, если не указано. Для обратной совместимости, если функция с заданным именем не найдена, система попытается использовать функцию с именем "function". Для Node.js это имя функции, экспортированной модулем, указанным в source_location. | ||
| env_type строка | Указывает, в какой среде Ansible вы запускаете этот модуль. Это следует устанавливать только если вы знаете что делаете. Это изменяет только строку User-Agent для всех запросов API. | ||
| environment_variables словарь | Переменные среды, которые должны быть доступны во время выполнения функции. | ||
| event_trigger словарь | Источник типа HTTPS-точки входа, который можно активировать через URL. | ||
| event_type строка / обязательно | Тип события для наблюдения. Например: `providers/cloud.storage/eventTypes/object.change` и `providers/cloud.pubsub/eventTypes/topic.publish`. | ||
| resource строка / обязательно | Ресурс(ы) для наблюдения за событиями, например, `projects/_/buckets/myBucket.` . | ||
| service строка | Имя хоста службы, за которой следует наблюдать. | ||
| https_trigger словарь | Источник типа HTTPS-точки входа, который можно активировать через URL. | ||
| labels словарь | Набор пар "ключ-значение" меток, связанных с этой функцией облака. | ||
| location строка / обязательно | Расположение этой функции облака. | ||
| name строка / обязательно | Определённое пользователем имя функции. Имена функций должны быть уникальными во всем проекте и соответствовать шаблону `projects/*/locations/*/functions/*`. | ||
| project строка | Проект Google Cloud Platform, который следует использовать. | ||
| runtime строка | Среда выполнения, в которой будет выполняться функция. Если пусто, по умолчанию используется Node.js 6. | ||
| scopes список / элементы=строка | Массив используемых областей. | ||
| service_account_contents jsonarg | Содержимое файла JSON учетной записи сервиса, либо в словаре, либо в виде JSON-строки, представляющей его. | ||
| service_account_email строка | Необязательный адрес электронной почты учетной записи сервиса, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию. | ||
| service_account_file путь | Путь к файлу JSON учетной записи сервиса, если в качестве типа выбран serviceaccount. | ||
| source_archive_url строка | URL Google Cloud Storage, начинающийся с gs://, указывающий на zip-архив, содержащий функцию. | ||
| source_repository словарь | Репозиторий исходного кода, где размещена функция. | ||
| url строка / обязательно | URL, указывающий на размещённый репозиторий, где определена функция. | ||
| source_upload_url строка | Подписанный URL Google Cloud Storage, используемый для загрузки исходного кода. | ||
| state строка |
| Существование объекта в GCP. | |
| timeout строка | Тайм-аут выполнения функции. Выполнение считается неудачным и может быть прервано, если функция не завершена в течение указанного времени. По умолчанию — 60 секунд. | ||
| trigger_http булево |
| Использовать HTTP для активации этой функции. | |
Примеры
- name: create a cloud function
google.cloud.gcp_cloudfunctions_cloud_function:
name: test_object
location: us-central1
entry_point: helloGET
source_archive_url: gs://ansible-cloudfunctions-bucket/function.zip
trigger_http: 'true'
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание | |
|---|---|---|---|
| availableMemoryMb целое число | success | Объем памяти в МБ, доступный для функции. | |
| description строка | success | Описание функции, предоставленное пользователем. | |
| entryPoint строка | success | Имя функции (определённой в исходном коде), которая будет выполнена. По умолчанию — суффикс имени ресурса, если не указано иное. Для обратной совместимости, если функция с заданным именем не найдена, система попытается использовать функцию с именем "function". Для Node.js это имя функции, экспортируемой модулем, указанным в source_location. | |
| environmentVariables словарь | success | Переменные среды, которые должны быть доступны во время выполнения функции. | |
| eventTrigger сложная структура | success | Тип источника HTTPS, который может быть запущен через URL. | |
| eventType строка | success | Тип события для наблюдения. Например: `providers/cloud.storage/eventTypes/object.change` и `providers/cloud.pubsub/eventTypes/topic.publish`. | |
| resource строка | success | Ресурс(ы) для наблюдения за событиями, например, `projects/_/buckets/myBucket.` . | |
| service строка | success | Имя хоста службы, за которой должно вестись наблюдение. | |
| httpsTrigger сложная структура | success | Тип источника HTTPS, который может быть запущен через URL. | |
| url строка | success | Развёрнутый URL для функции. | |
| labels словарь | success | Набор пар ключ/значение меток, связанных с этой функцией Cloud. | |
| location строка | success | Расположение этой функции облака. | |
| name строка | success | Определённое пользователем имя функции. Имена функций должны быть уникальными глобально и соответствовать шаблону `projects/*/locations/*/functions/*`. | |
| runtime строка | success | Средства выполнения, в которых будет выполняться функция. Если пусто, по умолчанию используется Node.js 6. | |
| serviceAccountEmail строка | success | Адрес электронной почты учётной записи службы для этой функции. | |
| sourceArchiveUrl строка | success | URL Google Cloud Storage, начинающийся с gs://, указывающий на zip-архив, содержащий функцию. | |
| sourceRepository сложная структура | success | Репозиторий исходного кода, где размещена функция. | |
| deployedUrl строка | success | URL, указывающий на размещённый репозиторий, где функция была определена на момент развёртывания. | |
| url строка | success | URL, указывающий на размещённый репозиторий, где определена функция. | |
| sourceUploadUrl строка | success | Подписанный URL Google Cloud Storage, используемый для загрузки исходного кода. | |
| status строка | success | Статус развёртывания функции. | |
| timeout строка | success | Таймаут выполнения функции. Выполнение считается неудачным и может быть прервано, если функция не завершена к концу периода таймаута. По умолчанию 60 секунд. | |
| trigger_http булево | success | Использовать HTTP для запуска этой функции. | |
| updateTime строка | success | Последняя отметка времени обновления функции Cloud. | |
| versionId строка | success | Идентификатор версии функции Cloud. Каждая попытка развёртывания приводит к созданию новой версии функции. | |
Авторы
- 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_cloudfunctions_cloud_function_module.html