Class: Google::Apis::GkebackupV1::RestoreConfig

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

Overview

Configuration of a restore.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ RestoreConfig

Returns a new instance of RestoreConfig.



2957
2958
2959
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2957

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

Instance Attribute Details

#all_namespacesBoolean Also known as: all_namespaces?

Restore all namespaced resources in the Backup if set to "True". Specifying this field to "False" is an error. Corresponds to the JSON property allNamespaces

Returns:

  • (Boolean)


2865
2866
2867
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2865

def all_namespaces
  @all_namespaces
end

#cluster_resource_conflict_policyString

Optional. Defines the behavior for handling the situation where cluster-scoped resources being restored already exist in the target cluster. This MUST be set to a value other than CLUSTER_RESOURCE_CONFLICT_POLICY_UNSPECIFIED if cluster_resource_restore_scope is not empty. Corresponds to the JSON property clusterResourceConflictPolicy

Returns:

  • (String)


2874
2875
2876
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2874

def cluster_resource_conflict_policy
  @cluster_resource_conflict_policy
end

#cluster_resource_restore_scopeGoogle::Apis::GkebackupV1::ClusterResourceRestoreScope

Defines the scope of cluster-scoped resources to restore. Some group kinds are not reasonable choices for a restore, and will cause an error if selected here. Any scope selection that would restore "all valid" resources automatically excludes these group kinds. - Node - ComponentStatus - gkebackup.gke.io/ BackupJob - gkebackup.gke.io/RestoreJob - metrics.k8s.io/NodeMetrics - migration.k8s.io/StorageState - migration.k8s.io/StorageVersionMigration - snapshot.storage.k8s.io/VolumeSnapshotContent - storage.k8s.io/CSINode - storage.k8s.io/VolumeAttachment Some group kinds are driven by restore configuration elsewhere, and will cause an error if selected here. - Namespace

  • PersistentVolume Corresponds to the JSON property clusterResourceRestoreScope


2888
2889
2890
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2888

def cluster_resource_restore_scope
  @cluster_resource_restore_scope
end

#excluded_namespacesGoogle::Apis::GkebackupV1::Namespaces

A list of Kubernetes Namespaces. Corresponds to the JSON property excludedNamespaces



2893
2894
2895
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2893

def excluded_namespaces
  @excluded_namespaces
end

#namespaced_resource_restore_modeString

Optional. Defines the behavior for handling the situation where sets of namespaced resources being restored already exist in the target cluster. This MUST be set to a value other than NAMESPACED_RESOURCE_RESTORE_MODE_UNSPECIFIED. Corresponds to the JSON property namespacedResourceRestoreMode

Returns:

  • (String)


2900
2901
2902
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2900

def namespaced_resource_restore_mode
  @namespaced_resource_restore_mode
end

#no_namespacesBoolean Also known as: no_namespaces?

Do not restore any namespaced resources if set to "True". Specifying this field to "False" is not allowed. Corresponds to the JSON property noNamespaces

Returns:

  • (Boolean)


2906
2907
2908
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2906

def no_namespaces
  @no_namespaces
end

#restore_orderGoogle::Apis::GkebackupV1::RestoreOrder

Allows customers to specify dependencies between resources that Backup for GKE can use to compute a resasonable restore order. Corresponds to the JSON property restoreOrder



2913
2914
2915
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2913

def restore_order
  @restore_order
end

#selected_applicationsGoogle::Apis::GkebackupV1::NamespacedNames

A list of namespaced Kubernetes resources. Corresponds to the JSON property selectedApplications



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

def selected_applications
  @selected_applications
end

#selected_namespacesGoogle::Apis::GkebackupV1::Namespaces

A list of Kubernetes Namespaces. Corresponds to the JSON property selectedNamespaces



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

def selected_namespaces
  @selected_namespaces
end

#substitution_rulesArray<Google::Apis::GkebackupV1::SubstitutionRule>

Optional. A list of transformation rules to be applied against Kubernetes resources as they are selected for restoration from a Backup. Rules are executed in order defined - this order matters, as changes made by a rule may impact the filtering logic of subsequent rules. An empty list means no substitution will occur. Corresponds to the JSON property substitutionRules



2932
2933
2934
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2932

def substitution_rules
  @substitution_rules
end

#transformation_rulesArray<Google::Apis::GkebackupV1::TransformationRule>

Optional. A list of transformation rules to be applied against Kubernetes resources as they are selected for restoration from a Backup. Rules are executed in order defined - this order matters, as changes made by a rule may impact the filtering logic of subsequent rules. An empty list means no transformation will occur. Corresponds to the JSON property transformationRules



2941
2942
2943
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2941

def transformation_rules
  @transformation_rules
end

#volume_data_restore_policyString

Optional. Specifies the mechanism to be used to restore volume data. Default: VOLUME_DATA_RESTORE_POLICY_UNSPECIFIED (will be treated as NO_VOLUME_DATA_RESTORATION). Corresponds to the JSON property volumeDataRestorePolicy

Returns:

  • (String)


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

def volume_data_restore_policy
  @volume_data_restore_policy
end

#volume_data_restore_policy_bindingsArray<Google::Apis::GkebackupV1::VolumeDataRestorePolicyBinding>

Optional. A table that binds volumes by their scope to a restore policy. Bindings must have a unique scope. Any volumes not scoped in the bindings are subject to the policy defined in volume_data_restore_policy. Corresponds to the JSON property volumeDataRestorePolicyBindings



2955
2956
2957
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2955

def volume_data_restore_policy_bindings
  @volume_data_restore_policy_bindings
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2962

def update!(**args)
  @all_namespaces = args[:all_namespaces] if args.key?(:all_namespaces)
  @cluster_resource_conflict_policy = args[:cluster_resource_conflict_policy] if args.key?(:cluster_resource_conflict_policy)
  @cluster_resource_restore_scope = args[:cluster_resource_restore_scope] if args.key?(:cluster_resource_restore_scope)
  @excluded_namespaces = args[:excluded_namespaces] if args.key?(:excluded_namespaces)
  @namespaced_resource_restore_mode = args[:namespaced_resource_restore_mode] if args.key?(:namespaced_resource_restore_mode)
  @no_namespaces = args[:no_namespaces] if args.key?(:no_namespaces)
  @restore_order = args[:restore_order] if args.key?(:restore_order)
  @selected_applications = args[:selected_applications] if args.key?(:selected_applications)
  @selected_namespaces = args[:selected_namespaces] if args.key?(:selected_namespaces)
  @substitution_rules = args[:substitution_rules] if args.key?(:substitution_rules)
  @transformation_rules = args[:transformation_rules] if args.key?(:transformation_rules)
  @volume_data_restore_policy = args[:volume_data_restore_policy] if args.key?(:volume_data_restore_policy)
  @volume_data_restore_policy_bindings = args[:volume_data_restore_policy_bindings] if args.key?(:volume_data_restore_policy_bindings)
end