Class: Google::Cloud::Compute::V1::MetadataFilter

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/compute/v1/compute.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 its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels 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 in metadataFilters match values supplied in of their XDS requests to loadbalancers.

Defined Under Namespace

Modules: FilterMatchCriteria

Instance Attribute Summary collapse

Instance Attribute Details

#filter_labels::Array<::Google::Cloud::Compute::V1::MetadataFilterLabelMatch>



20889
20890
20891
20892
20893
20894
20895
20896
20897
20898
20899
20900
20901
20902
20903
20904
20905
20906
20907
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 20889

class MetadataFilter
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # 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.
  module FilterMatchCriteria
    # A value indicating that the enum field is not set.
    UNDEFINED_FILTER_MATCH_CRITERIA = 0

    # Specifies that all filterLabels must match for the metadataFilter to be considered a match.
    MATCH_ALL = 180_663_271

    # Specifies that any filterLabel must match for the metadataFilter to be considered a match.
    MATCH_ANY = 180_663_346

    # Indicates that the match criteria was not set. A metadataFilter must never be created with this value.
    NOT_SET = 163_646_646
  end
end

#filter_match_criteria::String



20889
20890
20891
20892
20893
20894
20895
20896
20897
20898
20899
20900
20901
20902
20903
20904
20905
20906
20907
# File 'proto_docs/google/cloud/compute/v1/compute.rb', line 20889

class MetadataFilter
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # 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.
  module FilterMatchCriteria
    # A value indicating that the enum field is not set.
    UNDEFINED_FILTER_MATCH_CRITERIA = 0

    # Specifies that all filterLabels must match for the metadataFilter to be considered a match.
    MATCH_ALL = 180_663_271

    # Specifies that any filterLabel must match for the metadataFilter to be considered a match.
    MATCH_ANY = 180_663_346

    # Indicates that the match criteria was not set. A metadataFilter must never be created with this value.
    NOT_SET = 163_646_646
  end
end