mirror of https://github.com/grpc/grpc.git
Merge pull request #25078 from donnadionne/watchers
Cds Watchers changes to support aggregate Cds.pull/25245/head
commit
7338639ccc
31 changed files with 904 additions and 160 deletions
@ -0,0 +1,29 @@ |
|||||||
|
/* This file was generated by upbc (the upb compiler) from the input
|
||||||
|
* file: |
||||||
|
* |
||||||
|
* envoy/extensions/clusters/aggregate/v3/cluster.proto |
||||||
|
* |
||||||
|
* Do not edit -- your changes will be discarded when the file is |
||||||
|
* regenerated. */ |
||||||
|
|
||||||
|
#include <stddef.h> |
||||||
|
#include "upb/msg.h" |
||||||
|
#include "envoy/extensions/clusters/aggregate/v3/cluster.upb.h" |
||||||
|
#include "udpa/annotations/status.upb.h" |
||||||
|
#include "udpa/annotations/versioning.upb.h" |
||||||
|
#include "validate/validate.upb.h" |
||||||
|
|
||||||
|
#include "upb/port_def.inc" |
||||||
|
|
||||||
|
static const upb_msglayout_field envoy_extensions_clusters_aggregate_v3_ClusterConfig__fields[1] = { |
||||||
|
{1, UPB_SIZE(0, 0), 0, 0, 9, 3}, |
||||||
|
}; |
||||||
|
|
||||||
|
const upb_msglayout envoy_extensions_clusters_aggregate_v3_ClusterConfig_msginit = { |
||||||
|
NULL, |
||||||
|
&envoy_extensions_clusters_aggregate_v3_ClusterConfig__fields[0], |
||||||
|
UPB_SIZE(8, 8), 1, false, 255, |
||||||
|
}; |
||||||
|
|
||||||
|
#include "upb/port_undef.inc" |
||||||
|
|
@ -0,0 +1,67 @@ |
|||||||
|
/* This file was generated by upbc (the upb compiler) from the input
|
||||||
|
* file: |
||||||
|
* |
||||||
|
* envoy/extensions/clusters/aggregate/v3/cluster.proto |
||||||
|
* |
||||||
|
* Do not edit -- your changes will be discarded when the file is |
||||||
|
* regenerated. */ |
||||||
|
|
||||||
|
#ifndef ENVOY_EXTENSIONS_CLUSTERS_AGGREGATE_V3_CLUSTER_PROTO_UPB_H_ |
||||||
|
#define ENVOY_EXTENSIONS_CLUSTERS_AGGREGATE_V3_CLUSTER_PROTO_UPB_H_ |
||||||
|
|
||||||
|
#include "upb/msg.h" |
||||||
|
#include "upb/decode.h" |
||||||
|
#include "upb/decode_fast.h" |
||||||
|
#include "upb/encode.h" |
||||||
|
|
||||||
|
#include "upb/port_def.inc" |
||||||
|
|
||||||
|
#ifdef __cplusplus |
||||||
|
extern "C" { |
||||||
|
#endif |
||||||
|
|
||||||
|
struct envoy_extensions_clusters_aggregate_v3_ClusterConfig; |
||||||
|
typedef struct envoy_extensions_clusters_aggregate_v3_ClusterConfig envoy_extensions_clusters_aggregate_v3_ClusterConfig; |
||||||
|
extern const upb_msglayout envoy_extensions_clusters_aggregate_v3_ClusterConfig_msginit; |
||||||
|
|
||||||
|
|
||||||
|
/* envoy.extensions.clusters.aggregate.v3.ClusterConfig */ |
||||||
|
|
||||||
|
UPB_INLINE envoy_extensions_clusters_aggregate_v3_ClusterConfig *envoy_extensions_clusters_aggregate_v3_ClusterConfig_new(upb_arena *arena) { |
||||||
|
return (envoy_extensions_clusters_aggregate_v3_ClusterConfig *)_upb_msg_new(&envoy_extensions_clusters_aggregate_v3_ClusterConfig_msginit, arena); |
||||||
|
} |
||||||
|
UPB_INLINE envoy_extensions_clusters_aggregate_v3_ClusterConfig *envoy_extensions_clusters_aggregate_v3_ClusterConfig_parse(const char *buf, size_t size, |
||||||
|
upb_arena *arena) { |
||||||
|
envoy_extensions_clusters_aggregate_v3_ClusterConfig *ret = envoy_extensions_clusters_aggregate_v3_ClusterConfig_new(arena); |
||||||
|
return (ret && upb_decode(buf, size, ret, &envoy_extensions_clusters_aggregate_v3_ClusterConfig_msginit, arena)) ? ret : NULL; |
||||||
|
} |
||||||
|
UPB_INLINE envoy_extensions_clusters_aggregate_v3_ClusterConfig *envoy_extensions_clusters_aggregate_v3_ClusterConfig_parse_ex(const char *buf, size_t size, |
||||||
|
upb_arena *arena, int options) { |
||||||
|
envoy_extensions_clusters_aggregate_v3_ClusterConfig *ret = envoy_extensions_clusters_aggregate_v3_ClusterConfig_new(arena); |
||||||
|
return (ret && _upb_decode(buf, size, ret, &envoy_extensions_clusters_aggregate_v3_ClusterConfig_msginit, arena, options)) |
||||||
|
? ret : NULL; |
||||||
|
} |
||||||
|
UPB_INLINE char *envoy_extensions_clusters_aggregate_v3_ClusterConfig_serialize(const envoy_extensions_clusters_aggregate_v3_ClusterConfig *msg, upb_arena *arena, size_t *len) { |
||||||
|
return upb_encode(msg, &envoy_extensions_clusters_aggregate_v3_ClusterConfig_msginit, arena, len); |
||||||
|
} |
||||||
|
|
||||||
|
UPB_INLINE upb_strview const* envoy_extensions_clusters_aggregate_v3_ClusterConfig_clusters(const envoy_extensions_clusters_aggregate_v3_ClusterConfig *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); } |
||||||
|
|
||||||
|
UPB_INLINE upb_strview* envoy_extensions_clusters_aggregate_v3_ClusterConfig_mutable_clusters(envoy_extensions_clusters_aggregate_v3_ClusterConfig *msg, size_t *len) { |
||||||
|
return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len); |
||||||
|
} |
||||||
|
UPB_INLINE upb_strview* envoy_extensions_clusters_aggregate_v3_ClusterConfig_resize_clusters(envoy_extensions_clusters_aggregate_v3_ClusterConfig *msg, size_t len, upb_arena *arena) { |
||||||
|
return (upb_strview*)_upb_array_resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(3, 4), arena); |
||||||
|
} |
||||||
|
UPB_INLINE bool envoy_extensions_clusters_aggregate_v3_ClusterConfig_add_clusters(envoy_extensions_clusters_aggregate_v3_ClusterConfig *msg, upb_strview val, upb_arena *arena) { |
||||||
|
return _upb_array_append_accessor2(msg, UPB_SIZE(0, 0), UPB_SIZE(3, 4), &val, |
||||||
|
arena); |
||||||
|
} |
||||||
|
|
||||||
|
#ifdef __cplusplus |
||||||
|
} /* extern "C" */ |
||||||
|
#endif |
||||||
|
|
||||||
|
#include "upb/port_undef.inc" |
||||||
|
|
||||||
|
#endif /* ENVOY_EXTENSIONS_CLUSTERS_AGGREGATE_V3_CLUSTER_PROTO_UPB_H_ */ |
@ -0,0 +1,51 @@ |
|||||||
|
/* This file was generated by upbc (the upb compiler) from the input
|
||||||
|
* file: |
||||||
|
* |
||||||
|
* envoy/extensions/clusters/aggregate/v3/cluster.proto |
||||||
|
* |
||||||
|
* Do not edit -- your changes will be discarded when the file is |
||||||
|
* regenerated. */ |
||||||
|
|
||||||
|
#include "upb/def.h" |
||||||
|
#include "envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h" |
||||||
|
|
||||||
|
extern upb_def_init udpa_annotations_status_proto_upbdefinit; |
||||||
|
extern upb_def_init udpa_annotations_versioning_proto_upbdefinit; |
||||||
|
extern upb_def_init validate_validate_proto_upbdefinit; |
||||||
|
extern const upb_msglayout envoy_extensions_clusters_aggregate_v3_ClusterConfig_msginit; |
||||||
|
|
||||||
|
static const upb_msglayout *layouts[1] = { |
||||||
|
&envoy_extensions_clusters_aggregate_v3_ClusterConfig_msginit, |
||||||
|
}; |
||||||
|
|
||||||
|
static const char descriptor[389] = {'\n', '4', 'e', 'n', 'v', 'o', 'y', '/', 'e', 'x', 't', 'e', 'n', 's', 'i', 'o', 'n', 's', '/', 'c', 'l', 'u', 's', 't', 'e',
|
||||||
|
'r', 's', '/', 'a', 'g', 'g', 'r', 'e', 'g', 'a', 't', 'e', '/', 'v', '3', '/', 'c', 'l', 'u', 's', 't', 'e', 'r', '.', 'p',
|
||||||
|
'r', 'o', 't', 'o', '\022', '&', 'e', 'n', 'v', 'o', 'y', '.', 'e', 'x', 't', 'e', 'n', 's', 'i', 'o', 'n', 's', '.', 'c', 'l',
|
||||||
|
'u', 's', 't', 'e', 'r', 's', '.', 'a', 'g', 'g', 'r', 'e', 'g', 'a', 't', 'e', '.', 'v', '3', '\032', '\035', 'u', 'd', 'p', 'a',
|
||||||
|
'/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 's', 't', 'a', 't', 'u', 's', '.', 'p', 'r', 'o', 't', 'o',
|
||||||
|
'\032', '!', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't', 'a', 't', 'i', 'o', 'n', 's', '/', 'v', 'e', 'r', 's', 'i', 'o',
|
||||||
|
'n', 'i', 'n', 'g', '.', 'p', 'r', 'o', 't', 'o', '\032', '\027', 'v', 'a', 'l', 'i', 'd', 'a', 't', 'e', '/', 'v', 'a', 'l', 'i',
|
||||||
|
'd', 'a', 't', 'e', '.', 'p', 'r', 'o', 't', 'o', '\"', 'r', '\n', '\r', 'C', 'l', 'u', 's', 't', 'e', 'r', 'C', 'o', 'n', 'f',
|
||||||
|
'i', 'g', '\022', '$', '\n', '\010', 'c', 'l', 'u', 's', 't', 'e', 'r', 's', '\030', '\001', ' ', '\003', '(', '\t', 'B', '\010', '\372', 'B', '\005',
|
||||||
|
'\222', '\001', '\002', '\010', '\001', 'R', '\010', 'c', 'l', 'u', 's', 't', 'e', 'r', 's', ':', ';', '\232', '\305', '\210', '\036', '6', '\n', '4', 'e',
|
||||||
|
'n', 'v', 'o', 'y', '.', 'c', 'o', 'n', 'f', 'i', 'g', '.', 'c', 'l', 'u', 's', 't', 'e', 'r', '.', 'a', 'g', 'g', 'r', 'e',
|
||||||
|
'g', 'a', 't', 'e', '.', 'v', '2', 'a', 'l', 'p', 'h', 'a', '.', 'C', 'l', 'u', 's', 't', 'e', 'r', 'C', 'o', 'n', 'f', 'i',
|
||||||
|
'g', 'B', 'N', '\n', '4', 'i', 'o', '.', 'e', 'n', 'v', 'o', 'y', 'p', 'r', 'o', 'x', 'y', '.', 'e', 'n', 'v', 'o', 'y', '.',
|
||||||
|
'e', 'x', 't', 'e', 'n', 's', 'i', 'o', 'n', 's', '.', 'c', 'l', 'u', 's', 't', 'e', 'r', 's', '.', 'a', 'g', 'g', 'r', 'e',
|
||||||
|
'g', 'a', 't', 'e', '.', 'v', '3', 'B', '\014', 'C', 'l', 'u', 's', 't', 'e', 'r', 'P', 'r', 'o', 't', 'o', 'P', '\001', '\272', '\200',
|
||||||
|
'\310', '\321', '\006', '\002', '\020', '\002', 'b', '\006', 'p', 'r', 'o', 't', 'o', '3',
|
||||||
|
}; |
||||||
|
|
||||||
|
static upb_def_init *deps[4] = { |
||||||
|
&udpa_annotations_status_proto_upbdefinit, |
||||||
|
&udpa_annotations_versioning_proto_upbdefinit, |
||||||
|
&validate_validate_proto_upbdefinit, |
||||||
|
NULL |
||||||
|
}; |
||||||
|
|
||||||
|
upb_def_init envoy_extensions_clusters_aggregate_v3_cluster_proto_upbdefinit = { |
||||||
|
deps, |
||||||
|
layouts, |
||||||
|
"envoy/extensions/clusters/aggregate/v3/cluster.proto", |
||||||
|
UPB_STRVIEW_INIT(descriptor, 389) |
||||||
|
}; |
@ -0,0 +1,35 @@ |
|||||||
|
/* This file was generated by upbc (the upb compiler) from the input
|
||||||
|
* file: |
||||||
|
* |
||||||
|
* envoy/extensions/clusters/aggregate/v3/cluster.proto |
||||||
|
* |
||||||
|
* Do not edit -- your changes will be discarded when the file is |
||||||
|
* regenerated. */ |
||||||
|
|
||||||
|
#ifndef ENVOY_EXTENSIONS_CLUSTERS_AGGREGATE_V3_CLUSTER_PROTO_UPBDEFS_H_ |
||||||
|
#define ENVOY_EXTENSIONS_CLUSTERS_AGGREGATE_V3_CLUSTER_PROTO_UPBDEFS_H_ |
||||||
|
|
||||||
|
#include "upb/def.h" |
||||||
|
#include "upb/port_def.inc" |
||||||
|
#ifdef __cplusplus |
||||||
|
extern "C" { |
||||||
|
#endif |
||||||
|
|
||||||
|
#include "upb/def.h" |
||||||
|
|
||||||
|
#include "upb/port_def.inc" |
||||||
|
|
||||||
|
extern upb_def_init envoy_extensions_clusters_aggregate_v3_cluster_proto_upbdefinit; |
||||||
|
|
||||||
|
UPB_INLINE const upb_msgdef *envoy_extensions_clusters_aggregate_v3_ClusterConfig_getmsgdef(upb_symtab *s) { |
||||||
|
_upb_symtab_loaddefinit(s, &envoy_extensions_clusters_aggregate_v3_cluster_proto_upbdefinit); |
||||||
|
return upb_symtab_lookupmsg(s, "envoy.extensions.clusters.aggregate.v3.ClusterConfig"); |
||||||
|
} |
||||||
|
|
||||||
|
#ifdef __cplusplus |
||||||
|
} /* extern "C" */ |
||||||
|
#endif |
||||||
|
|
||||||
|
#include "upb/port_undef.inc" |
||||||
|
|
||||||
|
#endif /* ENVOY_EXTENSIONS_CLUSTERS_AGGREGATE_V3_CLUSTER_PROTO_UPBDEFS_H_ */ |
@ -0,0 +1,30 @@ |
|||||||
|
// Copyright 2020 The gRPC Authors |
||||||
|
// |
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License"); |
||||||
|
// you may not use this file except in compliance with the License. |
||||||
|
// You may obtain a copy of the License at |
||||||
|
// |
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0 |
||||||
|
// |
||||||
|
// Unless required by applicable law or agreed to in writing, software |
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS, |
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||||
|
// See the License for the specific language governing permissions and |
||||||
|
// limitations under the License. |
||||||
|
|
||||||
|
// Local copy of Envoy xDS proto file, used for testing only. |
||||||
|
|
||||||
|
syntax = "proto3"; |
||||||
|
|
||||||
|
package envoy.extensions.clusters.aggregate.v3; |
||||||
|
|
||||||
|
import "src/proto/grpc/testing/xds/v3/string.proto"; |
||||||
|
|
||||||
|
// Configuration for the aggregate cluster. See the :ref:`architecture overview |
||||||
|
// <arch_overview_aggregate_cluster>` for more information. |
||||||
|
// [#extension: envoy.clusters.aggregate] |
||||||
|
message ClusterConfig { |
||||||
|
// Load balancing clusters in aggregate cluster. Clusters are prioritized based on the order they |
||||||
|
// appear in this list. |
||||||
|
repeated string clusters = 1; |
||||||
|
} |
Loading…
Reference in new issue