Class: Google::Apis::DatamigrationV1::MigrationJob

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/datamigration_v1/classes.rb,
lib/google/apis/datamigration_v1/representations.rb,
lib/google/apis/datamigration_v1/representations.rb

Overview

Represents a Database Migration Service migration job object.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ MigrationJob

Returns a new instance of MigrationJob.



2987
2988
2989
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2987

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#cmek_key_nameString

The CMEK (customer-managed encryption key) fully qualified key name used for the migration job. This field supports all migration jobs types except for: * Mysql to Mysql (use the cmek field in the cloudsql connection profile instead).

  • PostrgeSQL to PostgreSQL (use the cmek field in the cloudsql connection profile instead). * PostgreSQL to AlloyDB (use the kms_key_name field in the alloydb connection profile instead). Each Cloud CMEK key has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[ KEY_NAME] Corresponds to the JSON property cmekKeyName

Returns:

  • (String)


2830
2831
2832
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2830

def cmek_key_name
  @cmek_key_name
end

#conversion_workspaceGoogle::Apis::DatamigrationV1::ConversionWorkspaceInfo

A conversion workspace's version. Corresponds to the JSON property conversionWorkspace



2835
2836
2837
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2835

def conversion_workspace
  @conversion_workspace
end

#create_timeString

Output only. The timestamp when the migration job resource was created. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: " 2014-10-02T15:01:23.045123456Z". Corresponds to the JSON property createTime

Returns:

  • (String)


2842
2843
2844
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2842

def create_time
  @create_time
end

#destinationString

Required. The resource name (URI) of the destination connection profile. Corresponds to the JSON property destination

Returns:

  • (String)


2847
2848
2849
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2847

def destination
  @destination
end

#destination_databaseGoogle::Apis::DatamigrationV1::DatabaseType

A message defining the database engine and provider. Corresponds to the JSON property destinationDatabase



2852
2853
2854
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2852

def destination_database
  @destination_database
end

#display_nameString

The migration job display name. Corresponds to the JSON property displayName

Returns:

  • (String)


2857
2858
2859
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2857

def display_name
  @display_name
end

#dump_flagsGoogle::Apis::DatamigrationV1::DumpFlags

Dump flags definition. Corresponds to the JSON property dumpFlags



2862
2863
2864
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2862

def dump_flags
  @dump_flags
end

#dump_pathString

