Class: Google::Apis::GkebackupV1::ResourceSelector

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

Defines a selector to identify a single or a group of resources. Conditions in the selector are optional, but at least one field should be set to a non-empty value. If a condition is not specified, no restrictions will be applied on that dimension. If more than one condition is specified, a resource will be selected if and only if all conditions are met.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ResourceSelector

Returns a new instance of ResourceSelector.



2663
2664
2665
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2663

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

Instance Attribute Details

#group_kindGoogle::Apis::GkebackupV1::GroupKind

This is a direct map to the Kubernetes GroupKind type GroupKind and is used for identifying specific "types" of resources to restore. Corresponds to the JSON property groupKind



2636
2637
2638
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2636

def group_kind
  @group_kind
end

#labelsHash<String,String>

Optional. Selects resources using Kubernetes labels. If specified, a resource will be selected if and only if the resource has all of the provided labels and all the label values match. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


2644
2645
2646
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2644

def labels
  @labels
end

#nameString

Optional. Selects resources using their resource names. If specified, only resources with the provided name will be selected. Corresponds to the JSON property name

Returns:

  • (String)


2650
2651
2652
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2650

def name
  @name
end

#namespaceString

Optional. Selects resources using their namespaces. This only applies to namespace scoped resources and cannot be used for selecting cluster scoped resources. If specified, only resources in the provided namespace will be selected. If not specified, the filter will apply to both cluster scoped and namespace scoped resources (e.g. name or label). The Namespace resource itself will be restored if and only if any resources within the namespace are restored. Corresponds to the JSON property namespace

Returns:

  • (String)


2661
2662
2663
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2661

def namespace
  @namespace
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2668
2669
2670
2671
2672
2673
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2668

def update!(**args)
  @group_kind = args[:group_kind] if args.key?(:group_kind)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @namespace = args[:namespace] if args.key?(:namespace)
end