On this page
google_compute_region resource
Syntax
A google_compute_region is used to test a Google Region resource
Beta Resource
This resource has beta fields available. To retrieve these fields, include beta: true in the constructor for the resource
Examples
describe google_compute_region(project: 'chef-gcp-inspec', name: 'europe-west2') do
it { should exist }
it { should be_up }
its('zone_names') { should include "#{gcp_location}-a" }
end
describe google_compute_region(project: 'chef-gcp-inspec', name: 'notthere') do
it { should_not exist }
end
Test that a GCP compute region exists
describe google_compute_region(project: 'chef-inspec-gcp', region: 'europe-west2') do
it { should exist }
end
Test that a GCP compute region is in the expected state
describe google_compute_region(project: 'chef-inspec-gcp', region: 'europe-west2') do
its('status') { should eq 'UP' }
# or equivalently
it { should be_up }
end
Test a GCP compute region identifier
describe google_compute_region(project: 'chef-inspec-gcp', region: "asia-east1") do
its('id') { should eq "1220" }
end
Check that a region is associated with the expected zone fully qualified name
describe google_compute_region(project: 'chef-inspec-gcp', region: "asia-east1") do
its('zones') { should include "https://www.googleapis.com/compute/v1/projects/spaterson-project/zones/asia-east1-a" }
end
Check that a region is associated with the expected zone short name
describe google_compute_region(project: 'chef-inspec-gcp', region: "asia-east1") do
its('zone_names') { should include "asia-east1-a" }
end
The zone_names property is also useful for subsequently looping over associated google_compute_zone resources. For example:
google_compute_region(project: 'chef-inspec-gcp', region: "asia-east1").zone_names.each do |zone_name|
describe google_compute_zone(project: 'chef-inspec-gcp', name: zone_name) do
it { should be_up }
end
end
Properties
Properties that can be accessed from the google_compute_region resource:
-
creation_timestamp - Creation timestamp in RFC3339 text format.
-
deprecated - The deprecation state of this resource.
-
deleted - An optional RFC3339 timestamp on or after which the deprecation state of this resource will be changed to DELETED.
-
deprecated - An optional RFC3339 timestamp on or after which the deprecation state of this resource will be changed to DEPRECATED.
-
obsolete - An optional RFC3339 timestamp on or after which the deprecation state of this resource will be changed to OBSOLETE.
-
replacement - The URL of the suggested replacement for a deprecated resource. The suggested replacement resource must be the same kind of resource as the deprecated resource.
-
state -
The deprecation state of this resource. This can be DEPRECATED, OBSOLETE, or DELETED. Operations which create a new resource using a DEPRECATED resource will return successfully, but with a warning indicating the deprecated resource and recommending its replacement. Operations which use OBSOLETE or DELETED resources will be rejected and result in an error.
Possible values:
- DEPRECATED
- OBSOLETE
- DELETED
-
description - An optional description of this resource.
-
id - The unique identifier for the resource.
-
name - Name of the resource.
-
quotas - Quotas assigned to this region.
-
metric - Name of the quota metric.
-
limit - Quota limit for this metric.
-
usage - Current usage of this metric.
-
owner - Owning resource. This is the resource on which this quota is applied.
-
status - Status of the region, either UP or DOWN. Possible values:
- UP
- DOWN
-
zones - List of zones within the region
GCP Permissions
Ensure the Compute Engine API is enabled for the current project.
© 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_region/