VM Migration API . projects . locations . sources . migratingVms

Instance Methods

cloneJobs()

Returns the cloneJobs Resource.

cutoverJobs()

Returns the cutoverJobs Resource.

close()

Close httplib2 connections.

create(parent, body=None, migratingVmId=None, requestId=None, x__xgafv=None)

Creates a new MigratingVm in a given Source.

delete(name, x__xgafv=None)

Deletes a single MigratingVm.

finalizeMigration(migratingVm, body=None, x__xgafv=None)

Marks a migration as completed, deleting migration resources that are no longer being used. Only applicable after cutover is done.

get(name, view=None, x__xgafv=None)

Gets details of a single MigratingVm.

list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)

Lists MigratingVms in a given Source.

list_next(previous_request, previous_response)

Retrieves the next page of results.

patch(name, body=None, requestId=None, updateMask=None, x__xgafv=None)

Updates the parameters of a single MigratingVm.

pauseMigration(migratingVm, body=None, x__xgafv=None)

Pauses a migration for a VM. If cycle tasks are running they will be cancelled, preserving source task data. Further replication cycles will not be triggered while the VM is paused.

resumeMigration(migratingVm, body=None, x__xgafv=None)

Resumes a migration for a VM. When called on a paused migration, will start the process of uploading data and creating snapshots; when called on a completed cut-over migration, will update the migration to active state and start the process of uploading data and creating snapshots.

startMigration(migratingVm, body=None, x__xgafv=None)

Starts migration for a VM. Starts the process of uploading data and creating snapshots, in replication cycles scheduled by the policy.

Method Details

close()
Close httplib2 connections.
create(parent, body=None, migratingVmId=None, requestId=None, x__xgafv=None)
Creates a new MigratingVm in a given Source.

Args:
  parent: string, Required. The MigratingVm's parent. (required)
  body: object, The request body.
    The object takes the form of:

