Class: Google::Apis::ComputeV1::MetadataFilter
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::MetadataFilter
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/representations.rb
Overview
Opaque filter criteria used by load balancers to restrict routing configuration to a limited set of load balancing proxies. Proxies and sidecars involved in load balancing would typically present metadata to the load balancers that need to match criteria specified here. If a match takes place, the relevant configuration is made available to those proxies. For each metadataFilter in this list, if itsfilterMatchCriteria is set to MATCH_ANY, at least one of thefilterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. An example for using metadataFilters would be: if load balancing involves Envoys, they receive routing configuration when values inmetadataFilters match values supplied in of their XDS requests to loadbalancers.
Instance Attribute Summary collapse
-
#filter_labels ⇒ Array<Google::Apis::ComputeV1::MetadataFilterLabelMatch>
The list of label value pairs that must match labels in the provided metadata based on filterMatchCriteria This list must not be empty and can have at the most 64 entries.
-
#filter_match_criteria ⇒ String
Specifies how individual filter label matches within the list of filterLabels and contributes toward the overall metadataFilter match.
Instance Method Summary collapse
-
#initialize(**args) ⇒ MetadataFilter
constructor
A new instance of MetadataFilter.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ MetadataFilter
Returns a new instance of MetadataFilter.
31221 31222 31223 |
# File 'lib/google/apis/compute_v1/classes.rb', line 31221 def initialize(**args) update!(**args) end |
Instance Attribute Details
#filter_labels ⇒ Array<Google::Apis::ComputeV1::MetadataFilterLabelMatch>
The list of label value pairs that must match labels in the provided
metadata based on filterMatchCriteria
This list must not be empty and can have at the most 64 entries.
Corresponds to the JSON property filterLabels
31206 31207 31208 |
# File 'lib/google/apis/compute_v1/classes.rb', line 31206 def filter_labels @filter_labels end |
#filter_match_criteria ⇒ String
Specifies how individual filter label matches within the list of filterLabels and contributes toward the overall metadataFilter match. Supported values are:
- MATCH_ANY: at least one of the filterLabels must have a matching label in the provided metadata.
- MATCH_ALL: all filterLabels must have
matching labels in the provided metadata.
Corresponds to the JSON property
filterMatchCriteria
31219 31220 31221 |
# File 'lib/google/apis/compute_v1/classes.rb', line 31219 def filter_match_criteria @filter_match_criteria end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
31226 31227 31228 31229 |
# File 'lib/google/apis/compute_v1/classes.rb', line 31226 def update!(**args) @filter_labels = args[:filter_labels] if args.key?(:filter_labels) @filter_match_criteria = args[:filter_match_criteria] if args.key?(:filter_match_criteria) end |