Skip to content

Commit

Permalink
feat(vmmigration)!: update the API
Browse files Browse the repository at this point in the history
BREAKING CHANGE: This release has breaking changes.

#### vmmigration:v1alpha1

The following keys were deleted:
- schemas.AwsSourceDetails.properties.accessKeyId.description
- schemas.AwsSourceDetails.properties.accessKeyId.type
- schemas.AwsSourceDetails.properties.inventoryTags.additionalProperties.type
- schemas.AwsSourceDetails.properties.inventoryTags.description
- schemas.AwsSourceDetails.properties.inventoryTags.type
- schemas.AwsSourceDetails.properties.secretAccessKey.description
- schemas.AwsSourceDetails.properties.secretAccessKey.type

The following keys were changed:
- schemas.MigratingVm.properties.currentSyncInfo.description
- title

#### vmmigration:v1

The following keys were added:
- schemas.AccessKeyCredentials.description
- schemas.AccessKeyCredentials.id
- schemas.AccessKeyCredentials.properties.accessKeyId.description
- schemas.AccessKeyCredentials.properties.accessKeyId.type
- schemas.AccessKeyCredentials.properties.secretAccessKey.description
- schemas.AccessKeyCredentials.properties.secretAccessKey.type
- schemas.AccessKeyCredentials.type
- schemas.AwsSecurityGroup.description
- schemas.AwsSecurityGroup.id
- schemas.AwsSecurityGroup.properties.id.description
- schemas.AwsSecurityGroup.properties.id.type
- schemas.AwsSecurityGroup.properties.name.description
- schemas.AwsSecurityGroup.properties.name.type
- schemas.AwsSecurityGroup.type
- schemas.AwsSourceDetails.description
- schemas.AwsSourceDetails.id
- schemas.AwsSourceDetails.properties.accessKeyCreds.$ref
- schemas.AwsSourceDetails.properties.accessKeyCreds.description
- schemas.AwsSourceDetails.properties.awsRegion.description
- schemas.AwsSourceDetails.properties.awsRegion.type
- schemas.AwsSourceDetails.properties.error.$ref
- schemas.AwsSourceDetails.properties.error.description
- schemas.AwsSourceDetails.properties.error.readOnly
- schemas.AwsSourceDetails.properties.inventorySecurityGroupNames.description
- schemas.AwsSourceDetails.properties.inventorySecurityGroupNames.items.type
- schemas.AwsSourceDetails.properties.inventorySecurityGroupNames.type
- schemas.AwsSourceDetails.properties.inventoryTagList.description
- schemas.AwsSourceDetails.properties.inventoryTagList.items.$ref
- schemas.AwsSourceDetails.properties.inventoryTagList.type
- schemas.AwsSourceDetails.properties.migrationResourcesUserTags.additionalProperties.type
- schemas.AwsSourceDetails.properties.migrationResourcesUserTags.description
- schemas.AwsSourceDetails.properties.migrationResourcesUserTags.type
- schemas.AwsSourceDetails.properties.publicIp.description
- schemas.AwsSourceDetails.properties.publicIp.readOnly
- schemas.AwsSourceDetails.properties.publicIp.type
- schemas.AwsSourceDetails.properties.state.description
- schemas.AwsSourceDetails.properties.state.enum
- schemas.AwsSourceDetails.properties.state.enumDescriptions
- schemas.AwsSourceDetails.properties.state.readOnly
- schemas.AwsSourceDetails.properties.state.type
- schemas.AwsSourceDetails.type
- schemas.AwsSourceVmDetails.description
- schemas.AwsSourceVmDetails.id
- schemas.AwsSourceVmDetails.properties.committedStorageBytes.description
- schemas.AwsSourceVmDetails.properties.committedStorageBytes.format
- schemas.AwsSourceVmDetails.properties.committedStorageBytes.type
- schemas.AwsSourceVmDetails.properties.firmware.description
- schemas.AwsSourceVmDetails.properties.firmware.enum
- schemas.AwsSourceVmDetails.properties.firmware.enumDescriptions
- schemas.AwsSourceVmDetails.properties.firmware.type
- schemas.AwsSourceVmDetails.type
- schemas.AwsVmDetails.description
- schemas.AwsVmDetails.id
- schemas.AwsVmDetails.properties.architecture.description
- schemas.AwsVmDetails.properties.architecture.enum
- schemas.AwsVmDetails.properties.architecture.enumDescriptions
- schemas.AwsVmDetails.properties.architecture.type
- schemas.AwsVmDetails.properties.bootOption.description
- schemas.AwsVmDetails.properties.bootOption.enum
- schemas.AwsVmDetails.properties.bootOption.enumDescriptions
- schemas.AwsVmDetails.properties.bootOption.type
- schemas.AwsVmDetails.properties.committedStorageMb.description
- schemas.AwsVmDetails.properties.committedStorageMb.format
- schemas.AwsVmDetails.properties.committedStorageMb.type
- schemas.AwsVmDetails.properties.cpuCount.description
- schemas.AwsVmDetails.properties.cpuCount.format
- schemas.AwsVmDetails.properties.cpuCount.type
- schemas.AwsVmDetails.properties.diskCount.description
- schemas.AwsVmDetails.properties.diskCount.format
- schemas.AwsVmDetails.properties.diskCount.type
- schemas.AwsVmDetails.properties.displayName.description
- schemas.AwsVmDetails.properties.displayName.type
- schemas.AwsVmDetails.properties.instanceType.description
- schemas.AwsVmDetails.properties.instanceType.type
- schemas.AwsVmDetails.properties.memoryMb.description
- schemas.AwsVmDetails.properties.memoryMb.format
- schemas.AwsVmDetails.properties.memoryMb.type
- schemas.AwsVmDetails.properties.osDescription.description
- schemas.AwsVmDetails.properties.osDescription.type
- schemas.AwsVmDetails.properties.powerState.description
- schemas.AwsVmDetails.properties.powerState.enum
- schemas.AwsVmDetails.properties.powerState.enumDescriptions
- schemas.AwsVmDetails.properties.powerState.readOnly
- schemas.AwsVmDetails.properties.powerState.type
- schemas.AwsVmDetails.properties.securityGroups.description
- schemas.AwsVmDetails.properties.securityGroups.items.$ref
- schemas.AwsVmDetails.properties.securityGroups.type
- schemas.AwsVmDetails.properties.sourceDescription.description
- schemas.AwsVmDetails.properties.sourceDescription.type
- schemas.AwsVmDetails.properties.sourceId.description
- schemas.AwsVmDetails.properties.sourceId.type
- schemas.AwsVmDetails.properties.tags.additionalProperties.type
- schemas.AwsVmDetails.properties.tags.description
- schemas.AwsVmDetails.properties.tags.type
- schemas.AwsVmDetails.properties.virtualizationType.description
- schemas.AwsVmDetails.properties.virtualizationType.enum
- schemas.AwsVmDetails.properties.virtualizationType.enumDescriptions
- schemas.AwsVmDetails.properties.virtualizationType.type
- schemas.AwsVmDetails.properties.vmId.description
- schemas.AwsVmDetails.properties.vmId.type
- schemas.AwsVmDetails.properties.vpcId.description
- schemas.AwsVmDetails.properties.vpcId.type
- schemas.AwsVmDetails.properties.zone.description
- schemas.AwsVmDetails.properties.zone.type
- schemas.AwsVmDetails.type
- schemas.AwsVmsDetails.description
- schemas.AwsVmsDetails.id
- schemas.AwsVmsDetails.properties.details.description
- schemas.AwsVmsDetails.properties.details.items.$ref
- schemas.AwsVmsDetails.properties.details.type
- schemas.AwsVmsDetails.type
- schemas.FetchInventoryResponse.properties.awsVms.$ref
- schemas.FetchInventoryResponse.properties.awsVms.description
- schemas.MigratingVm.properties.awsSourceVmDetails.$ref
- schemas.MigratingVm.properties.awsSourceVmDetails.description
- schemas.MigratingVm.properties.awsSourceVmDetails.readOnly
- schemas.Source.properties.aws.$ref
- schemas.Source.properties.aws.description
- schemas.Tag.description
- schemas.Tag.id
- schemas.Tag.properties.key.description
- schemas.Tag.properties.key.type
- schemas.Tag.properties.value.description
- schemas.Tag.properties.value.type
- schemas.Tag.type

