azure_migrate_project_events resource
Use the azure_migrate_project_events
InSpec audit resource to test the properties related to all Azure Migrate project events within a project.
Azure REST API version, endpoint, and HTTP client parameters
This resource interacts with API versions supported by the resource provider.
You can specify the api_version
as a resource parameter to use a specific version of the Azure REST API.
If you don’t specify an API version, this resource uses the latest version available.
For more information about API versioning, see the azure_generic_resource
.
By default, this resource uses the azure_cloud
global endpoint and default HTTP client settings.
You can override these settings if you need to connect to a different Azure environment (such as Azure Government or Azure China).
For more information about configuration options, see the resource pack README.
Syntax
An azure_migrate_project_events
resource block returns all Azure Migrate project events within a project.
describe azure_migrate_project_events(resource_group: 'RESOURCE_GROUP', project_name: 'PROJECT_NAME') do
#...
end
Parameters
resource_group
- Azure resource group where the targeted resource resides.
project_name
- Azure Migrate Project.
The parameter set that should be provided for a valid query is resource_group
and project_name
.
Properties
ids
- Path reference to the project events.
Field:
id
names
- Unique names for all project events.
Field:
name
types
- Type of the objects.
Field:
type
properties
- A list of properties for all the project events.
Field:
properties
instanceTypes
- The instance types.
Field:
instanceType
machines
- The machines for which the error is reported.
Field:
machine
errorCodes
- The error codes.
Field:
errorCode
errorMessages
- The error messages.
Field:
errorMessage
recommendations
- The recommendations for the error.
Field:
recommendation
possibleCauses
- The possible causes for the error.
Field:
possibleCause
solutions
- The solutions for which the error is reported.
Field:
solution
clientRequestIds
- The client request IDs of the payload for which the event is reported.
Field:
clientRequestId
Note
For more details on the available properties, see the Azure documentation.
Examples
Loop through Migrate Project events by their names:
azure_migrate_project_events(resource_group: 'RESOURCE_GROUP', project_name: 'PROJECT_NAME').names.each do |name|
describe azure_migrate_project_event(resource_group: 'RESOURCE_GROUP', project_name: 'PROJECT_NAME', name: `PROJECT_EVENT_NAME`) do
it { should exist }
end
end
Test that there are Migrate Project events for databases:
describe azure_migrate_project_events(resource_group: 'RESOURCE_GROUP', project_name: 'PROJECT_NAME').where(instanceType: 'Databases') 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.
not_exists
# Should not exist if no migrate project events are present in the project and the resource group.
describe azure_migrate_project_events(resource_group: 'RESOURCE_GROUP', project_name: 'PROJECT_NAME') do
it { should_not exist }
end
exists
# Should exist if the filter returns at least one migrate project event in the project and the resource group.
describe azure_migrate_project_events(resource_group: 'RESOURCE_GROUP', project_name: 'PROJECT_NAME') 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.