Spec-Zone.ru › Chef 16

Ресурс google_bigquery_dataset

Синтаксис

Для проверки ресурса набора данных Google используется google_bigquery_dataset

Примеры

describe google_bigquery_dataset(project: 'chef-gcp-inspec', name: 'inspec_gcp_dataset') do
  it { should exist }

  its('friendly_name') { should eq 'A BigQuery dataset test' }
  its('location') { should eq 'EU' }
  its('description') { should eq 'Test BigQuery dataset description' }
  its('name') { should eq 'inspec_gcp_dataset' }
  its('default_table_expiration_ms') { should cmp '3600000' }
end

describe.one do
  google_bigquery_dataset(project: 'chef-gcp-inspec', name: 'inspec_gcp_dataset').access.each do |dataset_access|
    describe dataset_access do
      its('role') { should eq 'WRITER' }
      its('special_group') { should eq 'projectWriters' }
    end
  end
end

describe google_bigquery_dataset(project: 'chef-gcp-inspec', name: 'nonexistent') do
  it { should_not exist }
end

Свойства

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

access
Массив объектов, определяющих доступ к набору данных для одного или нескольких объектов.
domain
Домен, которому предоставляется доступ. Любой пользователь, вошедший в систему с указанным доменом, получит указанный доступ.
group_by_email
Адрес электронной почты группы Google, которой предоставляется доступ.
role
Описание прав, предоставленных пользователю, указанному в другом элементе доступа. Поддерживаются базовые, предопределенные и настраиваемые роли. Предопределенные роли, эквивалентные базовым ролям, API заменяет на свои базовые аналоги. См. официальную документацию.
special_group
Особая группа, которой предоставляется доступ.

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

  • projectOwners: Владельцы проекта.
  • projectReaders: Читатели проекта.
  • projectWriters: Пишущие в проект.
  • allAuthenticatedUsers: Все авторизованные пользователи BigQuery.
user_by_email
Адрес электронной почты пользователя, которому предоставляется доступ. Например: fred@example.com
iam_member
Другой тип участника, присутствующего в политике IAM, но не являющийся пользователем, группой, доменом или специальной группой. Например: allUsers
view
Вид из другого набора данных, которому предоставляется доступ. Запросы, выполненные против этого вида, будут иметь доступ для чтения к таблицам в этом наборе данных. Поле role не требуется, когда это поле установлено. Если этот вид обновляется любым пользователем, доступ к виду необходимо предоставить заново с помощью операции обновления.
dataset_id
Идентификатор набора данных, содержащего эту таблицу.
project_id
Идентификатор проекта, содержащего эту таблицу.
table_id
Идентификатор таблицы. Идентификатор должен содержать только буквы (a-z, A-Z), цифры (0-9) или символы подчеркивания (_). Максимальная длина — 1024 символа.
creation_time
Время создания этого набора данных в миллисекундах с начала эпохи.
dataset_reference
Ссылка, определяющая набор данных.
dataset_id
Уникальный идентификатор этого набора данных без имени проекта. Идентификатор должен содержать только буквы (a-z, A-Z), цифры (0-9) или символы подчеркивания (_). Максимальная длина — 1024 символа.
project_id
Идентификатор проекта, содержащего этот набор данных.
default_table_expiration_ms
Срок действия по умолчанию всех таблиц в наборе данных в миллисекундах. Минимальное значение — 3600000 миллисекунд (один час). После установки этого свойства у всех вновь созданных таблиц в наборе данных будет установлено свойство expirationTime, равное времени создания плюс значение в этом свойстве, а изменение значения будет влиять только на новые таблицы, а не на существующие. Когда expirationTime для данной таблицы истечет, эта таблица будет автоматически удалена. Если свойство expirationTime таблицы изменено или удалено до истечения срока ее действия, или если вы укажете явное значение expirationTime при создании таблицы, это значение будет иметь приоритет над временем истечения по умолчанию, указанным в этом свойстве.
default_partition_expiration_ms
Срок действия по умолчанию для всех разделяемых по частям таблиц в наборе данных в миллисекундах. После установки этого свойства у всех новых разделяемых по частям таблиц в наборе данных будет свойство expirationMs в настройках timePartitioning установлено на это значение, а изменение значения будет влиять только на новые таблицы, а не на существующие. Хранение в разделе будет иметь срок действия, равный времени раздела плюс это значение. Установка этого свойства переопределяет использование defaultTableExpirationMs для разделяемых по частям таблиц: только одно из defaultTableExpirationMs и defaultPartitionExpirationMs будет использоваться для любой новой разделяемой по частям таблицы. Если при создании или обновлении разделяемой по частям таблицы вы укажете явное значение timePartitioning.expirationMs, это значение будет иметь приоритет над временем истечения раздела по умолчанию, указанным в этом свойстве.
description
Наглядное описание набора данных.
etag
Хэш ресурса.
friendly_name
Дескриптивное имя набора данных.
id
Полное, уникальное имя набора данных в формате projectId:datasetId. Имя набора данных без имени проекта указано в поле datasetId
labels
Метки, связанные с этим набором данных. Их можно использовать для организации и группировки наборов данных.
last_modified_time
Дата последнего изменения этого набора данных или любой из его таблиц в миллисекундах с начала эпохи.
location
Географическое расположение, где должен находиться набор данных. См. официальную документацию. Существуют два типа расположений: региональные и многорегиональные. Региональное расположение — это конкретное географическое место, например Токио, а многорегиональное расположение — большая географическая зона, например США, содержащая, по крайней мере, два географических места. Возможные региональные значения: asia-east1, asia-northeast1, asia-southeast1, australia-southeast1, europe-north1, europe-west2 и us-east4. Возможные многорегиональные значения: EU и US. Значение по умолчанию — многорегиональное расположение US. Изменение этого значения приводит к созданию нового ресурса.
default_encryption_configuration
Ключ шифрования по умолчанию для всех таблиц в наборе данных. После установки этого свойства у всех новых разделяемых по частям таблиц в наборе данных будет установлен ключ шифрования, если запрос (или запрос) создания таблицы не переопределяет ключ.
kms_key_name
Описание ключа шифрования Cloud KMS, который будет использоваться для защиты целевой таблицы BigQuery. Учетная запись службы BigQuery, связанная с вашим проектом, должна иметь доступ к этому ключу шифрования.

Разрешения GCP

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

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

Spec-Zone.ru

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