{ # MigratingVm describes the VM that will be migrated from a Source environment and its replication state.
  "computeEngineTargetDefaults": { # ComputeEngineTargetDefaults is a collection of details for creating a VM in a target Compute Engine project. # Details of the target VM in Compute Engine.
    "additionalLicenses": [ # Additional licenses to assign to the VM.
      "A String",
    ],
    "appliedLicense": { # AppliedLicense holds the license data returned by adaptation module report. # Output only. The OS license returned from the adaptation module report.
      "osLicense": "A String", # The OS license returned from the adaptation module's report.
      "type": "A String", # The license type that was used in OS adaptation.
    },
    "bootOption": "A String", # Output only. The VM Boot Option, as set in the source vm.
    "computeScheduling": { # Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. # Compute instance scheduling information (if empty default is used).
      "minNodeCpus": 42, # The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured.
      "nodeAffinities": [ # A set of node affinity and anti-affinity configurations for sole tenant nodes.
        { # Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. Based on https://cloud.google.com/compute/docs/reference/rest/v1/instances/setScheduling
          "key": "A String", # The label key of Node resource to reference.
          "operator": "A String", # The operator to use for the node resources specified in the `values` parameter.
          "values": [ # Corresponds to the label values of Node resource.
            "A String",
          ],
        },
      ],
      "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
      "restartType": "A String", # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to `automaticRestart` field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart.
    },
    "diskType": "A String", # The disk type to use in the VM.
    "labels": { # A map of labels to associate with the VM.
      "a_key": "A String",
    },
    "licenseType": "A String", # The license type to use in OS adaptation.
    "machineType": "A String", # The machine type to create the VM with.
    "machineTypeSeries": "A String", # The machine type series to create the VM with.
    "metadata": { # The metadata key/value pairs to assign to the VM.
      "a_key": "A String",
    },
    "networkInterfaces": [ # List of NICs connected to this VM.
      { # NetworkInterface represents a NIC of a VM.
        "externalIp": "A String", # The external IP to define in the NIC.
        "internalIp": "A String", # The internal IP to define in the NIC. The formats accepted are: `ephemeral` \ ipv4 address \ a named address resource full path.
        "network": "A String", # The network to connect the NIC to.
        "subnetwork": "A String", # The subnetwork to connect the NIC to.
      },
    ],
    "networkTags": [ # A map of network tags to associate with the VM.
      "A String",
    ],
    "secureBoot": True or False, # Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.
    "serviceAccount": "A String", # The service account to associate the VM with.
    "targetProject": "A String", # The full path of the resource of type TargetProject which represents the Compute Engine project in which to create this VM.
    "vmName": "A String", # The name of the VM to create.
    "zone": "A String", # The zone in which to create the VM.
  },
  "createTime": "A String", # Output only. The time the migrating VM was created (this refers to this resource and not to the time it was installed in the source).
  "currentSyncInfo": { # ReplicationCycle contains information about the current replication cycle status. # Output only. The percentage progress of the current running replication cycle.
    "progressPercent": 42, # The current progress in percentage of this cycle.
    "startTime": "A String", # The time the replication cycle has started.
  },
  "description": "A String", # The description attached to the migrating VM by the user.
  "displayName": "A String", # The display name attached to the MigratingVm by the user.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. Provides details on the state of the Migrating VM in case of an error in replication.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "group": "A String", # Output only. The group this migrating vm is included in, if any. The group is represented by the full path of the appropriate Group resource.
  "labels": { # The labels of the migrating VM.
    "a_key": "A String",
  },
  "lastSync": { # ReplicationSync contain information about the last replica sync to the cloud. # Output only. The most updated snapshot created time in the source that finished replication.
    "lastSyncTime": "A String", # The most updated snapshot created time in the source that finished replication.
  },
  "name": "A String", # Output only. The identifier of the MigratingVm.
  "policy": { # A policy for scheduling replications. # The replication schedule policy.
    "idleDuration": "A String", # The idle duration between replication stages.
    "skipOsAdaptation": True or False, # A flag to indicate whether to skip OS adaptation during the replication sync. OS adaptation is a process where the VM's operating system undergoes changes and adaptations to fully function on Compute Engine.
  },
  "recentCloneJobs": [ # Output only. The recent clone jobs performed on the migrating VM. This field holds the vm's last completed clone job and the vm's running clone job, if one exists. Note: To have this field populated you need to explicitly request it via the "view" parameter of the Get/List request.
    { # CloneJob describes the process of creating a clone of a MigratingVM to the requested target based on the latest successful uploaded snapshots. While the migration cycles of a MigratingVm take place, it is possible to verify the uploaded VM can be started in the cloud, by creating a clone. The clone can be created without any downtime, and it is created using the latest snapshots which are already in the cloud. The cloneJob is only responsible for its work, not its products, which means once it is finished, it will never touch the instance it created. It will only delete it in case of the CloneJob being cancelled or upon failure to clone.
      "computeEngineTargetDetails": { # ComputeEngineTargetDetails is a collection of details for creating a VM in a target Compute Engine project. # Output only. Details of the target VM in Compute Engine.
        "additionalLicenses": [ # Additional licenses to assign to the VM.
          "A String",
        ],
        "appliedLicense": { # AppliedLicense holds the license data returned by adaptation module report. # The OS license returned from the adaptation module report.
          "osLicense": "A String", # The OS license returned from the adaptation module's report.
          "type": "A String", # The license type that was used in OS adaptation.
        },
        "bootOption": "A String", # The VM Boot Option, as set in the source vm.
        "computeScheduling": { # Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. # Compute instance scheduling information (if empty default is used).
          "minNodeCpus": 42, # The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured.
          "nodeAffinities": [ # A set of node affinity and anti-affinity configurations for sole tenant nodes.
            { # Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. Based on https://cloud.google.com/compute/docs/reference/rest/v1/instances/setScheduling
              "key": "A String", # The label key of Node resource to reference.
              "operator": "A String", # The operator to use for the node resources specified in the `values` parameter.
              "values": [ # Corresponds to the label values of Node resource.
                "A String",
              ],
            },
          ],
          "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
          "restartType": "A String", # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to `automaticRestart` field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart.
        },
        "diskType": "A String", # The disk type to use in the VM.
        "labels": { # A map of labels to associate with the VM.
          "a_key": "A String",
        },
        "licenseType": "A String", # The license type to use in OS adaptation.
        "machineType": "A String", # The machine type to create the VM with.
        "machineTypeSeries": "A String", # The machine type series to create the VM with.
        "metadata": { # The metadata key/value pairs to assign to the VM.
          "a_key": "A String",
        },
        "networkInterfaces": [ # List of NICs connected to this VM.
          { # NetworkInterface represents a NIC of a VM.
            "externalIp": "A String", # The external IP to define in the NIC.
            "internalIp": "A String", # The internal IP to define in the NIC. The formats accepted are: `ephemeral` \ ipv4 address \ a named address resource full path.
            "network": "A String", # The network to connect the NIC to.
            "subnetwork": "A String", # The subnetwork to connect the NIC to.
          },
        ],
        "networkTags": [ # A map of network tags to associate with the VM.
          "A String",
        ],
        "project": "A String", # The GCP target project ID or project name.
        "secureBoot": True or False, # Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.
        "serviceAccount": "A String", # The service account to associate the VM with.
        "vmName": "A String", # The name of the VM to create.
        "zone": "A String", # The zone in which to create the VM.
      },
      "createTime": "A String", # Output only. The time the clone job was created (as an API call, not when it was actually created in the target).
      "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. Provides details for the errors that led to the Clone Job's state.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
      },
      "name": "A String", # The name of the clone.
      "state": "A String", # Output only. State of the clone job.
      "stateTime": "A String", # Output only. The time the state was last updated.
    },
  ],
  "recentCutoverJobs": [ # Output only. The recent cutover jobs performed on the migrating VM. This field holds the vm's last completed cutover job and the vm's running cutover job, if one exists. Note: To have this field populated you need to explicitly request it via the "view" parameter of the Get/List request.
    { # CutoverJob message describes a cutover of a migrating VM. The CutoverJob is the operation of shutting down the VM, creating a snapshot and clonning the VM using the replicated snapshot.
      "computeEngineTargetDetails": { # ComputeEngineTargetDetails is a collection of details for creating a VM in a target Compute Engine project. # Output only. Details of the target VM in Compute Engine.
        "additionalLicenses": [ # Additional licenses to assign to the VM.
          "A String",
        ],
        "appliedLicense": { # AppliedLicense holds the license data returned by adaptation module report. # The OS license returned from the adaptation module report.
          "osLicense": "A String", # The OS license returned from the adaptation module's report.
          "type": "A String", # The license type that was used in OS adaptation.
        },
        "bootOption": "A String", # The VM Boot Option, as set in the source vm.
        "computeScheduling": { # Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. # Compute instance scheduling information (if empty default is used).
          "minNodeCpus": 42, # The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured.
          "nodeAffinities": [ # A set of node affinity and anti-affinity configurations for sole tenant nodes.
            { # Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. Based on https://cloud.google.com/compute/docs/reference/rest/v1/instances/setScheduling
              "key": "A String", # The label key of Node resource to reference.
              "operator": "A String", # The operator to use for the node resources specified in the `values` parameter.
              "values": [ # Corresponds to the label values of Node resource.
                "A String",
              ],
            },
          ],
          "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
          "restartType": "A String", # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to `automaticRestart` field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart.
        },
        "diskType": "A String", # The disk type to use in the VM.
        "labels": { # A map of labels to associate with the VM.
          "a_key": "A String",
        },
        "licenseType": "A String", # The license type to use in OS adaptation.
        "machineType": "A String", # The machine type to create the VM with.
        "machineTypeSeries": "A String", # The machine type series to create the VM with.
        "metadata": { # The metadata key/value pairs to assign to the VM.
          "a_key": "A String",
        },
        "networkInterfaces": [ # List of NICs connected to this VM.
          { # NetworkInterface represents a NIC of a VM.
            "externalIp": "A String", # The external IP to define in the NIC.
            "internalIp": "A String", # The internal IP to define in the NIC. The formats accepted are: `ephemeral` \ ipv4 address \ a named address resource full path.
            "network": "A String", # The network to connect the NIC to.
            "subnetwork": "A String", # The subnetwork to connect the NIC to.
          },
        ],
        "networkTags": [ # A map of network tags to associate with the VM.
          "A String",
        ],
        "project": "A String", # The GCP target project ID or project name.
        "secureBoot": True or False, # Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.
        "serviceAccount": "A String", # The service account to associate the VM with.
        "vmName": "A String", # The name of the VM to create.
        "zone": "A String", # The zone in which to create the VM.
      },
      "createTime": "A String", # Output only. The time the cutover job was created (as an API call, not when it was actually created in the target).
      "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. Provides details for the errors that led to the Cutover Job's state.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
      },
      "name": "A String", # Output only. The name of the cutover job.
      "progressPercent": 42, # Output only. The current progress in percentage of the cutover job.
      "state": "A String", # Output only. State of the cutover job.
      "stateMessage": "A String", # Output only. A message providing possible extra details about the current state.
      "stateTime": "A String", # Output only. The time the state was last updated.
    },
  ],
  "sourceVmId": "A String", # The unique ID of the VM in the source. The VM's name in vSphere can be changed, so this is not the VM's name but rather its moRef id. This id is of the form vm-.
  "state": "A String", # Output only. State of the MigratingVm.
  "stateTime": "A String", # Output only. The last time the migrating VM state was updated.
  "updateTime": "A String", # Output only. The last time the migrating VM resource was updated.
}

  migratingVmId: string, Required. The migratingVm identifier.
  requestId: string, A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and t he request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
