azure_migrate_assessment_project Resource
Use the azure_migrate_assessment_project
InSpec audit resource to test the properties related to an Azure Migrate assessment project.
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.
Installation
This resource is available in the Chef InSpec Azure resource pack.
See the Chef InSpec documentation on cloud platforms for information on configuring your Azure environment for InSpec and creating an InSpec profile that uses the InSpec Azure resource pack.
Syntax
name
and resource_group
are required parameters.
describe azure_migrate_assessment_project(resource_group: 'RESOURCE_GROUP', name: 'ASSESSMENT_PROJECT_NAME') do
it { should exist }
its('name') { should cmp 'ASSESSMENT_PROJECT_NAME' }
its('type') { should cmp 'Microsoft.Migrate/assessmentprojects' }
end
describe azure_migrate_assessment_project(resource_group: 'RESOURCE_GROUP', name: 'ASSESSMENT_PROJECT_NAME') do
it { should exist }
end
Parameters
name
- Name of the Azure Migrate assessment Project to test.
resource_group
- Azure resource group that the targeted project resides in.
The parameter set should be provided for a valid query:
resource_group
andname
.
Properties
id
- Path reference to the project.
name
- Name of the project.
type
- Type of the object.
eTag
- For optimistic concurrency control.
properties
- Properties of the project.
location
- Azure location in which project is created.
properties.assessmentSolutionId
- Assessment solution ARM id tracked by
Microsoft.Migrate/migrateProjects
. properties.customerStorageAccountArmId
- The ARM ID of the storage account used for interactions when public access is disabled.
properties.privateEndpointConnections
- The list of private endpoint connections to the project.
properties.numberOfMachines
- Number of machines in the project.
tags
- Tags provided by Azure Tagging service.
For properties applicable to all resources, such as type
, name
, id
, and properties
, refer to the azure_generic_resource
.
Refer to the Azure documentation for other properties available. Access any attribute in the response by separating the key names with a period (.
).
Examples
Test that the migrate assessment project has a minimum scaling factor.
describe azure_migrate_assessment_project(resource_group: 'RESOURCE_GROUP', name: 'ASSESSMENT_PROJECT_NAME') do
its('properties.numberOfGroups') { should eq 2 }
end
Matchers
This InSpec audit resource has the following special matchers. For a full list of available matchers, please visit our Universal Matchers page.
exists
# If a Migrate Assessment Project is found, it will exist
describe azure_migrate_assessment_project(resource_group: 'RESOURCE_GROUP', name: 'ASSESSMENT_PROJECT_NAME') do
it { should exist }
end
# if Migrate Assessment Project is not found, it will not exist
describe azure_migrate_assessment_project(resource_group: 'RESOURCE_GROUP', name: 'ASSESSMENT_PROJECT_NAME') do
it { should_not exist }
end
Azure Permissions
Your Service Principal must be set up with at least a contributor
role on the subscription you wish to test.