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.



1733
1734
1735
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 1733

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



1706
1707
1708
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 1706

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>)


1714
1715
1716
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 1714

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)


1720
1721
1722
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 1720

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)


1731
1732
1733
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 1731

def namespace
  @namespace
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1738
1739
1740
1741
1742
1743
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 1738

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