delete(name, x__xgafv=None)
Deletes a single MigratingVm.

Args:
  name: string, Required. The name of the MigratingVm. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
finalizeMigration(migratingVm, body=None, x__xgafv=None)
Marks a migration as completed, deleting migration resources that are no longer being used. Only applicable after cutover is done.

Args:
  migratingVm: string, Required. The name of the MigratingVm. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for 'FinalizeMigration' request.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
get(name, view=None, x__xgafv=None)
Gets details of a single MigratingVm.

Args:
  name: string, Required. The name of the MigratingVm. (required)
  view: string, Optional. The level of details of the migrating VM.
    Allowed values
      MIGRATING_VM_VIEW_UNSPECIFIED - View is unspecified. The API will fallback to the default value.
      MIGRATING_VM_VIEW_BASIC - Get the migrating VM basic details. The basic details do not include the recent clone jobs and recent cutover jobs lists.
      MIGRATING_VM_VIEW_FULL - Include everything.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # MigratingVm describes the VM that will be migrated from a Source environment and its replication state.
  "computeEngineTargetDefaults": { # ComputeEngineTargetDefaults is a collection of details for creating a VM in a target Compute Engine project. # Details of the target VM in Compute Engine.
    "additionalLicenses": [ # Additional licenses to assign to the VM.
      "A String",
    ],
    "appliedLicense": { # AppliedLicense holds the license data returned by adaptation module report. # Output only. The OS license returned from the adaptation module report.
      "osLicense": "A String", # The OS license returned from the adaptation module's report.
      "type": "A String", # The license type that was used in OS adaptation.
    },
    "bootOption": "A String", # Output only. The VM Boot Option, as set in the source vm.
    "computeScheduling": { # Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. # Compute instance scheduling information (if empty default is used).
      "minNodeCpus": 42, # The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured.
      "nodeAffinities": [ # A set of node affinity and anti-affinity configurations for sole tenant nodes.
        { # Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. Based on https://cloud.google.com/compute/docs/reference/rest/v1/instances/setScheduling
          "key": "A String", # The label key of Node resource to reference.
          "operator": "A String", # The operator to use for the node resources specified in the `values` parameter.
          "values": [ # Corresponds to the label values of Node resource.
            "A String",
          ],
        },
      ],
      "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
      "restartType": "A String", # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to `automaticRestart` field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart.
    },
    "diskType": "A String", # The disk type to use in the VM.
    "labels": { # A map of labels to associate with the VM.
      "a_key": "A String",
    },
    "licenseType": "A String", # The license type to use in OS adaptation.
    "machineType": "A String", # The machine type to create the VM with.
    "machineTypeSeries": "A String", # The machine type series to create the VM with.
    "metadata": { # The metadata key/value pairs to assign to the VM.
      "a_key": "A String",
    },
    "networkInterfaces": [ # List of NICs connected to this VM.
      { # NetworkInterface represents a NIC of a VM.
        "externalIp": "A String", # The external IP to define in the NIC.
        "internalIp": "A String", # The internal IP to define in the NIC. The formats accepted are: `ephemeral` \ ipv4 address \ a named address resource full path.
        "network": "A String", # The network to connect the NIC to.
        "subnetwork": "A String", # The subnetwork to connect the NIC to.
      },
    ],
    "networkTags": [ # A map of network tags to associate with the VM.
      "A String",
    ],
    "secureBoot": True or False, # Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.
    "serviceAccount": "A String", # The service account to associate the VM with.
    "targetProject": "A String", # The full path of the resource of type TargetProject which represents the Compute Engine project in which to create this VM.
    "vmName": "A String", # The name of the VM to create.
    "zone": "A String", # The zone in which to create the VM.
  },
  "createTime": "A String", # Output only. The time the migrating VM was created (this refers to this resource and not to the time it was installed in the source).
  "currentSyncInfo": { # ReplicationCycle contains information about the current replication cycle status. # Output only. The percentage progress of the current running replication cycle.
    "progressPercent": 42, # The current progress in percentage of this cycle.
    "startTime": "A String", # The time the replication cycle has started.
  },
  "description": "A String", # The description attached to the migrating VM by the user.
  "displayName": "A String", # The display name attached to the MigratingVm by the user.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. Provides details on the state of the Migrating VM in case of an error in replication.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "group": "A String", # Output only. The group this migrating vm is included in, if any. The group is represented by the full path of the appropriate Group resource.
  "labels": { # The labels of the migrating VM.
    "a_key": "A String",
  },
  "lastSync": { # ReplicationSync contain information about the last replica sync to the cloud. # Output only. The most updated snapshot created time in the source that finished replication.
    "lastSyncTime": "A String", # The most updated snapshot created time in the source that finished replication.
  },
  "name": "A String", # Output only. The identifier of the MigratingVm.
  "policy": { # A policy for scheduling replications. # The replication schedule policy.
    "idleDuration": "A String", # The idle duration between replication stages.
    "skipOsAdaptation": True or False, # A flag to indicate whether to skip OS adaptation during the replication sync. OS adaptation is a process where the VM's operating system undergoes changes and adaptations to fully function on Compute Engine.
  },
  "recentCloneJobs": [ # Output only. The recent clone jobs performed on the migrating VM. This field holds the vm's last completed clone job and the vm's running clone job, if one exists. Note: To have this field populated you need to explicitly request it via the "view" parameter of the Get/List request.
    { # CloneJob describes the process of creating a clone of a MigratingVM to the requested target based on the latest successful uploaded snapshots. While the migration cycles of a MigratingVm take place, it is possible to verify the uploaded VM can be started in the cloud, by creating a clone. The clone can be created without any downtime, and it is created using the latest snapshots which are already in the cloud. The cloneJob is only responsible for its work, not its products, which means once it is finished, it will never touch the instance it created. It will only delete it in case of the CloneJob being cancelled or upon failure to clone.
      "computeEngineTargetDetails": { # ComputeEngineTargetDetails is a collection of details for creating a VM in a target Compute Engine project. # Output only. Details of the target VM in Compute Engine.
        "additionalLicenses": [ # Additional licenses to assign to the VM.
          "A String",
        ],
        "appliedLicense": { # AppliedLicense holds the license data returned by adaptation module report. # The OS license returned from the adaptation module report.
          "osLicense": "A String", # The OS license returned from the adaptation module's report.
          "type": "A String", # The license type that was used in OS adaptation.
        },
        "bootOption": "A String", # The VM Boot Option, as set in the source vm.
        "computeScheduling": { # Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. # Compute instance scheduling information (if empty default is used).
          "minNodeCpus": 42, # The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured.
          "nodeAffinities": [ # A set of node affinity and anti-affinity configurations for sole tenant nodes.
            { # Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. Based on https://cloud.google.com/compute/docs/reference/rest/v1/instances/setScheduling
              "key": "A String", # The label key of Node resource to reference.
              "operator": "A String", # The operator to use for the node resources specified in the `values` parameter.
              "values": [ # Corresponds to the label values of Node resource.
                "A String",
              ],
            },
          ],
          "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
          "restartType": "A String", # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to `automaticRestart` field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart.
        },
        "diskType": "A String", # The disk type to use in the VM.
        "labels": { # A map of labels to associate with the VM.
          "a_key": "A String",
        },
        "licenseType": "A String", # The license type to use in OS adaptation.
        "machineType": "A String", # The machine type to create the VM with.
        "machineTypeSeries": "A String", # The machine type series to create the VM with.
        "metadata": { # The metadata key/value pairs to assign to the VM.
          "a_key": "A String",
        },
        "networkInterfaces": [ # List of NICs connected to this VM.
          { # NetworkInterface represents a NIC of a VM.
            "externalIp": "A String", # The external IP to define in the NIC.
            "internalIp": "A String", # The internal IP to define in the NIC. The formats accepted are: `ephemeral` \ ipv4 address \ a named address resource full path.
            "network": "A String", # The network to connect the NIC to.
            "subnetwork": "A String", # The subnetwork to connect the NIC to.
          },
        ],
        "networkTags": [ # A map of network tags to associate with the VM.
          "A String",
        ],
        "project": "A String", # The GCP target project ID or project name.
        "secureBoot": True or False, # Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.
        "serviceAccount": "A String", # The service account to associate the VM with.
        "vmName": "A String", # The name of the VM to create.
        "zone": "A String", # The zone in which to create the VM.
      },
      "createTime": "A String", # Output only. The time the clone job was created (as an API call, not when it was actually created in the target).
      "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. Provides details for the errors that led to the Clone Job's state.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
      },
      "name": "A String", # The name of the clone.
      "state": "A String", # Output only. State of the clone job.
      "stateTime": "A String", # Output only. The time the state was last updated.
    },
  ],
  "recentCutoverJobs": [ # Output only. The recent cutover jobs performed on the migrating VM. This field holds the vm's last completed cutover job and the vm's running cutover job, if one exists. Note: To have this field populated you need to explicitly request it via the "view" parameter of the Get/List request.
    { # CutoverJob message describes a cutover of a migrating VM. The CutoverJob is the operation of shutting down the VM, creating a snapshot and clonning the VM using the replicated snapshot.
      "computeEngineTargetDetails": { # ComputeEngineTargetDetails is a collection of details for creating a VM in a target Compute Engine project. # Output only. Details of the target VM in Compute Engine.
        "additionalLicenses": [ # Additional licenses to assign to the VM.
          "A String",
        ],
        "appliedLicense": { # AppliedLicense holds the license data returned by adaptation module report. # The OS license returned from the adaptation module report.
          "osLicense": "A String", # The OS license returned from the adaptation module's report.
          "type": "A String", # The license type that was used in OS adaptation.
        },
        "bootOption": "A String", # The VM Boot Option, as set in the source vm.
        "computeScheduling": { # Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. # Compute instance scheduling information (if empty default is used).
          "minNodeCpus": 42, # The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured.
          "nodeAffinities": [ # A set of node affinity and anti-affinity configurations for sole tenant nodes.
            { # Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. Based on https://cloud.google.com/compute/docs/reference/rest/v1/instances/setScheduling
              "key": "A String", # The label key of Node resource to reference.
              "operator": "A String", # The operator to use for the node resources specified in the `values` parameter.
              "values": [ # Corresponds to the label values of Node resource.
                "A String",
              ],
            },
          ],
          "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
          "restartType": "A String", # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to `automaticRestart` field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart.
        },
        "diskType": "A String", # The disk type to use in the VM.
        "labels": { # A map of labels to associate with the VM.
          "a_key": "A String",
        },
        "licenseType": "A String", # The license type to use in OS adaptation.
        "machineType": "A String", # The machine type to create the VM with.
        "machineTypeSeries": "A String", # The machine type series to create the VM with.
        "metadata": { # The metadata key/value pairs to assign to the VM.
          "a_key": "A String",
        },
        "networkInterfaces": [ # List of NICs connected to this VM.
          { # NetworkInterface represents a NIC of a VM.
            "externalIp": "A String", # The external IP to define in the NIC.
            "internalIp": "A String", # The internal IP to define in the NIC. The formats accepted are: `ephemeral` \ ipv4 address \ a named address resource full path.
            "network": "A String", # The network to connect the NIC to.
            "subnetwork": "A String", # The subnetwork to connect the NIC to.
          },
        ],
        "networkTags": [ # A map of network tags to associate with the VM.
          "A String",
        ],
        "project": "A String", # The GCP target project ID or project name.
        "secureBoot": True or False, # Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.
        "serviceAccount": "A String", # The service account to associate the VM with.
        "vmName": "A String", # The name of the VM to create.
        "zone": "A String", # The zone in which to create the VM.
      },
      "createTime": "A String", # Output only. The time the cutover job was created (as an API call, not when it was actually created in the target).
      "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. Provides details for the errors that led to the Cutover Job's state.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
      },
      "name": "A String", # Output only. The name of the cutover job.
      "progressPercent": 42, # Output only. The current progress in percentage of the cutover job.
      "state": "A String", # Output only. State of the cutover job.
      "stateMessage": "A String", # Output only. A message providing possible extra details about the current state.
      "stateTime": "A String", # Output only. The time the state was last updated.
    },
  ],
  "sourceVmId": "A String", # The unique ID of the VM in the source. The VM's name in vSphere can be changed, so this is not the VM's name but rather its moRef id. This id is of the form vm-.
  "state": "A String", # Output only. State of the MigratingVm.
  "stateTime": "A String", # Output only. The last time the migrating VM state was updated.
  "updateTime": "A String", # Output only. The last time the migrating VM resource was updated.
}
list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)
Lists MigratingVms in a given Source.

