Модуль google.cloud.gcp_storage_bucket — Создает ведро GCP
Примечание
Этот модуль является частью коллекции google.cloud (версия 1.4.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install google.cloud. Для использования этого модуля необходимы дополнительные требования, см. Требования для получения подробной информации.
Чтобы использовать его в плейбуке, укажите: google.cloud.gcp_storage_bucket.
Обзор
- Ресурс «Ведра» представляет собой ведро в Google Cloud Storage. Существует единое глобальное пространство имён, общее для всех ведер. Дополнительную информацию см. в Требованиях к имени ведра.
- Ведра содержат объекты, к которым можно получить доступ с помощью собственных методов. Помимо свойства acl, ведра содержат bucketAccessControls, для использования при точном управлении контролем доступа к существующему ведру.
- Ведро всегда принадлежит группе владельцев проекта.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
Параметр | Комментарии |
|---|---|
access_token строка | Токен доступа OAuth2, если тип аутентификации — accesstoken. |
acl список / элементы=словарь | Управление доступом к ведру. |
|
bucket словарь / обязательно |
Имя ведра. Это поле представляет ссылку на ресурс Ведро в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом ‘name’ и значением имени вашего ресурса. Во-вторых, можно добавить `register: имя_ресурса` к задаче gcp_storage_bucket, а затем установить это поле bucket в «{{ имя_ресурса }}» |
|
entity строка / обязательно |
Сущность, имеющая разрешения, в одном из следующих форматов: user-userId user-email group-groupId group-email domain-domain project-team-projectId allUsers allAuthenticatedUsers Примеры: Пользователь liz@example.com будет user-liz@example.com. Группа example@googlegroups.com будет group-example@googlegroups.com. Для ссылки на всех членов домена Google Apps for Business example.com, сущность будет domain-example.com. |
|
entity_id строка |
Идентификатор сущности. |
|
project_team словарь |
Команда проекта, связанная с сущностью. |
|
project_number строка |
Команда проекта, связанная с сущностью. |
|
team строка |
Команда. Некоторые допустимые значения: «editors», «owners», «viewers» |
|
role строка |
Разрешение доступа для сущности. Некоторые допустимые значения: «OWNER», «READER», «WRITER» |
auth_kind строка / обязательно | Тип используемых учетных данных. Варианты:
|
cors список / элементы=словарь | Настройка совместного использования ресурсов по разным доменам (CORS) ведра. |
|
max_age_seconds целое число |
Значение, выраженное в секундах, которое возвращается в заголовке Access-Control-Max-Age, используемом в ответах на предварительные запросы. |
|
method список / элементы=строка |
Список HTTP-методов, для которых следует включать заголовки CORS-ответа (GET, OPTIONS, POST и т. д.). Примечание: «*» разрешен в списке методов и означает «любой метод». |
|
origin список / элементы=строка |
Список источников, имеющих право получать заголовки CORS-ответа. Примечание: «*» разрешен в списке источников и означает «любой источник». |
|
response_header список / элементы=строка |
Список HTTP-заголовков, помимо простых заголовков ответа, которые необходимо разрешить для обмена между доменными пространствами. |
default_event_based_hold логический | Автоматически применять eventBasedHold к новым объектам, добавленным в ведро. Варианты:
|
default_object_acl список / элементы=словарь | Основные разрешения доступа, которые следует применять к новым объектам, если ACL не указан. |
|
bucket словарь / обязательно |
Имя ведра. Это поле представляет ссылку на ресурс Ведро в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом ‘name’ и значением имени вашего ресурса. Во-вторых, можно добавить `register: имя_ресурса` к задаче gcp_storage_bucket, а затем установить это поле bucket в «{{ имя_ресурса }}» |
|
entity строка / обязательно |
Сущность, обладающая правом доступа, в одном из следующих форматов: * user-{{userId}} * user-{{email}} (например, «user-liz@example.com») * group-{{groupId}} * group-{{email}} (например, «group-example@googlegroups.com») * domain-{{domain}} (например, «domain-example.com») * project-team-{{projectId}} * allUsers * allAuthenticatedUsers . |
|
object строка |
Имя объекта, если применяется к объекту. |
|
role строка / обязательно |
Разрешение доступа для сущности. Некоторые допустимые значения: «OWNER», «READER» |
env_type строка | Указывает, в какой среде Ansible выполняется данный модуль. Не следует устанавливать, если вы не знаете, что делаете. Это изменяет только строку User Agent для всех запросов к API. |
labels словарь | Метки, применяемые к данному ведру. Список пар ключ-значение. |
lifecycle словарь | Настройка жизненного цикла ведра. См. https://developers.google.com/storage/docs/lifecycle для получения дополнительной информации. |
|
rule список / элементы=словарь |
Правило управления жизненным циклом, состоящее из действия и условия(й), при которых будет выполнено действие. |
|
action словарь |
Действие, которое будет выполнено. |
|
storage_class строка |
Целевой класс хранения. Требуется, если тип действия — SetStorageClass. |
|
type строка |
Тип действия. В настоящее время поддерживаются только Delete и SetStorageClass. Некоторые допустимые значения: «Delete», «SetStorageClass» |
|
condition словарь |
Условие(я), при котором будет выполнено действие. |
|
age_days целое число |
Возраст объекта (в днях). Это условие выполняется, когда объект достигает указанного возраста. |
|
created_before строка |
Дата в формате RFC 3339 с только датой (например, «2013-01-15»). Это условие выполняется, когда объект был создан до полуночи указанной даты в UTC. |
|
custom_time_before строка |
Дата в формате RFC 3339 YYYY-MM-DD. Это условие выполняется, когда метаданные customTime для объекта установлены на более раннюю дату, чем дата, используемая в этом условии жизненного цикла. |
|
days_since_custom_time целое число |
Дни с даты, установленной в метаданных customTime для объекта. Это условие выполняется, когда текущая дата и время находятся по меньшей мере через указанное количество дней после customTime. |
|
days_since_noncurrent_time целое число |
Актуально только для объектов с версиями. Это условие выполняется, когда объект неактуален в течение более чем указанного количества дней. |
|
is_live логическое значение |
Актуально только для объектов с версиями. Если значение true, это условие соответствует активным объектам; если значение false, оно соответствует архивированным объектам. Варианты:
|
|
matches_storage_class список / элементы=строка |
Объекты, имеющие любой из указанных в этом условии классов хранения, будут соответствовать условию. Значения включают MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD и DURABLE_REDUCED_AVAILABILITY. |
|
noncurrent_time_before строка |
Актуально только для объектов с версиями. Дата в формате RFC 3339 YYYY-MM-DD. Это условие выполняется для объектов, которые стали неактуальными в дату, предшествующую указанной в этом условии. |
|
num_newer_versions целое число |
Актуально только для объектов с версиями. Если значение равно N, это условие выполняется, когда существует по меньшей мере N версий (включая текущую версию), более новых, чем эта версия объекта. |
location string | Расположение ведра. Данные объектов в ведре хранятся в физическом хранилище в этом регионе. По умолчанию US. См. руководство разработчика для получения авторитетного списка. |
logging dictionary | Настройка ведения журнала ведра, определяющая ведро назначения и необязательное имя префикса для журналов текущего ведра. |
|
log_bucket string |
Ведро назначения, в котором должны храниться журналы текущего ведра. |
|
log_object_prefix string |
Префикс для имён объектов журнала. |
metageneration integer | Генерация метаданных этого ведра. |
name string | Имя ведра. |
owner dictionary | Владелец ведра. Это всегда группа владельцев проекта. |
|
entity string |
Сущность в формате project-owner-projectId. |
predefined_default_object_acl string | Применить предопределённый набор прав доступа по умолчанию к объектам этого ведра. Допустимые значения: - “authenticatedRead”: Владелец объекта получает доступ OWNER, а все authenticatedUsers получают доступ READER.
Некоторые допустимые значения включают: “authenticatedRead”, “bucketOwnerFullControl”, “bucketOwnerRead”, “private”, “projectPrivate”, “publicRead” |
project string | Проект Google Cloud Platform для использования. |
scopes list / elements=string | Массив используемых областей. |
service_account_contents jsonarg | Содержимое файла JSON учётной записи сервиса, либо в виде словаря, либо в виде JSON-строки, его представляющей. |
service_account_email string | Необязательный адрес электронной почты учётной записи сервиса, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию. |
service_account_file path | Путь к файлу JSON учётной записи сервиса, если serviceaccount выбран в качестве типа. |
state string | Должен ли заданный объект существовать в GCP Варианты:
|
storage_class string | Стандартный класс хранения ведра, используемый в случае, если для вновь созданного объекта не указан storageClass. Это определяет, как хранятся объекты в ведре, и определяет SLA и стоимость хранения. Значения включают MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE и DURABLE_REDUCED_AVAILABILITY. Если это значение не указано при создании ведра, оно будет по умолчанию STANDARD. Для получения дополнительной информации см. классы хранения. Некоторые допустимые значения включают: “MULTI_REGIONAL”, “REGIONAL”, “STANDARD”, “NEARLINE”, “COLDLINE”, “ARCHIVE”, “DURABLE_REDUCED_AVAILABILITY” |
versioning dictionary | Настройка версии ведра. |
|
enabled boolean |
Включена версия ведра. Варианты:
|
website dictionary | Настройка веб-сайта ведра, контролирующая поведение службы при доступе к содержимому ведра как к веб-сайту. См. примеры статических веб-сайтов для получения дополнительной информации. |
|
main_page_suffix string |
Если запрашиваемый путь к объекту отсутствует, служба гарантирует, что путь имеет конечный '/', добавит этот суффикс и попытается получить соответствующий объект. Это позволяет создавать объекты index.html для представления страниц каталогов. |
|
not_found_page string |
Если запрашиваемый путь к объекту отсутствует, и любой объект mainPageSuffix отсутствует (применимо), служба вернёт указанный объект из этого ведра как контент для результата 404 Not Found. |
Примеры
- name: create a bucket
google.cloud.gcp_storage_bucket:
name: ansible-storage-module
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для данного модуля:
Ключ | Описание |
|---|---|
acl сложный | Управление доступом к ведру. Возвращается: успешно |
|
bucket словарь |
Имя ведра. Возвращается: успешно |
|
domain строка |
Домен, связанный с сущностью. Возвращается: успешно |
|
строка |
Электронный адрес, связанный с сущностью. Возвращается: успешно |
|
entity строка |
Сущность, обладающая правом доступа, в одном из следующих форматов: user-userId user-email group-groupId group-email domain-domain project-team-projectId allUsers allAuthenticatedUsers Примеры: Пользователь liz@example.com будет user-liz@example.com. Группа example@googlegroups.com будет group-example@googlegroups.com. Для указания всех членов домена Google Apps для бизнеса example.com, сущность будет domain-example.com. Возвращается: успешно |
|
entityId строка |
Идентификатор сущности. Возвращается: успешно |
|
id строка |
Идентификатор записи управления доступом. Возвращается: успешно |
|
projectTeam сложный |
Команда проекта, связанная с сущностью. Возвращается: успешно |
|
projectNumber строка |
Команда проекта, связанная с сущностью. Возвращается: успешно |
|
team строка |
Команда. Возвращается: успешно |
|
role строка |
Разрешение доступа для сущности. Возвращается: успешно |
cors сложный | Настройка совместного использования ресурсов по разным доменам (CORS) для ведра. Возвращается: успешно |
|
maxAgeSeconds целое число |
Значение в секундах, возвращаемое в заголовке Access-Control-Max-Age, используемом в ответах на запросы предварительной обработки. Возвращается: успешно |
|
method список / элементы=строка |
Список HTTP-методов, для которых следует включать заголовки CORS ответа (GET, OPTIONS, POST и т. д.). Примечание: «*» разрешено в списке методов и означает «любой метод». Возвращается: успешно |
|
origin список / элементы=строка |
Список источников, имеющих право на получение заголовков CORS ответа. Примечание: «*» разрешено в списке источников и означает «любой источник». Возвращается: успешно |
|
responseHeader список / элементы=строка |
Список HTTP-заголовков, помимо простых заголовков ответа, для предоставления разрешения пользовательскому агенту на совместное использование данных между доменами. Возвращается: успешно |
defaultEventBasedHold логическое | Автоматическое применение eventBasedHold к новым объектам, добавляемым в ведро. Возвращается: успешно |
defaultObjectAcl сложный | Управление доступом по умолчанию для новых объектов, если ACL не указан. Возвращается: успешно |
|
bucket словарь |
Имя ведра. Возвращается: успешно |
|
domain string |
Домен, связанный с сущностью. Возвращено: success |
|
string |
Адрес электронной почты, связанный с сущностью. Возвращено: success |
|
entity string |
Сущность, владеющая разрешением, в одном из следующих форматов: * user-{{userId}} * user-{{email}} (например, “user-liz@example.com”) * group-{{groupId}} * group-{{email}} (например, “group-example@googlegroups.com”) * domain-{{domain}} (например, “domain-example.com”) * project-team-{{projectId}} * allUsers * allAuthenticatedUsers . Возвращено: success |
|
entityId string |
ID сущности. Возвращено: success |
|
generation integer |
Поколение контента объекта, если применяется к объекту. Возвращено: success |
|
id string |
ID записи контроля доступа. Возвращено: success |
|
object string |
Имя объекта, если применяется к объекту. Возвращено: success |
|
projectTeam complex |
Команда проекта, связанная с сущностью. Возвращено: success |
|
projectNumber string |
Команда проекта, связанная с сущностью. Возвращено: success |
|
team string |
Команда. Возвращено: success |
|
role string |
Разрешение на доступ для сущности. Возвращено: success |
id string | ID бакета. Для бакетов свойства id и name совпадают. Возвращено: success |
labels dictionary | Метки, примененные к этому бакету. Список пар ключ->значение. Возвращено: success |
lifecycle complex | Конфигурация жизненного цикла бакета. См. https://developers.google.com/storage/docs/lifecycle для получения дополнительной информации. Возвращено: success |
|
rule complex |
Правило управления жизненным циклом, которое состоит из действия, которое нужно выполнить, и условия (условий), при которых действие будет выполнено. Возвращено: success |
|
action complex |
Действие, которое нужно выполнить. Возвращено: success |
|
storageClass string |
Целевой класс хранилища. Требуется, если тип действия — SetStorageClass. Возвращено: success |
|
type string |
Тип действия. В настоящее время поддерживаются только Delete и SetStorageClass. Возвращено: success |
|
condition complex |
Условие (условия), при которых действие будет выполнено. Возвращено: success |
|
ageDays integer |
Возраст объекта (в днях). Это условие выполняется, когда объект достигает указанного возраста. Возвращено: success |
|
createdBefore string |
Дата в формате RFC 3339, содержащая только часть даты (например, “2013-01-15”). Это условие выполняется, когда объект создан до полуночи указанной даты по UTC. Возвращено: success |
|
customTimeBefore string |
Дата в формате RFC 3339 YYYY-MM-DD. Это условие выполняется, когда пользовательская метка времени объекта customTime установлена на более раннюю дату, чем дата, используемая в этом условии жизненного цикла. Возвращено: success |
|
daysSinceCustomTime integer |
Дни с момента установки даты в пользовательской метке времени customTime для объекта. Это условие выполняется, когда текущая дата и время находятся по крайней мере через указанное количество дней после customTime. Возвращено: success |
|
daysSinceNoncurrentTime integer |
Актуально только для версионированных объектов. Это условие выполняется, когда объект неактуален более указанного количества дней. Возвращено: success |
|
isLive boolean |
Актуально только для версионированных объектов. Если значение равно true, это условие соответствует активным объектам; если значение равно false, оно соответствует архивным объектам. Возвращено: success |
|
matchesStorageClass list / elements=string |
Объекты, имеющие любой из указанных в этом условии типов хранения, будут сопоставлены. Значения включают MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE, STANDARD и DURABLE_REDUCED_AVAILABILITY. Возвращено: success |
|
noncurrentTimeBefore string |
Актуально только для версионированных объектов. Дата в формате RFC 3339 YYYY-MM-DD. Это условие выполняется для объектов, которые стали неактуальными в дату, предшествующую указанной в этом условии. Возвращено: success |
|
numNewerVersions integer |
Актуально только для версионированных объектов. Если значение равно N, это условие выполняется, когда существует по крайней мере N версий (включая текущую версию) более новых, чем эта версия объекта. Возвращено: success |
location string | Расположение ведра. Данные объекта для объектов в ведре хранятся в физическом хранилище в этом регионе. По умолчанию US. См. руководство разработчика для получения авторитетного списка. Возвращено: success |
logging complex | Настройка ведения журнала ведра, которая определяет целевое ведро и необязательный префикс имени для журналов текущего ведра. Возвращено: success |
|
logBucket string |
Целевое ведро, в котором должны храниться журналы текущего ведра. Возвращено: success |
|
logObjectPrefix string |
Префикс для имён объектов журнала. Возвращено: success |
metageneration integer | Генерация метаданных этого ведра. Возвращено: success |
name string | Название ведра. Возвращено: success |
owner complex | Владелец ведра. Это всегда группа владельцев проекта. Возвращено: success |
|
entity string |
Сущность в формате project-owner-projectId. Возвращено: success |
|
entityId string |
Идентификатор сущности. Возвращено: success |
predefinedDefaultObjectAcl string | Применить предопределенный набор прав доступа по умолчанию к объектам этого ведра. Допустимые значения: - “authenticatedRead”: Владелец объекта получает доступ OWNER, а всеAuthenticatedUsers получают доступ READER.
Возвращено: success |
project string | Идентификатор проекта API. Возвращено: success |
projectNumber string | Номер проекта, к которому принадлежит ведро. Возвращено: success |
storageClass string | Базовый класс хранения ведра, используемый всякий раз, когда для нового объекта не указан storageClass. Это определяет, как хранятся объекты в ведре, и определяет SLA и стоимость хранения. Значения включают MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE, ARCHIVE и DURABLE_REDUCED_AVAILABILITY. Если это значение не указано при создании ведра, оно будет по умолчанию STANDARD. Дополнительную информацию см. в разделе классы хранения. Возвращено: success |
timeCreated string | Время создания ведра в формате RFC 3339. Возвращено: success |
updated string | Время изменения ведра в формате RFC 3339. Возвращено: success |
versioning complex | Настройка версионирования ведра. Возвращено: success |
|
enabled boolean |
Включено версионирование для этого ведра. Возвращено: success |
website complex | Настройка веб-сайта ведра, контролирующая поведение сервиса при доступе к содержимому ведра как к веб-сайту. Дополнительную информацию см. в примерах статических веб-сайтов. Возвращено: success |
|
mainPageSuffix string |
Если запрошенного пути к объекту нет, сервис обеспечит наличие конечного «/», добавит этот суффикс и попытается получить полученный объект. Это позволяет создавать объекты index.html для представления страниц каталога. Возвращено: success |
|
notFoundPage string |
Если запрошенного пути к объекту нет и любой объект mainPageSuffix отсутствует, применимо, служба вернёт указанный объект из этого ведра как содержимое для результата 404 «Не найдено». Возвращено: success |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/google/cloud/gcp_storage_bucket_module.html