Spec-Zone.ru › Chef 18

Ресурс google_storage_bucket

[редактировать на GitHub]

Синтаксис

Используется google_storage_bucket, чтобы проверить ресурс Google 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 for Business 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 ответа. Примечание: «*» разрешено в списке origins и означает «любой Origin».

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, ARCHIVE и 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, ARCHIVE и DURABLE_REDUCED_AVAILABILITY. Если это значение не указано при создании ведра, оно будет по умолчанию STANDARD. Для получения дополнительной информации см. типы хранилищ.

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

  • MULTI_REGIONAL
  • REGIONAL
  • STANDARD
  • NEARLINE
  • COLDLINE
  • ARCHIVE
  • DURABLE_REDUCED_AVAILABILITY
time_created
Время создания ведра в формате RFC 3339.
updated
Время изменения ведра в формате RFC 3339.
versioning
Настройка версионирования ведра.
enabled
При установке в true, версионирование полностью включено для этого ведра.
website
Настройка веб-сайта ведра, контролирующая поведение службы при доступе к содержимому ведра как к веб-сайту. См. примеры статических веб-сайтов для получения дополнительной информации.
main_page_suffix
Если запрошенный путь к объекту отсутствует, служба добавит к пути конечный символ '/', добавит этот суффикс и попытается извлечь полученный объект. Это позволяет создавать объекты index.html для представления страниц каталога.
not_found_page
Если запрошенный путь к объекту отсутствует, и объект mainPageSuffix отсутствует, если применимо, служба вернет указанный объект из этого ведра как содержимое для результата 404 Not Found.
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