Skip to main content

azure_migrate_assessment_groups resource

Use the azure_migrate_assessment_groups InSpec audit resource to test the properties related to all Azure Migrate assessment groups 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_assessment_groups resource block returns all Azure Migrate assessment groups within a project.

describe azure_migrate_assessment_groups(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 assessment project.

The parameter set that should be provided for a valid query is resource_group and project_name.

Properties

ids
Path reference to all the groups.

Field: id

names
Unique names for all groups.

Field: name

types
Type of the objects.

Field: type

eTags
A list of eTags for all the groups.

Field: eTag

properties
A list of properties for all the groups.

Field: properties

areAssessmentsRunnings
A list of boolean describing the assessment run state.

Field: areAssessmentsRunning

assessments
List of references to assessments created on this group.

Field: assessments

createdTimestamps
List of creation times of the groups.

Field: createdTimestamp

groupStatuses
List of creation status of the groups.

Field: groupStatus

groupTypes
List of group types.

Field: groupType

machineCounts
List of machine counts.

Field: machineCount

updatedTimestamps
List of updated timestamps of the groups.

Field: updatedTimestamp

Note

For information on using filter criteria on plural resources, see the documentation on FilterTable

Examples

Loop through migrate assessment groups by their names:

azure_migrate_assessment_groups(resource_group: 'RESOURCE_GROUP', project_name: 'PROJECT_NAME').names.each do |name|
  describe azure_migrate_assessment_group(resource_group: `RESOURCE_GROUP`, project_name: `PROJECT_NAME`, name: `NAME`) do
    it { should exist }
  end
end

Test that the assessments are running for migrating assessment groups:

describe azure_migrate_assessment_groups(resource_group: 'RESOURCE_GROUP', project_name: 'PROJECT_NAME').where(areAssessmentsRunning: true) 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 Migrate Assessment groups are present in the project.

describe azure_migrate_assessment_groups(resource_group: 'RESOURCE_GROUP', project_name: 'PROJECT_NAME') do
  it { should_not exist }
end

not_exists

# Should exist if the filter returns at least one Migrate Assessment groups in the project.

describe azure_migrate_assessment_groups(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.

Thank you for your feedback!

×