Spec-Zone.ru › Chef 16

ресурс google_storage_bucket

Синтаксис

Для проверки ресурса Google Bucket используется google_storage_bucket

Примеры

describe google_storage_bucket(name: bucket-name) do
  it { should exist }
  its('location') { should cmp 'europe-west2'.upcase }

  its('storage_class') { should eq "STANDARD" }
  its('labels') { should include("key" => "value") }
  its('retention_policy.retention_period') { should cmp 1000 }
end

describe google_storage_bucket(name: "nonexistent") do
  it { should_not exist }
end

Проверка, что ведро GCP хранилища находится в ожидаемом расположении

describe google_storage_bucket(name: 'chef-inspec-gcp-storage-bucket-abcd') do
  its('location') { should eq "EUROPE-WEST2" }
end

Проверка, что ведро GCP хранилища имеет ожидаемый номер проекта

describe google_storage_bucket(name: 'chef-inspec-gcp-storage-bucket-abcd') do
  its('project_number') {should eq 12345678 }
end

Проверка, что ведро GCP хранилища имеет ожидаемый класс хранения

describe google_storage_bucket(name: 'chef-inspec-gcp-storage-bucket-abcd') do
  its('storage_class') { should eq 'STANDARD' }
end

Свойства

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

acl
Управление доступом к ведру.
bucket
Название ведра.
domain
Домен, связанный с объектом.
email
Адрес электронной почты, связанный с объектом.
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.
entity_id
Идентификатор сущности
id
Идентификатор записи управления доступом.
project_team
Команда проекта, связанная с сущностью
project_number
Команда проекта, связанная с сущностью
team
Команда.

Возможные значения:

  • editors
  • owners
  • viewers
role
Разрешение доступа для сущности.

Возможные значения:

  • OWNER
  • READER
  • WRITER
cors
Настройка CORS (Cross-Origin Resource Sharing) ведра.

max_age_seconds : Значение в секундах, возвращаемое в заголовке Access-Control-Max-Age, используемом в ответах на предварительные запросы.

method : Список HTTP-методов, для которых включаются заголовки ответа CORS (GET, OPTIONS, POST и т. д.). Примечание: «*» разрешен в списке методов и означает «любой метод».

origin : Список источников (Origins), которым разрешены заголовки ответа CORS. Примечание: «*» разрешен в списке источников и означает «любой источник».

response_header : Список HTTP-заголовков (кроме простых заголовков ответа), разрешающих общие данные между доменными зонами.

default_event_based_hold
Автоматически применять eventBasedHold к новым объектам, добавленным в ведро.
default_object_acl
Значения по умолчанию для контроля доступа к новым объектам, если ACL не указан.
bucket
Название ведра.
domain
Домен, связанный с объектом.
email
Адрес электронной почты, связанный с объектом.
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
entity_id
Идентификатор сущности
generation
Номер генерации содержимого объекта, если он применен к объекту.
id
Идентификатор записи контроля доступа.
object
Название объекта, если он применен к объекту.
project_team
Команда проекта, связанная с сущностью
project_number
Команда проекта, связанная с сущностью
team
Команда.

Возможные значения:

  • editors
  • owners
  • viewers
role
Разрешение доступа для сущности.

Возможные значения:

  • OWNER
  • READER
