azure_resource_health_availability_statuses Resource
Use the azure_resource_health_availability_statuses
InSpec audit resource to test the properties related to all Azure Availability Statuses for the subscription.
Azure REST API Version, Endpoint, and HTTP Client Parameters
This resource interacts with API versions supported by the resource provider.
The api_version
can be defined as a resource parameter.
If not provided, this resource uses the latest version.
For more information, refer to the azure_generic_resource
document.
Unless defined, this resource uses the azure_cloud
global endpoint and default values for the HTTP client.
For more information, refer to the resource pack README.
Install
This resource is available in the Chef InSpec Azure resource pack.
For information on configuring your Azure environment for Chef InSpec and creating an InSpec profile that uses the InSpec Azure resource pack, see the Chef InSpec documentation for the Azure cloud platform.
Syntax
An azure_resource_health_availability_statuses
resource block returns all Azure Availability Statuses within a subscription.
describe azure_resource_health_availability_statuses do
#...
end
Parameters
This resource does not require any parameters.
Properties
ids
- A list of the Azure Resource Manager Identity for the
availabilityStatuses
resources. Field:
id
names
- current.
Field:
name
types
Microsoft.ResourceHealth/AvailabilityStatuses
.Field:
type
properties
- A list of Properties of availability state.
Field:
properties
locations
- A list of Azure Resource Manager geo locations of the resource.
Field:
location
Note
Examples
Loop through availability statuses by resource ID
azure_resource_health_availability_statuses.ids.each do |id|
describe azure_resource_health_availability_status(resource_id: id) do
it { should exist }
end
end
Test that there are availability statuses that have an ‘Available’ availability state
describe azure_resource_health_availability_statuses.where{ properties.select{|prop| prop.availabilityState == 'Available' } } do
it { should exist }
end
Matchers
For a full list of available matchers, see our Universal Matchers page.This resource has the following special matchers.
exists
# Should not exist if no availability statuses are present in the subscription.
describe azure_resource_health_availability_statuses do
it { should_not exist }
end
not_exists
# Should exist if the filter returns at least one availability status in the subscription.
describe azure_resource_health_availability_statuses do
it { should exist }
end
Azure Permissions
Your Service Principal must be set up with at least a contributor
role on the subscription you wish to test.