The following keys were changed:
- schemas.MigratingVm.properties.currentSyncInfo.description
- title
  • Loading branch information
yoshi-automation authored and sofisl committed Feb 2, 2023
1 parent 07babc3 commit 99b557a
Show file tree
Hide file tree
Showing 4 changed files with 503 additions and 37 deletions.
305 changes: 302 additions & 3 deletions discovery/vmmigration-v1.json
Original file line number Diff line number Diff line change
Expand Up @@ -1972,9 +1972,24 @@
}
}
},
"revision": "20221213",
"revision": "20230126",
"rootUrl": "https://vmmigration.googleapis.com/",
"schemas": {
"AccessKeyCredentials": {
"description": "Message describing AWS Credentials using access key id and secret.",
"id": "AccessKeyCredentials",
"properties": {
"accessKeyId": {
"description": "AWS access key ID.",
"type": "string"
},
"secretAccessKey": {
"description": "Input only. AWS secret access key.",
"type": "string"
}
},
"type": "object"
},
"AdaptingOSStep": {
"description": "AdaptingOSStep contains specific step details.",
"id": "AdaptingOSStep",
Expand Down Expand Up @@ -2057,6 +2072,262 @@
},
"type": "object"
},
"AwsSecurityGroup": {
"description": "AwsSecurityGroup describes a security group of an AWS VM.",
"id": "AwsSecurityGroup",
"properties": {
"id": {
"description": "The AWS security group id.",
"type": "string"
},
"name": {
"description": "The AWS security group name.",
"type": "string"
}
},
"type": "object"
},
"AwsSourceDetails": {
"description": "AwsSourceDetails message describes a specific source details for the AWS source type.",
"id": "AwsSourceDetails",
"properties": {
"accessKeyCreds": {
"$ref": "AccessKeyCredentials",
"description": "AWS Credentials using access key id and secret."
},
"awsRegion": {
"description": "Immutable. The AWS region that the source VMs will be migrated from.",
"type": "string"
},
"error": {
"$ref": "Status",
"description": "Output only. Provides details on the state of the Source in case of an error.",
"readOnly": true
},
"inventorySecurityGroupNames": {
"description": "AWS security group names to limit the scope of the source inventory.",
"items": {
"type": "string"
},
"type": "array"
},
"inventoryTagList": {
"description": "AWS resource tags to limit the scope of the source inventory.",
"items": {
"$ref": "Tag"
},
"type": "array"
},
"migrationResourcesUserTags": {
"additionalProperties": {
"type": "string"
},
"description": "User specified tags to add to every M2VM generated resource in AWS. These tags will be set in addition to the default tags that are set as part of the migration process. The tags must not begin with the reserved prefix `m2vm`.",
"type": "object"
},
"publicIp": {
"description": "Output only. The source's public IP. All communication initiated by this source will originate from this IP.",
"readOnly": true,
"type": "string"
},
"state": {
"description": "Output only. State of the source as determined by the health check.",
"enum": [
"STATE_UNSPECIFIED",
"PENDING",
"FAILED",
"ACTIVE"
],
"enumDescriptions": [
"The state is unknown. This is used for API compatibility only and is not used by the system.",
"The state was not sampled by the health checks yet.",
"The source is available but might not be usable yet due to invalid credentials or another reason. The error message will contain further details.",
"The source exists and its credentials were verified."
],
"readOnly": true,
"type": "string"
}
},
"type": "object"
},
"AwsSourceVmDetails": {
"description": "Represent the source AWS VM details.",
"id": "AwsSourceVmDetails",
"properties": {
"committedStorageBytes": {
"description": "The total size of the disks being migrated in bytes.",
"format": "int64",
"type": "string"
},
"firmware": {
"description": "The firmware type of the source VM.",
"enum": [
"FIRMWARE_UNSPECIFIED",
"EFI",
"BIOS"
],
"enumDescriptions": [
"The firmware is unknown.",
"The firmware is EFI.",
"The firmware is BIOS."
],
"type": "string"
}
},
"type": "object"
},
"AwsVmDetails": {
"description": "AwsVmDetails describes a VM in AWS.",
"id": "AwsVmDetails",
"properties": {
"architecture": {
"description": "The CPU architecture.",
"enum": [
"VM_ARCHITECTURE_UNSPECIFIED",
"I386",
"X86_64",
"ARM64",
"X86_64_MAC"
],
"enumDescriptions": [
"The architecture is unknown.",
"The architecture is I386.",
"The architecture is X86_64.",
"The architecture is ARM64.",
"The architecture is X86_64_MAC."
],
"type": "string"
},
"bootOption": {
"description": "The VM Boot Option.",
"enum": [
"BOOT_OPTION_UNSPECIFIED",
"EFI",
"BIOS"
],
"enumDescriptions": [
"The boot option is unknown.",
"The boot option is UEFI.",
"The boot option is LEGACY-BIOS."
],
"type": "string"
},
"committedStorageMb": {
"description": "The total size of the storage allocated to the VM in MB.",
"format": "int64",
"type": "string"
},
"cpuCount": {
"description": "The number of cpus the VM has.",
"format": "int32",
"type": "integer"
},
"diskCount": {
"description": "The number of disks the VM has.",
"format": "int32",
"type": "integer"
},
"displayName": {
"description": "The display name of the VM. Note that this value is not necessarily unique.",
"type": "string"
},
"instanceType": {
"description": "The instance type of the VM.",
"type": "string"
},
"memoryMb": {
"description": "The memory size of the VM in MB.",
"format": "int32",
"type": "integer"
},
"osDescription": {
"description": "The VM's OS.",
"type": "string"
},
"powerState": {
"description": "Output only. The power state of the VM at the moment list was taken.",
"enum": [
"POWER_STATE_UNSPECIFIED",
"ON",
"OFF",
"SUSPENDED",
"PENDING"
],
"enumDescriptions": [
"Power state is not specified.",
"The VM is turned on.",
"The VM is turned off.",
"The VM is suspended. This is similar to hibernation or sleep mode.",
"The VM is starting."
],
"readOnly": true,
"type": "string"
},
"securityGroups": {
"description": "The security groups the VM belongs to.",
"items": {
"$ref": "AwsSecurityGroup"
},
"type": "array"
},
"sourceDescription": {
"description": "The descriptive name of the AWS's source this VM is connected to.",
"type": "string"
},
"sourceId": {
"description": "The id of the AWS's source this VM is connected to.",
"type": "string"
},
"tags": {
"additionalProperties": {
"type": "string"
},
"description": "The tags of the VM.",
"type": "object"
},
"virtualizationType": {
"description": "The virtualization type.",
"enum": [
"VM_VIRTUALIZATION_TYPE_UNSPECIFIED",
"HVM",
"PARAVIRTUAL"
],
"enumDescriptions": [
"The virtualization type is unknown.",
"The virtualziation type is HVM.",
"The virtualziation type is PARAVIRTUAL."
],
"type": "string"
},
"vmId": {
"description": "The VM ID in AWS.",
"type": "string"
},
"vpcId": {
"description": "The VPC ID the VM belongs to.",
"type": "string"
},
"zone": {
"description": "The AWS zone of the VM.",
"type": "string"
}
},
"type": "object"
},
"AwsVmsDetails": {
"description": "AWSVmsDetails describes VMs in AWS.",
"id": "AwsVmsDetails",
"properties": {
"details": {
"description": "The details of the AWS VMs.",
"items": {
"$ref": "AwsVmDetails"
},
"type": "array"
}
},
"type": "object"
},
"CancelCloneJobRequest": {
"description": "Request message for 'CancelCloneJob' request.",
"id": "CancelCloneJobRequest",
Expand Down Expand Up @@ -2729,6 +3000,10 @@
"description": "Response message for fetchInventory.",
"id": "FetchInventoryResponse",
"properties": {
"awsVms": {
"$ref": "AwsVmsDetails",
"description": "The description of the VMs in a Source of type AWS."
},
"nextPageToken": {
"description": "Output only. A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.",
"readOnly": true,
Expand Down Expand Up @@ -3153,6 +3428,11 @@
"description": "MigratingVm describes the VM that will be migrated from a Source environment and its replication state.",
"id": "MigratingVm",
"properties": {
"awsSourceVmDetails": {
"$ref": "AwsSourceVmDetails",
"description": "Output only. Details of the VM from an AWS source.",
"readOnly": true
},
"computeEngineTargetDefaults": {
"$ref": "ComputeEngineTargetDefaults",
"description": "Details of the target VM in Compute Engine."
Expand All @@ -3165,7 +3445,7 @@
},
"currentSyncInfo": {
"$ref": "ReplicationCycle",
"description": "Output only. The percentage progress of the current running replication cycle.",
"description": "Output only. Details of the current running replication cycle.",
"readOnly": true
},
"description": {
Expand Down Expand Up @@ -3634,6 +3914,10 @@
"description": "Source message describes a specific vm migration Source resource. It contains the source environment information.",
"id": "Source",
"properties": {
"aws": {
"$ref": "AwsSourceDetails",
"description": "AWS type source details."
},
"createTime": {
"description": "Output only. The create time timestamp.",
"format": "google-datetime",
Expand Down Expand Up @@ -3702,6 +3986,21 @@
},
"type": "object"
},
"Tag": {
"description": "Tag is an AWS tag representation.",
"id": "Tag",
"properties": {
"key": {
"description": "Key of tag.",
"type": "string"
},
"value": {
"description": "Value of tag.",
"type": "string"
}
},
"type": "object"
},
"TargetProject": {
"description": "TargetProject message represents a target Compute Engine project for a migration or a clone.",
"id": "TargetProject",
Expand Down Expand Up @@ -4057,7 +4356,7 @@
}
},
"servicePath": "",
"title": "Migrate to Virtual Machines API",
"title": "VM Migration API",
"version": "v1",
"version_module": true
}

0 comments on commit 99b557a

Please sign in to comment.