tooling: restoring runtime fatal-by-defaults and changing to fully qualified (#9591)
Changing from relative name to absolute name, and fixing the fatal-by-defaults that were broken by the v3 switch. The old way to allow fatal-by-defaults was envoy.deprecated_features:proto_file.proto:field_name the new way is envoy.deprecated_features:full.namespace.field_name When we switched to v3, all the hard-coded v2 names stopped working. This reinstates them via hopefully more permanent proto annotation. The only remaining ugly bit is that unfortunately the full namespace and field name are the v3 versions even if the original config was v2. Between @htuch and I we should fix that before merging. Risk Level: Medium Testing: added new unit tests Docs Changes: updated Release Notes: n/a Signed-off-by: Alyssa Wilk <alyssar@chromium.org> Mirrored from https://github.com/envoyproxy/envoy @ 156d7c90083c196a206c07fc03b2de6be8260bd3master-ci-test
parent
52dab5a477
commit
046ebe5f95
29 changed files with 67 additions and 11 deletions
@ -0,0 +1,21 @@ |
||||
syntax = "proto3"; |
||||
|
||||
package envoy.annotations; |
||||
|
||||
import "google/protobuf/descriptor.proto"; |
||||
|
||||
// Allows tagging proto fields as fatal by default. One Envoy release after |
||||
// deprecation, deprecated fields will be disallowed by default, a state which |
||||
// is reversible with :ref:`runtime overrides <config_runtime_deprecation>`. |
||||
|
||||
// Magic number in this file derived from top 28bit of SHA256 digest of |
||||
// "envoy.annotation.disallowed_by_default" |
||||
extend google.protobuf.FieldOptions { |
||||
bool disallowed_by_default = 189503207; |
||||
} |
||||
|
||||
// Magic number in this file derived from top 28bit of SHA256 digest of |
||||
// "envoy.annotation.disallowed_by_default_enum" |
||||
extend google.protobuf.EnumValueOptions { |
||||
bool disallowed_by_default_enum = 70100853; |
||||
} |
Loading…
Reference in new issue