Spec-Zone.ru › Chef 16

Ресурс google_compute_disk

Синтаксис

Используется google_compute_disk, чтобы протестировать ресурс Google Диск.

Ресурс бета-версии

Этот ресурс имеет доступные поля бета-версии. Для получения этих полей включите beta: true в конструктор ресурса.

Примеры


most_recent_image = google_compute_image(project: 'debian-cloud', name: 'debian-10-buster-v20191014')

describe google_compute_disk(project: 'chef-gcp-inspec', name: 'inspec-snapshot-disk', zone: 'zone') do
  it { should exist }
  # Test that the image is the most recent image for the family
  its('source_image') { should match most_recent_image.self_link }
  its('type') { should match 'pd-standard' }
end

describe.one do
  google_compute_disk(project: 'chef-gcp-inspec', name: 'inspec-snapshot-disk', zone: 'zone').labels.each_pair do |key, value|
    describe key do
      it { should cmp "environment" }
    end
  end
end

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

Свойства

Свойства, к которым можно получить доступ из ресурса google_compute_disk:

label_fingerprint
Отпечаток, используемый для оптимистической блокировки этого ресурса. Используется во внутренних обновлениях.
creation_timestamp
Дата создания в формате RFC3339.
description
Необязательное описание этого ресурса. Укажите это свойство при создании ресурса.
id
Уникальный идентификатор ресурса.
last_attach_timestamp
Дата последнего подключения в формате RFC3339.
last_detach_timestamp
Дата последнего отсоединения в формате RFC3339.
labels
Метки, применяемые к этому диску. Список пар ключ-значение.
licenses
Все применимые публично видимые лицензии.
name
Имя ресурса. Предоставляется клиентом при создании ресурса. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. То есть, имя должно быть длиной от 1 до 63 символов и соответствовать регулярному выражению [a-z]([-a-z0-9]*[a-z0-9])?, что означает, что первый символ должен быть строчной буквой, а все последующие символы должны быть дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом.
size_gb
Размер постоянного диска в ГБ. Вы можете указать это поле при создании постоянного диска с помощью параметра sourceImage или sourceSnapshot, или указать его отдельно для создания пустого постоянного диска. Если вы укажете это поле вместе с sourceImage или sourceSnapshot, значение sizeGb не должно быть меньше размера sourceImage или размера снимка.
users
Ссылки на пользователей диска (подключенные экземпляры) в формате: project/zones/zone/instances/instance
physical_block_size_bytes
Физический размер блока постоянного диска в байтах. Если он отсутствует в запросе, используется значение по умолчанию. В настоящее время поддерживаются размеры 4096 и 16384; другие размеры могут быть добавлены в будущем. Если запрашивается неподдерживаемое значение, сообщение об ошибке перечислит поддерживаемые значения для проекта вызывающего.
type
URL ресурса типа диска, описывающего тип диска, который следует использовать для создания диска. Укажите его при создании диска.
source_image
Исходный образ, используемый для создания этого диска. Если исходный образ удален, это поле не будет установлено. Для создания диска с одним из общедоступных образов операционной системы укажите имя семейства образа. Например, укажите family/debian-8, чтобы использовать последний образ Debian 8: projects/debian-cloud/global/images/family/debian-8. В качестве альтернативы, используйте определенную версию общедоступного образа операционной системы: projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD. Для создания диска с частным образом, который вы создали, укажите имя образа в следующем формате: global/images/my-private-image. Вы также можете указать частный образ по его семейству образов, которое возвращает последнюю версию образа в этом семействе. Замените имя образа на family/family-name: global/images/family/my-private-family
resource_policies
(Только для бета-версии) Политики ресурсов, применяемые к этому диску для автоматического создания снимков.
zone
Ссылка на зону, в которой находится диск.
source_image_encryption_key
Ключ шифрования, предоставленный клиентом, для исходного образа. Требуется, если исходный образ защищен ключом шифрования, предоставленным клиентом.
raw_key
Указывает 256-битный ключ шифрования, предоставленный клиентом, закодированный в формате base64 RFC 4648 для шифрования или расшифровки этого ресурса.
sha256
SHA-256 хэш ключа шифрования, предоставленного клиентом (в кодировке base64 RFC 4648), который защищает этот ресурс.
kms_key_name
Имя ключа шифрования, хранящегося в Google Cloud KMS.
source_image_id
Идентификатор образа, используемого для создания этого диска. Это значение идентифицирует конкретный образ, который использовался для создания этого постоянного диска. Например, если вы создали постоянный диск из образа, который позже был удален и воссоздан под тем же именем, идентификатор исходного образа будет идентифицировать точную версию образа, которая использовалась.
disk_encryption_key
Шифрует диск с помощью ключа шифрования, предоставленного клиентом. После шифрования диска с помощью ключа, предоставленного клиентом, вы должны предоставить тот же ключ, если вы используете диск позже (например, для создания снимка диска или образа, или для подключения диска к виртуальной машине). Ключи шифрования, предоставленные клиентом, не защищают доступ к метаданным диска. Если вы не предоставите ключ шифрования при создании диска, то диск будет зашифрован с помощью автоматически сгенерированного ключа, и вам не нужно предоставлять ключ для дальнейшего использования диска.
raw_key
Указывает 256-битный ключ шифрования, предоставленный клиентом, закодированный в формате base64 RFC 4648 для шифрования или расшифровки этого ресурса.
sha256
SHA-256 хэш ключа шифрования, предоставленного клиентом (в кодировке base64 RFC 4648), который защищает этот ресурс.
kms_key_name
Имя ключа шифрования, хранящегося в Google Cloud KMS. Учетная запись системы Compute Engine вашего проекта (service-{{PROJECT_NUMBER}}@compute-system.iam.gserviceaccount.com) должна иметь roles/cloudkms.cryptoKeyEncrypterDecrypter, чтобы использовать эту функцию.
source_snapshot
Исходный снимок, используемый для создания этого диска. Вы можете предоставить его как частичный или полный URL к ресурсу. Если снимок находится в другом проекте, чем этот диск, вы должны предоставить полный URL. Например, следующие значения являются допустимыми:
  • https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot
  • projects/project/global/snapshots/snapshot
  • global/snapshots/snapshot
source_snapshot_encryption_key
Ключ шифрования, предоставленный клиентом, для исходного снимка. Требуется, если исходный снимок защищен ключом шифрования, предоставленным клиентом.
raw_key
Указывает 256-битный ключ шифрования, предоставленный клиентом, закодированный в формате base64 RFC 4648 для шифрования или расшифровки этого ресурса.
kms_key_name
Имя ключа шифрования, хранящегося в Google Cloud KMS.
sha256
SHA-256 хэш ключа шифрования, предоставленного клиентом (в кодировке base64 RFC 4648), который защищает этот ресурс.
source_snapshot_id
Уникальный идентификатор снимка, используемого для создания этого диска. Это значение идентифицирует конкретный снимок, который использовался для создания этого постоянного диска. Например, если вы создали постоянный диск из снимка, который позже был удален и воссоздан под тем же именем, идентификатор исходного снимка будет идентифицировать точную версию снимка, которая использовалась.

Разрешения GCP

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

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

Spec-Zone.ru

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