diff --git a/envoy/admin/v3/config_dump.proto b/envoy/admin/v3/config_dump.proto index 9ec135a4..8f5fa096 100644 --- a/envoy/admin/v3/config_dump.proto +++ b/envoy/admin/v3/config_dump.proto @@ -32,6 +32,8 @@ message ConfigDump { // // * ``bootstrap``: :ref:`BootstrapConfigDump ` // * ``clusters``: :ref:`ClustersConfigDump ` + // * ``ecds_filter_http``: :ref:`EcdsConfigDump ` + // * ``ecds_filter_tcp_listener``: :ref:`EcdsConfigDump ` // * ``endpoints``: :ref:`EndpointsConfigDump ` // * ``listeners``: :ref:`ListenersConfigDump ` // * ``scoped_routes``: :ref:`ScopedRoutesConfigDump ` @@ -40,6 +42,9 @@ message ConfigDump { // // EDS Configuration will only be dumped by using parameter ``?include_eds`` // + // Currently ECDS is supported in HTTP and listener filters. Note, ECDS configuration for + // either HTTP or listener filter will only be dumped if it is actually configured. + // // You can filter output with the resource and mask query parameters. // See :ref:`/config_dump?resource={} `, // :ref:`/config_dump?mask={} `, diff --git a/envoy/admin/v3/config_dump_shared.proto b/envoy/admin/v3/config_dump_shared.proto index 6677dac5..8de77e18 100644 --- a/envoy/admin/v3/config_dump_shared.proto +++ b/envoy/admin/v3/config_dump_shared.proto @@ -370,3 +370,43 @@ message EndpointsConfigDump { // The dynamically loaded endpoint configs. repeated DynamicEndpointConfig dynamic_endpoint_configs = 3; } + +// Envoy's ECDS service fills this message with all currently extension +// configuration. Extension configuration information can be used to recreate +// an Envoy ECDS listener and HTTP filters as static filters or by returning +// them in ECDS response. +message EcdsConfigDump { + option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v2alpha.EcdsConfigDump"; + + // [#next-free-field: 6] + message EcdsFilterConfig { + option (udpa.annotations.versioning).previous_message_type = + "envoy.admin.v2alpha.EcdsConfigDump.EcdsFilterConfig"; + + // This is the per-resource version information. This version is currently + // taken from the :ref:`version_info + // ` + // field at the time that the ECDS filter was loaded. + string version_info = 1; + + // The ECDS filter config. + google.protobuf.Any ecds_filter = 2; + + // The timestamp when the ECDS filter was last updated. + google.protobuf.Timestamp last_updated = 3; + + // Set if the last update failed, cleared after the next successful update. + // The ``error_state`` field contains the rejected version of this + // particular resource along with the reason and timestamp. For successfully + // updated or acknowledged resource, this field should be empty. + // [#not-implemented-hide:] + UpdateFailureState error_state = 4; + + // The client status of this resource. + // [#not-implemented-hide:] + ClientResourceStatus client_status = 5; + } + + // The ECDS filter configs. + repeated EcdsFilterConfig ecds_filters = 1; +}