id
Идентификатор ведра. Для ведер свойства id и name совпадают.
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.
is_live
Актуально только для версионированных объектов. Если значение равно true, это условие соответствует активным объектам; если значение равно false, оно соответствует архивным объектам.
matches_storage_class
Объекты, имеющие любой из указанных в этом условии классов хранения, будут соответствовать. Значения включают MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, STANDARD и DURABLE_REDUCED_AVAILABILITY.
num_newer_versions
Актуально только для версионированных объектов. Если значение равно N, это условие выполняется, когда есть как минимум N версий (включая активную версию) новее этой версии объекта.
location
Расположение ведра. Данные объектов в ведре хранятся в физическом хранилище в этом регионе. По умолчанию — US. См. руководство разработчика для получения актуального списка.
logging
Настройка ведения журнала ведра, определяющая целевое ведро и необязательный префикс имени для журналов текущего ведра.
log_bucket
Целевое ведро, в котором должны храниться журналы текущего ведра.
log_object_prefix
Префикс имен объектов журнала.
metageneration
Номер генерации метаданных этого ведра.
name
Название ведра.
owner
Владелец ведра. Это всегда группа владельцев команды проекта.
entity
Сущность в формате project-owner-projectId.
entity_id
Идентификатор сущности.
project_number
Номер проекта, к которому принадлежит ведро.
storage_class
Класс хранения по умолчанию для ведра, используемый всякий раз, когда для вновь созданного объекта не указан storageClass. Он определяет, как хранятся объекты в ведре, и определяет SLA и стоимость хранения. Значения включают MULTI_REGIONAL, REGIONAL, STANDARD, NEARLINE, COLDLINE и DURABLE_REDUCED_AVAILABILITY. Если это значение не указано при создании ведра, оно будет по умолчанию равно STANDARD. Для получения дополнительной информации см. классы хранения.

Возможные значения:

  • MULTI_REGIONAL
  • REGIONAL
  • STANDARD
  • NEARLINE
  • COLDLINE
  • DURABLE_REDUCED_AVAILABILITY
time_created
Время создания ведра в формате RFC 3339.
updated
Время изменения ведра в формате RFC 3339.
versioning
Конфигурация версии ведра.
enabled
При значении true, версия включена для этого ведра.
website
Настройка веб-сайта ведра, управляющая поведением службы при доступе к содержимому ведра как к веб-сайту. См. примеры статических веб-сайтов для получения дополнительной информации.
main_page_suffix
Если запрашиваемый путь к объекту отсутствует, служба добавит к пути завершающий «/», попытается получить соответствующий объект. Это позволяет создавать объекты index.html для представления страниц каталогов.
not_found_page
Если запрашиваемый путь к объекту отсутствует и объект mainPageSuffix отсутствует, служба вернет указанный объект из этого ведра как содержимое для результата 404 «Не найдено».
labels
Метки, примененные к этому ведру. Список пар ключ-значение.
encryption
Настройка шифрования для ведра.
default_kms_key_name
Ключ Cloud KMS, который будет использоваться для шифрования объектов, вставленных в это ведро, если метод шифрования не указан.
retention_policy
Политика хранения для ведра
effective_time
Время, с которого действовала политика хранения.
is_locked
Заблокирована ли политика хранения. Если true, политика хранения не может быть удалена, а период не может быть уменьшен.
retention_period
Период времени в секундах, в течение которого объекты в ведре должны храниться и не могут быть удалены, перезаписаны или сделаны неактуальными.
project
Действительный идентификатор проекта API.
predefined_default_object_acl
Применение предварительно определенного набора правил доступа к объектам по умолчанию для этого ведра. Допустимые значения: - «authenticatedRead»: Владелец объекта получает доступ OWNER, а все authenticatedUsers получают доступ READER. - «bucketOwnerFullControl»: Владелец ведра получает доступ OWNER, а владельцы команд проекта получают доступ OWNER. - «bucketOwnerRead»: Владелец ведра получает доступ OWNER, а владельцы команд проекта получают доступ READER. - «private»: Владелец объекта получает доступ OWNER. - «projectPrivate»: Владелец объекта получает доступ OWNER, а члены команды проекта получают доступ в соответствии с их ролями. - «publicRead»: Владелец объекта получает доступ OWNER, а все пользователи получают доступ READER.

Возможные значения:

  • authenticatedRead
  • bucketOwnerFullControl
  • bucketOwnerRead
  • private
  • projectPrivate
  • publicRead

Разрешения GCP

Убедитесь, что Google Cloud Storage включен для текущего проекта.

© 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_storage_bucket/

Spec-Zone.ru

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