azure_migrate_assessment_machines Resource
Use the azure_migrate_assessment_machines InSpec audit resource to test the properties related to all Azure Migrate assessment machines within a 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.
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_migrate_assessment_machines resource block returns all Azure Migrate assessment machines within a project.
describe azure_migrate_assessment_machines(resource_group: 'RESOURCE_GROUP', project_name: 'MIGRATE_ASSESSMENT_PROJECT_NAME') do
#...
end
Parameters
resource_group(required)Azure resource group where the targeted resource resides.
project_name(required)The Azure Migrate Assessment project.
Properties
ids- Path reference to the assessment machines.
Field:
idnames- Unique names for all assessment machines.
Field:
nametypes- Type of the objects.
Field:
typeeTags- A list of eTags for all the assessment machines.
Field:
eTagproperties- A list of properties for all the assessment machines.
Field:
propertiesbootTypes- A list of boot machines.
Field:
bootTypecreatedTimestamps- Time when this machine is created.
Field:
createdTimestampdatacenterManagementServerArmIds- A list of ARM IDs of the data center as tracked by the
Microsoft.OffAzure. Field:
datacenterManagementServerArmIddatacenterManagementServerNames- Name of the servers hosting the data center management solution.
Field:
datacenterManagementServerNamedescriptions- Descriptions of all the machines.
Field:
descriptiondiscoveryMachineArmIds- A list of ARM IDs of the machine as tracked by the
Microsoft.OffAzure. Field:
discoveryMachineArmIddisks- Dictionary of disks attached to all the machines. The key is disk ID. Value is a disk object.
Field:
disksdisplayNames- User readable names of all the machines as defined by the user in their private data center.
Field:
displayNamegroups- A List of references to the groups where the machine is a member.
Field:
groupsmegabytesOfMemories- A list of memories in Megabytes.
Field:
megabytesOfMemorynetworkAdapters- Dictionary of network adapters attached to all the machines. The key is the network adapter ID. Value is a network adapter object.
Field:
networkAdaptersnumberOfCores- Processor counts.
Field:
numberOfCoresoperatingSystemTypes- Operating system types of all the machines.
Field:
operatingSystemTypeoperatingSystemNames- Operating system names of all the machines.
Field:
operatingSystemNameoperatingSystemVersions- Operating system versions of all the machines.
Field:
operatingSystemVersionupdatedTimestamps- Time when the machines are last updated.
Field:
updatedTimestamp
Note
Examples
Loop through migrate assessment machines by their names
azure_migrate_assessment_machines(resource_group: 'RESOURCE_GROUP', project_name: 'MIGRATE_ASSESSMENT_PROJECT_NAME').names.each do |name|
describe azure_migrate_assessment_machine(resource_group: 'RESOURCE_GROUP', project_name: 'MIGRATE_ASSESSMENT_PROJECT_NAME', group_name: 'MACHINE_GROUP_NAME', name: name) do
it { should exist }
end
end
Test that there are migrate assessment machines with BIOS boot type
describe azure_migrate_assessment_machines(resource_group: 'RESOURCE_GROUP', project_name: 'MIGRATE_ASSESSMENT_PROJECT_NAME').where(bootType: 'BIOS') 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 machines are present in the project and the resource group.
describe azure_migrate_assessment_machines(resource_group: 'RESOURCE_GROUP', project_name: 'MIGRATE_ASSESSMENT_PROJECT_NAME') do
it { should_not exist }
end
not_exists
# Should exist if the filter returns at least one migrate assessment machine in the project and the resource group.
describe azure_migrate_assessment_machines(resource_group: 'RESOURCE_GROUP', project_name: 'MIGRATE_ASSESSMENT_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.