Args:
  parent: string, Required. The parent, which owns this collection of MigratingVms. (required)
  filter: string, Optional. The filter request.
  orderBy: string, Optional. the order by fields for the result.
  pageSize: integer, Optional. The maximum number of migrating VMs to return. The service may return fewer than this value. If unspecified, at most 500 migrating VMs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.
  pageToken: string, Required. A page token, received from a previous `ListMigratingVms` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListMigratingVms` must match the call that provided the page token.
  view: string, Optional. The level of details of each migrating VM.
    Allowed values
      MIGRATING_VM_VIEW_UNSPECIFIED - View is unspecified. The API will fallback to the default value.
      MIGRATING_VM_VIEW_BASIC - Get the migrating VM basic details. The basic details do not include the recent clone jobs and recent cutover jobs lists.
      MIGRATING_VM_VIEW_FULL - Include everything.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response message for 'ListMigratingVms' request.
  "migratingVms": [ # Output only. The list of Migrating VMs response.
    { # MigratingVm describes the VM that will be migrated from a Source environment and its replication state.
      "computeEngineTargetDefaults": { # ComputeEngineTargetDefaults is a collection of details for creating a VM in a target Compute Engine project. # Details of the target VM in Compute Engine.
        "additionalLicenses": [ # Additional licenses to assign to the VM.
          "A String",
        ],
        "appliedLicense": { # AppliedLicense holds the license data returned by adaptation module report. # Output only. The OS license returned from the adaptation module report.
          "osLicense": "A String", # The OS license returned from the adaptation module's report.
          "type": "A String", # The license type that was used in OS adaptation.
        },
        "bootOption": "A String", # Output only. The VM Boot Option, as set in the source vm.
        "computeScheduling": { # Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. # Compute instance scheduling information (if empty default is used).
          "minNodeCpus": 42, # The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured.
          "nodeAffinities": [ # A set of node affinity and anti-affinity configurations for sole tenant nodes.
            { # Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. Based on https://cloud.google.com/compute/docs/reference/rest/v1/instances/setScheduling
              "key": "A String", # The label key of Node resource to reference.
              "operator": "A String", # The operator to use for the node resources specified in the `values` parameter.
              "values": [ # Corresponds to the label values of Node resource.
                "A String",
              ],
            },
          ],
          "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
          "restartType": "A String", # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to `automaticRestart` field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart.
        },
        "diskType": "A String", # The disk type to use in the VM.
        "labels": { # A map of labels to associate with the VM.
          "a_key": "A String",
        },
        "licenseType": "A String", # The license type to use in OS adaptation.
        "machineType": "A String", # The machine type to create the VM with.
        "machineTypeSeries": "A String", # The machine type series to create the VM with.
        "metadata": { # The metadata key/value pairs to assign to the VM.
          "a_key": "A String",
        },
        "networkInterfaces": [ # List of NICs connected to this VM.
          { # NetworkInterface represents a NIC of a VM.
            "externalIp": "A String", # The external IP to define in the NIC.
            "internalIp": "A String", # The internal IP to define in the NIC. The formats accepted are: `ephemeral` \ ipv4 address \ a named address resource full path.
            "network": "A String", # The network to connect the NIC to.
            "subnetwork": "A String", # The subnetwork to connect the NIC to.
          },
        ],
        "networkTags": [ # A map of network tags to associate with the VM.
          "A String",
        ],
        "secureBoot": True or False, # Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.
        "serviceAccount": "A String", # The service account to associate the VM with.
        "targetProject": "A String", # The full path of the resource of type TargetProject which represents the Compute Engine project in which to create this VM.
        "vmName": "A String", # The name of the VM to create.
        "zone": "A String", # The zone in which to create the VM.
      },
      "createTime": "A String", # Output only. The time the migrating VM was created (this refers to this resource and not to the time it was installed in the source).
      "currentSyncInfo": { # ReplicationCycle contains information about the current replication cycle status. # Output only. The percentage progress of the current running replication cycle.
        "progressPercent": 42, # The current progress in percentage of this cycle.
        "startTime": "A String", # The time the replication cycle has started.
      },
      "description": "A String", # The description attached to the migrating VM by the user.
      "displayName": "A String", # The display name attached to the MigratingVm by the user.
      "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. Provides details on the state of the Migrating VM in case of an error in replication.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
      },
      "group": "A String", # Output only. The group this migrating vm is included in, if any. The group is represented by the full path of the appropriate Group resource.
      "labels": { # The labels of the migrating VM.
        "a_key": "A String",
      },
      "lastSync": { # ReplicationSync contain information about the last replica sync to the cloud. # Output only. The most updated snapshot created time in the source that finished replication.
        "lastSyncTime": "A String", # The most updated snapshot created time in the source that finished replication.
      },
      "name": "A String", # Output only. The identifier of the MigratingVm.
      "policy": { # A policy for scheduling replications. # The replication schedule policy.
        "idleDuration": "A String", # The idle duration between replication stages.
        "skipOsAdaptation": True or False, # A flag to indicate whether to skip OS adaptation during the replication sync. OS adaptation is a process where the VM's operating system undergoes changes and adaptations to fully function on Compute Engine.
      },
      "recentCloneJobs": [ # Output only. The recent clone jobs performed on the migrating VM. This field holds the vm's last completed clone job and the vm's running clone job, if one exists. Note: To have this field populated you need to explicitly request it via the "view" parameter of the Get/List request.
        { # CloneJob describes the process of creating a clone of a MigratingVM to the requested target based on the latest successful uploaded snapshots. While the migration cycles of a MigratingVm take place, it is possible to verify the uploaded VM can be started in the cloud, by creating a clone. The clone can be created without any downtime, and it is created using the latest snapshots which are already in the cloud. The cloneJob is only responsible for its work, not its products, which means once it is finished, it will never touch the instance it created. It will only delete it in case of the CloneJob being cancelled or upon failure to clone.
          "computeEngineTargetDetails": { # ComputeEngineTargetDetails is a collection of details for creating a VM in a target Compute Engine project. # Output only. Details of the target VM in Compute Engine.
            "additionalLicenses": [ # Additional licenses to assign to the VM.
              "A String",
            ],
            "appliedLicense": { # AppliedLicense holds the license data returned by adaptation module report. # The OS license returned from the adaptation module report.
              "osLicense": "A String", # The OS license returned from the adaptation module's report.
              "type": "A String", # The license type that was used in OS adaptation.
            },
            "bootOption": "A String", # The VM Boot Option, as set in the source vm.
            "computeScheduling": { # Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. # Compute instance scheduling information (if empty default is used).
              "minNodeCpus": 42, # The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured.
              "nodeAffinities": [ # A set of node affinity and anti-affinity configurations for sole tenant nodes.
                { # Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. Based on https://cloud.google.com/compute/docs/reference/rest/v1/instances/setScheduling
                  "key": "A String", # The label key of Node resource to reference.
                  "operator": "A String", # The operator to use for the node resources specified in the `values` parameter.
                  "values": [ # Corresponds to the label values of Node resource.
                    "A String",
                  ],
                },
              ],
              "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
              "restartType": "A String", # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to `automaticRestart` field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart.
            },
            "diskType": "A String", # The disk type to use in the VM.
            "labels": { # A map of labels to associate with the VM.
              "a_key": "A String",
            },
            "licenseType": "A String", # The license type to use in OS adaptation.
            "machineType": "A String", # The machine type to create the VM with.
            "machineTypeSeries": "A String", # The machine type series to create the VM with.
            "metadata": { # The metadata key/value pairs to assign to the VM.
              "a_key": "A String",
            },
            "networkInterfaces": [ # List of NICs connected to this VM.
              { # NetworkInterface represents a NIC of a VM.
                "externalIp": "A String", # The external IP to define in the NIC.
                "internalIp": "A String", # The internal IP to define in the NIC. The formats accepted are: `ephemeral` \ ipv4 address \ a named address resource full path.
                "network": "A String", # The network to connect the NIC to.
                "subnetwork": "A String", # The subnetwork to connect the NIC to.
              },
            ],
            "networkTags": [ # A map of network tags to associate with the VM.
              "A String",
            ],
            "project": "A String", # The GCP target project ID or project name.
            "secureBoot": True or False, # Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.
            "serviceAccount": "A String", # The service account to associate the VM with.
            "vmName": "A String", # The name of the VM to create.
            "zone": "A String", # The zone in which to create the VM.
          },
          "createTime": "A String", # Output only. The time the clone job was created (as an API call, not when it was actually created in the target).
          "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. Provides details for the errors that led to the Clone Job's state.
            "code": 42, # The status code, which should be an enum value of google.rpc.Code.
            "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
              {
                "a_key": "", # Properties of the object. Contains field @type with type URL.
              },
            ],
            "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
          },
          "name": "A String", # The name of the clone.
          "state": "A String", # Output only. State of the clone job.
          "stateTime": "A String", # Output only. The time the state was last updated.
        },
      ],
      "recentCutoverJobs": [ # Output only. The recent cutover jobs performed on the migrating VM. This field holds the vm's last completed cutover job and the vm's running cutover job, if one exists. Note: To have this field populated you need to explicitly request it via the "view" parameter of the Get/List request.
        { # CutoverJob message describes a cutover of a migrating VM. The CutoverJob is the operation of shutting down the VM, creating a snapshot and clonning the VM using the replicated snapshot.
          "computeEngineTargetDetails": { # ComputeEngineTargetDetails is a collection of details for creating a VM in a target Compute Engine project. # Output only. Details of the target VM in Compute Engine.
            "additionalLicenses": [ # Additional licenses to assign to the VM.
              "A String",
            ],
            "appliedLicense": { # AppliedLicense holds the license data returned by adaptation module report. # The OS license returned from the adaptation module report.
              "osLicense": "A String", # The OS license returned from the adaptation module's report.
              "type": "A String", # The license type that was used in OS adaptation.
            },
            "bootOption": "A String", # The VM Boot Option, as set in the source vm.
            "computeScheduling": { # Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. # Compute instance scheduling information (if empty default is used).
              "minNodeCpus": 42, # The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured.
              "nodeAffinities": [ # A set of node affinity and anti-affinity configurations for sole tenant nodes.
                { # Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. Based on https://cloud.google.com/compute/docs/reference/rest/v1/instances/setScheduling
                  "key": "A String", # The label key of Node resource to reference.
                  "operator": "A String", # The operator to use for the node resources specified in the `values` parameter.
                  "values": [ # Corresponds to the label values of Node resource.
                    "A String",
                  ],
                },
              ],
              "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
              "restartType": "A String", # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to `automaticRestart` field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart.
            },
            "diskType": "A String", # The disk type to use in the VM.
            "labels": { # A map of labels to associate with the VM.
              "a_key": "A String",
            },
            "licenseType": "A String", # The license type to use in OS adaptation.
            "machineType": "A String", # The machine type to create the VM with.
            "machineTypeSeries": "A String", # The machine type series to create the VM with.
            "metadata": { # The metadata key/value pairs to assign to the VM.
              "a_key": "A String",
            },
            "networkInterfaces": [ # List of NICs connected to this VM.
              { # NetworkInterface represents a NIC of a VM.
                "externalIp": "A String", # The external IP to define in the NIC.
                "internalIp": "A String", # The internal IP to define in the NIC. The formats accepted are: `ephemeral` \ ipv4 address \ a named address resource full path.
                "network": "A String", # The network to connect the NIC to.
                "subnetwork": "A String", # The subnetwork to connect the NIC to.
              },
            ],
            "networkTags": [ # A map of network tags to associate with the VM.
              "A String",
            ],
            "project": "A String", # The GCP target project ID or project name.
            "secureBoot": True or False, # Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.
            "serviceAccount": "A String", # The service account to associate the VM with.
            "vmName": "A String", # The name of the VM to create.
            "zone": "A String", # The zone in which to create the VM.
          },
          "createTime": "A String", # Output only. The time the cutover job was created (as an API call, not when it was actually created in the target).
          "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. Provides details for the errors that led to the Cutover Job's state.
            "code": 42, # The status code, which should be an enum value of google.rpc.Code.
            "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
              {
                "a_key": "", # Properties of the object. Contains field @type with type URL.
              },
            ],
            "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
          },
          "name": "A String", # Output only. The name of the cutover job.
          "progressPercent": 42, # Output only. The current progress in percentage of the cutover job.
          "state": "A String", # Output only. State of the cutover job.
          "stateMessage": "A String", # Output only. A message providing possible extra details about the current state.
          "stateTime": "A String", # Output only. The time the state was last updated.
        },
      ],
      "sourceVmId": "A String", # The unique ID of the VM in the source. The VM's name in vSphere can be changed, so this is not the VM's name but rather its moRef id. This id is of the form vm-.
      "state": "A String", # Output only. State of the MigratingVm.
      "stateTime": "A String", # Output only. The last time the migrating VM state was updated.
      "updateTime": "A String", # Output only. The last time the migrating VM resource was updated.
    },
  ],
  "nextPageToken": "A String", # 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.
  "unreachable": [ # Output only. Locations that could not be reached.
    "A String",
  ],
}
list_next(previous_request, previous_response)
Retrieves the next page of results.

Args:
  previous_request: The request for the previous page. (required)
  previous_response: The response from the request for the previous page. (required)

Returns:
  A request object that you can call 'execute()' on to request the next
  page. Returns None if there are no more items in the collection.
    
patch(name, body=None, requestId=None, updateMask=None, x__xgafv=None)
Updates the parameters of a single MigratingVm.

Args:
  name: string, Output only. The identifier of the MigratingVm. (required)
  body: object, The request body.
    The object takes the form of:

{ # MigratingVm describes the VM that will be migrated from a Source environment and its replication state.
  "computeEngineTargetDefaults": { # ComputeEngineTargetDefaults is a collection of details for creating a VM in a target Compute Engine project. # Details of the target VM in Compute Engine.
    "additionalLicenses": [ # Additional licenses to assign to the VM.
      "A String",
    ],
    "appliedLicense": { # AppliedLicense holds the license data returned by adaptation module report. # Output only. The OS license returned from the adaptation module report.
      "osLicense": "A String", # The OS license returned from the adaptation module's report.
      "type": "A String", # The license type that was used in OS adaptation.
    },
    "bootOption": "A String", # Output only. The VM Boot Option, as set in the source vm.
    "computeScheduling": { # Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. # Compute instance scheduling information (if empty default is used).
      "minNodeCpus": 42, # The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured.
      "nodeAffinities": [ # A set of node affinity and anti-affinity configurations for sole tenant nodes.
        { # Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. Based on https://cloud.google.com/compute/docs/reference/rest/v1/instances/setScheduling
          "key": "A String", # The label key of Node resource to reference.
          "operator": "A String", # The operator to use for the node resources specified in the `values` parameter.
          "values": [ # Corresponds to the label values of Node resource.
            "A String",
          ],
        },
      ],
      "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
      "restartType": "A String", # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to `automaticRestart` field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart.
    },
    "diskType": "A String", # The disk type to use in the VM.
    "labels": { # A map of labels to associate with the VM.
      "a_key": "A String",
    },
    "licenseType": "A String", # The license type to use in OS adaptation.
    "machineType": "A String", # The machine type to create the VM with.
    "machineTypeSeries": "A String", # The machine type series to create the VM with.
    "metadata": { # The metadata key/value pairs to assign to the VM.
      "a_key": "A String",
    },
    "networkInterfaces": [ # List of NICs connected to this VM.
      { # NetworkInterface represents a NIC of a VM.
        "externalIp": "A String", # The external IP to define in the NIC.
        "internalIp": "A String", # The internal IP to define in the NIC. The formats accepted are: `ephemeral` \ ipv4 address \ a named address resource full path.
        "network": "A String", # The network to connect the NIC to.
        "subnetwork": "A String", # The subnetwork to connect the NIC to.
      },
    ],
    "networkTags": [ # A map of network tags to associate with the VM.
      "A String",
    ],
    "secureBoot": True or False, # Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.
    "serviceAccount": "A String", # The service account to associate the VM with.
    "targetProject": "A String", # The full path of the resource of type TargetProject which represents the Compute Engine project in which to create this VM.
    "vmName": "A String", # The name of the VM to create.
    "zone": "A String", # The zone in which to create the VM.
  },
  "createTime": "A String", # Output only. The time the migrating VM was created (this refers to this resource and not to the time it was installed in the source).
  "currentSyncInfo": { # ReplicationCycle contains information about the current replication cycle status. # Output only. The percentage progress of the current running replication cycle.
    "progressPercent": 42, # The current progress in percentage of this cycle.
    "startTime": "A String", # The time the replication cycle has started.
  },
  "description": "A String", # The description attached to the migrating VM by the user.
  "displayName": "A String", # The display name attached to the MigratingVm by the user.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. Provides details on the state of the Migrating VM in case of an error in replication.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "group": "A String", # Output only. The group this migrating vm is included in, if any. The group is represented by the full path of the appropriate Group resource.
  "labels": { # The labels of the migrating VM.
    "a_key": "A String",
  },
  "lastSync": { # ReplicationSync contain information about the last replica sync to the cloud. # Output only. The most updated snapshot created time in the source that finished replication.
    "lastSyncTime": "A String", # The most updated snapshot created time in the source that finished replication.
  },
  "name": "A String", # Output only. The identifier of the MigratingVm.
  "policy": { # A policy for scheduling replications. # The replication schedule policy.
    "idleDuration": "A String", # The idle duration between replication stages.
    "skipOsAdaptation": True or False, # A flag to indicate whether to skip OS adaptation during the replication sync. OS adaptation is a process where the VM's operating system undergoes changes and adaptations to fully function on Compute Engine.
  },
  "recentCloneJobs": [ # Output only. The recent clone jobs performed on the migrating VM. This field holds the vm's last completed clone job and the vm's running clone job, if one exists. Note: To have this field populated you need to explicitly request it via the "view" parameter of the Get/List request.
    { # CloneJob describes the process of creating a clone of a MigratingVM to the requested target based on the latest successful uploaded snapshots. While the migration cycles of a MigratingVm take place, it is possible to verify the uploaded VM can be started in the cloud, by creating a clone. The clone can be created without any downtime, and it is created using the latest snapshots which are already in the cloud. The cloneJob is only responsible for its work, not its products, which means once it is finished, it will never touch the instance it created. It will only delete it in case of the CloneJob being cancelled or upon failure to clone.
      "computeEngineTargetDetails": { # ComputeEngineTargetDetails is a collection of details for creating a VM in a target Compute Engine project. # Output only. Details of the target VM in Compute Engine.
        "additionalLicenses": [ # Additional licenses to assign to the VM.
          "A String",
        ],
        "appliedLicense": { # AppliedLicense holds the license data returned by adaptation module report. # The OS license returned from the adaptation module report.
          "osLicense": "A String", # The OS license returned from the adaptation module's report.
          "type": "A String", # The license type that was used in OS adaptation.
        },
        "bootOption": "A String", # The VM Boot Option, as set in the source vm.
        "computeScheduling": { # Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. # Compute instance scheduling information (if empty default is used).
          "minNodeCpus": 42, # The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured.
          "nodeAffinities": [ # A set of node affinity and anti-affinity configurations for sole tenant nodes.
            { # Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. Based on https://cloud.google.com/compute/docs/reference/rest/v1/instances/setScheduling
              "key": "A String", # The label key of Node resource to reference.
              "operator": "A String", # The operator to use for the node resources specified in the `values` parameter.
              "values": [ # Corresponds to the label values of Node resource.
                "A String",
              ],
            },
          ],
          "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
          "restartType": "A String", # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to `automaticRestart` field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart.
        },
        "diskType": "A String", # The disk type to use in the VM.
        "labels": { # A map of labels to associate with the VM.
          "a_key": "A String",
        },
        "licenseType": "A String", # The license type to use in OS adaptation.
        "machineType": "A String", # The machine type to create the VM with.
        "machineTypeSeries": "A String", # The machine type series to create the VM with.
        "metadata": { # The metadata key/value pairs to assign to the VM.
          "a_key": "A String",
        },
        "networkInterfaces": [ # List of NICs connected to this VM.
          { # NetworkInterface represents a NIC of a VM.
            "externalIp": "A String", # The external IP to define in the NIC.
            "internalIp": "A String", # The internal IP to define in the NIC. The formats accepted are: `ephemeral` \ ipv4 address \ a named address resource full path.
            "network": "A String", # The network to connect the NIC to.
            "subnetwork": "A String", # The subnetwork to connect the NIC to.
          },
        ],
        "networkTags": [ # A map of network tags to associate with the VM.
          "A String",
        ],
        "project": "A String", # The GCP target project ID or project name.
        "secureBoot": True or False, # Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.
        "serviceAccount": "A String", # The service account to associate the VM with.
        "vmName": "A String", # The name of the VM to create.
        "zone": "A String", # The zone in which to create the VM.
      },
      "createTime": "A String", # Output only. The time the clone job was created (as an API call, not when it was actually created in the target).
      "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. Provides details for the errors that led to the Clone Job's state.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
      },
      "name": "A String", # The name of the clone.
      "state": "A String", # Output only. State of the clone job.
      "stateTime": "A String", # Output only. The time the state was last updated.
    },
  ],
  "recentCutoverJobs": [ # Output only. The recent cutover jobs performed on the migrating VM. This field holds the vm's last completed cutover job and the vm's running cutover job, if one exists. Note: To have this field populated you need to explicitly request it via the "view" parameter of the Get/List request.
    { # CutoverJob message describes a cutover of a migrating VM. The CutoverJob is the operation of shutting down the VM, creating a snapshot and clonning the VM using the replicated snapshot.
      "computeEngineTargetDetails": { # ComputeEngineTargetDetails is a collection of details for creating a VM in a target Compute Engine project. # Output only. Details of the target VM in Compute Engine.
        "additionalLicenses": [ # Additional licenses to assign to the VM.
          "A String",
        ],
        "appliedLicense": { # AppliedLicense holds the license data returned by adaptation module report. # The OS license returned from the adaptation module report.
          "osLicense": "A String", # The OS license returned from the adaptation module's report.
          "type": "A String", # The license type that was used in OS adaptation.
        },
        "bootOption": "A String", # The VM Boot Option, as set in the source vm.
        "computeScheduling": { # Scheduling information for VM on maintenance/restart behaviour and node allocation in sole tenant nodes. # Compute instance scheduling information (if empty default is used).
          "minNodeCpus": 42, # The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. Ignored if no node_affinites are configured.
          "nodeAffinities": [ # A set of node affinity and anti-affinity configurations for sole tenant nodes.
            { # Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. Based on https://cloud.google.com/compute/docs/reference/rest/v1/instances/setScheduling
              "key": "A String", # The label key of Node resource to reference.
              "operator": "A String", # The operator to use for the node resources specified in the `values` parameter.
              "values": [ # Corresponds to the label values of Node resource.
                "A String",
              ],
            },
          ],
          "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
          "restartType": "A String", # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user). This configuration is identical to `automaticRestart` field in Compute Engine create instance under scheduling. It was changed to an enum (instead of a boolean) to match the default value in Compute Engine which is automatic restart.
        },
        "diskType": "A String", # The disk type to use in the VM.
        "labels": { # A map of labels to associate with the VM.
          "a_key": "A String",
        },
        "licenseType": "A String", # The license type to use in OS adaptation.
        "machineType": "A String", # The machine type to create the VM with.
        "machineTypeSeries": "A String", # The machine type series to create the VM with.
        "metadata": { # The metadata key/value pairs to assign to the VM.
          "a_key": "A String",
        },
        "networkInterfaces": [ # List of NICs connected to this VM.
          { # NetworkInterface represents a NIC of a VM.
            "externalIp": "A String", # The external IP to define in the NIC.
            "internalIp": "A String", # The internal IP to define in the NIC. The formats accepted are: `ephemeral` \ ipv4 address \ a named address resource full path.
            "network": "A String", # The network to connect the NIC to.
            "subnetwork": "A String", # The subnetwork to connect the NIC to.
          },
        ],
        "networkTags": [ # A map of network tags to associate with the VM.
          "A String",
        ],
        "project": "A String", # The GCP target project ID or project name.
        "secureBoot": True or False, # Defines whether the instance has Secure Boot enabled. This can be set to true only if the vm boot option is EFI.
        "serviceAccount": "A String", # The service account to associate the VM with.
        "vmName": "A String", # The name of the VM to create.
        "zone": "A String", # The zone in which to create the VM.
      },
      "createTime": "A String", # Output only. The time the cutover job was created (as an API call, not when it was actually created in the target).
      "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # Output only. Provides details for the errors that led to the Cutover Job's state.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
      },
      "name": "A String", # Output only. The name of the cutover job.
      "progressPercent": 42, # Output only. The current progress in percentage of the cutover job.
      "state": "A String", # Output only. State of the cutover job.
      "stateMessage": "A String", # Output only. A message providing possible extra details about the current state.
      "stateTime": "A String", # Output only. The time the state was last updated.
    },
  ],
  "sourceVmId": "A String", # The unique ID of the VM in the source. The VM's name in vSphere can be changed, so this is not the VM's name but rather its moRef id. This id is of the form vm-.
  "state": "A String", # Output only. State of the MigratingVm.
  "stateTime": "A String", # Output only. The last time the migrating VM state was updated.
  "updateTime": "A String", # Output only. The last time the migrating VM resource was updated.
}

  requestId: string, A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and t he request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
  updateMask: string, Field mask is used to specify the fields to be overwritten in the MigratingVm resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
pauseMigration(migratingVm, body=None, x__xgafv=None)
Pauses a migration for a VM. If cycle tasks are running they will be cancelled, preserving source task data. Further replication cycles will not be triggered while the VM is paused.

Args:
  migratingVm: string, Required. The name of the MigratingVm. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for 'PauseMigration' request.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
resumeMigration(migratingVm, body=None, x__xgafv=None)
Resumes a migration for a VM. When called on a paused migration, will start the process of uploading data and creating snapshots; when called on a completed cut-over migration, will update the migration to active state and start the process of uploading data and creating snapshots.

Args:
  migratingVm: string, Required. The name of the MigratingVm. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for 'ResumeMigration' request.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
startMigration(migratingVm, body=None, x__xgafv=None)
Starts migration for a VM. Starts the process of uploading data and creating snapshots, in replication cycles scheduled by the policy.

Args:
  migratingVm: string, Required. The name of the MigratingVm. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for 'StartMigrationRequest' request.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}