From 7488ac32c1826d6922ed68895963e8debd144a66 Mon Sep 17 00:00:00 2001 From: Lidi Zheng Date: Wed, 13 Jan 2021 11:10:57 -0800 Subject: [PATCH] Add error_state to all config dump resouces Signed-off-by: Lidi Zheng --- api/envoy/admin/v3/config_dump.proto | 40 +++++++++++++++++++ api/envoy/admin/v4alpha/config_dump.proto | 40 +++++++++++++++++++ .../envoy/admin/v3/config_dump.proto | 40 +++++++++++++++++++ .../envoy/admin/v4alpha/config_dump.proto | 40 +++++++++++++++++++ 4 files changed, 160 insertions(+) diff --git a/api/envoy/admin/v3/config_dump.proto b/api/envoy/admin/v3/config_dump.proto index 73156697fdb2..eb87dea1e8d0 100644 --- a/api/envoy/admin/v3/config_dump.proto +++ b/api/envoy/admin/v3/config_dump.proto @@ -49,6 +49,8 @@ message UpdateFailureState { "envoy.admin.v2alpha.UpdateFailureState"; // What the component configuration would have been if the update had succeeded. + // This field may not be present on certain implementation of xDS client or + // server due to concerns of overhead. google.protobuf.Any failed_configuration = 1; // Time of the latest failed update attempt. @@ -56,6 +58,9 @@ message UpdateFailureState { // Details about the last failed update attempt. string details = 3; + + // This is the version of the rejected resource. + string version_info = 4; } // This message describes the bootstrap configuration that Envoy was started with. This includes @@ -134,6 +139,9 @@ message ListenersConfigDump { DynamicListenerState draining_state = 4; // 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. UpdateFailureState error_state = 5; } @@ -184,6 +192,12 @@ message ClustersConfigDump { // The timestamp when the Cluster 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. + UpdateFailureState error_state = 4; } // This is the :ref:`version_info ` in the @@ -239,6 +253,12 @@ message RoutesConfigDump { // The timestamp when the Route 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. + UpdateFailureState error_state = 4; } // The statically loaded route configs. @@ -270,6 +290,7 @@ message ScopedRoutesConfigDump { google.protobuf.Timestamp last_updated = 3; } + // [#next-free-field: 6] message DynamicScopedRouteConfigs { option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v2alpha.ScopedRoutesConfigDump.DynamicScopedRouteConfigs"; @@ -287,6 +308,12 @@ message ScopedRoutesConfigDump { // The timestamp when the scoped route config set was last updated. google.protobuf.Timestamp last_updated = 4; + + // 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. + UpdateFailureState error_state = 5; } // The statically loaded scoped route configs. @@ -302,6 +329,7 @@ message SecretsConfigDump { "envoy.admin.v2alpha.SecretsConfigDump"; // DynamicSecret contains secret information fetched via SDS. + // [#next-free-field: 6] message DynamicSecret { option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v2alpha.SecretsConfigDump.DynamicSecret"; @@ -319,6 +347,12 @@ message SecretsConfigDump { // Security sensitive information is redacted (replaced with "[redacted]") for // private keys and passwords in TLS certificates. google.protobuf.Any secret = 4; + + // 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. + UpdateFailureState error_state = 5; } // StaticSecret specifies statically loaded secret in bootstrap. @@ -373,6 +407,12 @@ message EndpointsConfigDump { // [#not-implemented-hide:] The timestamp when the Endpoint 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. + UpdateFailureState error_state = 4; } // The statically loaded endpoint configs. diff --git a/api/envoy/admin/v4alpha/config_dump.proto b/api/envoy/admin/v4alpha/config_dump.proto index 7fed09631d75..701a798a5e10 100644 --- a/api/envoy/admin/v4alpha/config_dump.proto +++ b/api/envoy/admin/v4alpha/config_dump.proto @@ -48,6 +48,8 @@ message UpdateFailureState { option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v3.UpdateFailureState"; // What the component configuration would have been if the update had succeeded. + // This field may not be present on certain implementation of xDS client or + // server due to concerns of overhead. google.protobuf.Any failed_configuration = 1; // Time of the latest failed update attempt. @@ -55,6 +57,9 @@ message UpdateFailureState { // Details about the last failed update attempt. string details = 3; + + // This is the version of the rejected resource. + string version_info = 4; } // This message describes the bootstrap configuration that Envoy was started with. This includes @@ -131,6 +136,9 @@ message ListenersConfigDump { DynamicListenerState draining_state = 4; // 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. UpdateFailureState error_state = 5; } @@ -180,6 +188,12 @@ message ClustersConfigDump { // The timestamp when the Cluster 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. + UpdateFailureState error_state = 4; } // This is the :ref:`version_info ` in the @@ -234,6 +248,12 @@ message RoutesConfigDump { // The timestamp when the Route 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. + UpdateFailureState error_state = 4; } // The statically loaded route configs. @@ -265,6 +285,7 @@ message ScopedRoutesConfigDump { google.protobuf.Timestamp last_updated = 3; } + // [#next-free-field: 6] message DynamicScopedRouteConfigs { option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v3.ScopedRoutesConfigDump.DynamicScopedRouteConfigs"; @@ -282,6 +303,12 @@ message ScopedRoutesConfigDump { // The timestamp when the scoped route config set was last updated. google.protobuf.Timestamp last_updated = 4; + + // 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. + UpdateFailureState error_state = 5; } // The statically loaded scoped route configs. @@ -296,6 +323,7 @@ message SecretsConfigDump { option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v3.SecretsConfigDump"; // DynamicSecret contains secret information fetched via SDS. + // [#next-free-field: 6] message DynamicSecret { option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v3.SecretsConfigDump.DynamicSecret"; @@ -313,6 +341,12 @@ message SecretsConfigDump { // Security sensitive information is redacted (replaced with "[redacted]") for // private keys and passwords in TLS certificates. google.protobuf.Any secret = 4; + + // 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. + UpdateFailureState error_state = 5; } // StaticSecret specifies statically loaded secret in bootstrap. @@ -375,6 +409,12 @@ message EndpointsConfigDump { // [#not-implemented-hide:] The timestamp when the Endpoint 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. + UpdateFailureState error_state = 4; } // The statically loaded endpoint configs. diff --git a/generated_api_shadow/envoy/admin/v3/config_dump.proto b/generated_api_shadow/envoy/admin/v3/config_dump.proto index 73156697fdb2..eb87dea1e8d0 100644 --- a/generated_api_shadow/envoy/admin/v3/config_dump.proto +++ b/generated_api_shadow/envoy/admin/v3/config_dump.proto @@ -49,6 +49,8 @@ message UpdateFailureState { "envoy.admin.v2alpha.UpdateFailureState"; // What the component configuration would have been if the update had succeeded. + // This field may not be present on certain implementation of xDS client or + // server due to concerns of overhead. google.protobuf.Any failed_configuration = 1; // Time of the latest failed update attempt. @@ -56,6 +58,9 @@ message UpdateFailureState { // Details about the last failed update attempt. string details = 3; + + // This is the version of the rejected resource. + string version_info = 4; } // This message describes the bootstrap configuration that Envoy was started with. This includes @@ -134,6 +139,9 @@ message ListenersConfigDump { DynamicListenerState draining_state = 4; // 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. UpdateFailureState error_state = 5; } @@ -184,6 +192,12 @@ message ClustersConfigDump { // The timestamp when the Cluster 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. + UpdateFailureState error_state = 4; } // This is the :ref:`version_info ` in the @@ -239,6 +253,12 @@ message RoutesConfigDump { // The timestamp when the Route 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. + UpdateFailureState error_state = 4; } // The statically loaded route configs. @@ -270,6 +290,7 @@ message ScopedRoutesConfigDump { google.protobuf.Timestamp last_updated = 3; } + // [#next-free-field: 6] message DynamicScopedRouteConfigs { option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v2alpha.ScopedRoutesConfigDump.DynamicScopedRouteConfigs"; @@ -287,6 +308,12 @@ message ScopedRoutesConfigDump { // The timestamp when the scoped route config set was last updated. google.protobuf.Timestamp last_updated = 4; + + // 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. + UpdateFailureState error_state = 5; } // The statically loaded scoped route configs. @@ -302,6 +329,7 @@ message SecretsConfigDump { "envoy.admin.v2alpha.SecretsConfigDump"; // DynamicSecret contains secret information fetched via SDS. + // [#next-free-field: 6] message DynamicSecret { option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v2alpha.SecretsConfigDump.DynamicSecret"; @@ -319,6 +347,12 @@ message SecretsConfigDump { // Security sensitive information is redacted (replaced with "[redacted]") for // private keys and passwords in TLS certificates. google.protobuf.Any secret = 4; + + // 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. + UpdateFailureState error_state = 5; } // StaticSecret specifies statically loaded secret in bootstrap. @@ -373,6 +407,12 @@ message EndpointsConfigDump { // [#not-implemented-hide:] The timestamp when the Endpoint 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. + UpdateFailureState error_state = 4; } // The statically loaded endpoint configs. diff --git a/generated_api_shadow/envoy/admin/v4alpha/config_dump.proto b/generated_api_shadow/envoy/admin/v4alpha/config_dump.proto index 7fed09631d75..701a798a5e10 100644 --- a/generated_api_shadow/envoy/admin/v4alpha/config_dump.proto +++ b/generated_api_shadow/envoy/admin/v4alpha/config_dump.proto @@ -48,6 +48,8 @@ message UpdateFailureState { option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v3.UpdateFailureState"; // What the component configuration would have been if the update had succeeded. + // This field may not be present on certain implementation of xDS client or + // server due to concerns of overhead. google.protobuf.Any failed_configuration = 1; // Time of the latest failed update attempt. @@ -55,6 +57,9 @@ message UpdateFailureState { // Details about the last failed update attempt. string details = 3; + + // This is the version of the rejected resource. + string version_info = 4; } // This message describes the bootstrap configuration that Envoy was started with. This includes @@ -131,6 +136,9 @@ message ListenersConfigDump { DynamicListenerState draining_state = 4; // 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. UpdateFailureState error_state = 5; } @@ -180,6 +188,12 @@ message ClustersConfigDump { // The timestamp when the Cluster 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. + UpdateFailureState error_state = 4; } // This is the :ref:`version_info ` in the @@ -234,6 +248,12 @@ message RoutesConfigDump { // The timestamp when the Route 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. + UpdateFailureState error_state = 4; } // The statically loaded route configs. @@ -265,6 +285,7 @@ message ScopedRoutesConfigDump { google.protobuf.Timestamp last_updated = 3; } + // [#next-free-field: 6] message DynamicScopedRouteConfigs { option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v3.ScopedRoutesConfigDump.DynamicScopedRouteConfigs"; @@ -282,6 +303,12 @@ message ScopedRoutesConfigDump { // The timestamp when the scoped route config set was last updated. google.protobuf.Timestamp last_updated = 4; + + // 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. + UpdateFailureState error_state = 5; } // The statically loaded scoped route configs. @@ -296,6 +323,7 @@ message SecretsConfigDump { option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v3.SecretsConfigDump"; // DynamicSecret contains secret information fetched via SDS. + // [#next-free-field: 6] message DynamicSecret { option (udpa.annotations.versioning).previous_message_type = "envoy.admin.v3.SecretsConfigDump.DynamicSecret"; @@ -313,6 +341,12 @@ message SecretsConfigDump { // Security sensitive information is redacted (replaced with "[redacted]") for // private keys and passwords in TLS certificates. google.protobuf.Any secret = 4; + + // 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. + UpdateFailureState error_state = 5; } // StaticSecret specifies statically loaded secret in bootstrap. @@ -375,6 +409,12 @@ message EndpointsConfigDump { // [#not-implemented-hide:] The timestamp when the Endpoint 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. + UpdateFailureState error_state = 4; } // The statically loaded endpoint configs.