The path to the dump file in Google Cloud Storage, in the format: (gs://[ BUCKET_NAME]/[OBJECT_NAME]). This field and the "dump_flags" field are mutually exclusive. Corresponds to the JSON property dumpPath

Returns:

  • (String)


2869
2870
2871
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2869

def dump_path
  @dump_path
end

#dump_typeString

Optional. The type of the data dump. Supported for MySQL to CloudSQL for MySQL migrations only. Corresponds to the JSON property dumpType

Returns:

  • (String)


2875
2876
2877
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2875

def dump_type
  @dump_type
end

#durationString

Output only. The duration of the migration job (in seconds). A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s". Corresponds to the JSON property duration

Returns:

  • (String)


2881
2882
2883
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2881

def duration
  @duration
end

#end_timeString

Output only. If the migration job is completed, the time when it was completed. Corresponds to the JSON property endTime

Returns:

  • (String)


2886
2887
2888
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2886

def end_time
  @end_time
end

#errorGoogle::Apis::DatamigrationV1::Status

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. 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. Corresponds to the JSON property error



2896
2897
2898
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2896

def error
  @error
end

#filterString

This field can be used to select the entities to migrate as part of the migration job. It uses AIP-160 notation to select a subset of the entities configured on the associated conversion-workspace. This field should not be set on migration-jobs that are not associated with a conversion workspace. Corresponds to the JSON property filter

Returns:

  • (String)


2904
2905
2906
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2904

def filter
  @filter
end

#labelsHash<String,String>

The resource labels for migration job to use to annotate any related underlying resources such as Compute Engine VMs. An object containing a list of "key": "value" pairs. Example: "name": "wrench", "mass": "1.3kg", "count" : "3". Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


2912
2913
2914
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2912

def labels
  @labels
end

#nameString

The name (URI) of this migration job resource, in the form of: projects/ project/locations/location/migrationJobs/migrationJob. Corresponds to the JSON property name

Returns:

  • (String)


2918
2919
2920
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2918

def name
  @name
end

#performance_configGoogle::Apis::DatamigrationV1::PerformanceConfig

Performance configuration definition. Corresponds to the JSON property performanceConfig



2923
2924
2925
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2923

def performance_config
  @performance_config
end

#phaseString

Output only. The current migration job phase. Corresponds to the JSON property phase

Returns:

  • (String)


2928
2929
2930
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2928

def phase
  @phase
end

#reverse_ssh_connectivityGoogle::Apis::DatamigrationV1::ReverseSshConnectivity

The details needed to configure a reverse SSH tunnel between the source and destination databases. These details will be used when calling the generateSshScript method (see https://cloud.google.com/database-migration/docs/ reference/rest/v1/projects.locations.migrationJobs/generateSshScript) to produce the script that will help set up the reverse SSH tunnel, and to set up the VPC peering between the Cloud SQL private network and the VPC. Corresponds to the JSON property reverseSshConnectivity



2938
2939
2940
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2938

def reverse_ssh_connectivity
  @reverse_ssh_connectivity
end

#sourceString

Required. The resource name (URI) of the source connection profile. Corresponds to the JSON property source

Returns:

  • (String)


2943
2944
2945
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2943

def source
  @source
end

#source_databaseGoogle::Apis::DatamigrationV1::DatabaseType

A message defining the database engine and provider. Corresponds to the JSON property sourceDatabase



2948
2949
2950
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2948

def source_database
  @source_database
end

#sqlserver_homogeneous_migration_job_configGoogle::Apis::DatamigrationV1::SqlServerHomogeneousMigrationJobConfig

Configuration for homogeneous migration to Cloud SQL for SQL Server. Corresponds to the JSON property sqlserverHomogeneousMigrationJobConfig



2953
2954
2955
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2953

def sqlserver_homogeneous_migration_job_config
  @sqlserver_homogeneous_migration_job_config
end

#stateString

The current migration job state. Corresponds to the JSON property state

Returns:

  • (String)


2958
2959
2960
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2958

def state
  @state
end

#static_ip_connectivityGoogle::Apis::DatamigrationV1::StaticIpConnectivity

The source database will allow incoming connections from the public IP of the destination database. You can retrieve the public IP of the Cloud SQL instance from the Cloud SQL console or using Cloud SQL APIs. No additional configuration is required. Corresponds to the JSON property staticIpConnectivity



2966
2967
2968
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2966

def static_ip_connectivity
  @static_ip_connectivity
end

#typeString

Required. The migration job type. Corresponds to the JSON property type

Returns:

  • (String)


2971
2972
2973
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2971

def type
  @type
end

#update_timeString

Output only. The timestamp when the migration job resource was last updated. A timestamp in RFC3339 UTC "Zulu" format, accurate to nanoseconds. Example: " 2014-10-02T15:01:23.045123456Z". Corresponds to the JSON property updateTime

Returns:

  • (String)


2978
2979
2980
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2978

def update_time
  @update_time
end

#vpc_peering_connectivityGoogle::Apis::DatamigrationV1::VpcPeeringConnectivity

The details of the VPC where the source database is located in Google Cloud. We will use this information to set up the VPC peering connection between Cloud SQL and this VPC. Corresponds to the JSON property vpcPeeringConnectivity



2985
2986
2987
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2985

def vpc_peering_connectivity
  @vpc_peering_connectivity
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
# File 'lib/google/apis/datamigration_v1/classes.rb', line 2992

def update!(**args)
  @cmek_key_name = args[:cmek_key_name] if args.key?(:cmek_key_name)
  @conversion_workspace = args[:conversion_workspace] if args.key?(:conversion_workspace)
  @create_time = args[:create_time] if args.key?(:create_time)
  @destination = args[:destination] if args.key?(:destination)
  @destination_database = args[:destination_database] if args.key?(:destination_database)
  @display_name = args[:display_name] if args.key?(:display_name)
  @dump_flags = args[:dump_flags] if args.key?(:dump_flags)
  @dump_path = args[:dump_path] if args.key?(:dump_path)
  @dump_type = args[:dump_type] if args.key?(:dump_type)
  @duration = args[:duration] if args.key?(:duration)
  @end_time = args[:end_time] if args.key?(:end_time)
  @error = args[:error] if args.key?(:error)
  @filter = args[:filter] if args.key?(:filter)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @performance_config = args[:performance_config] if args.key?(:performance_config)
  @phase = args[:phase] if args.key?(:phase)
  @reverse_ssh_connectivity = args[:reverse_ssh_connectivity] if args.key?(:reverse_ssh_connectivity)
  @source = args[:source] if args.key?(:source)
  @source_database = args[:source_database] if args.key?(:source_database)
  @sqlserver_homogeneous_migration_job_config = args[:sqlserver_homogeneous_migration_job_config] if args.key?(:sqlserver_homogeneous_migration_job_config)
  @state = args[:state] if args.key?(:state)
  @static_ip_connectivity = args[:static_ip_connectivity] if args.key?(:static_ip_connectivity)
  @type = args[:type] if args.key?(:type)
  @update_time = args[:update_time] if args.key?(:update_time)
  @vpc_peering_connectivity = args[:vpc_peering_connectivity] if args.key?(:vpc_peering_connectivity)
end