dns: configuring a basic key value store to persist to disk (#17745)
Risk Level: low (config guarded) Testing: new unit, integration tests Docs Changes: n/a (hidden) Release Notes: n/a Part of envoyproxy/envoy-mobile#1587 Signed-off-by: Alyssa Wilk <alyssar@chromium.org> Mirrored from https://github.com/envoyproxy/envoy @ 16879db8d6d3e859e169807e7b9510ba4b30501fpull/624/head
parent
f6813e2c6e
commit
3eccfe3fe7
10 changed files with 91 additions and 2 deletions
@ -0,0 +1,12 @@ |
||||
# DO NOT EDIT. This file is generated by tools/proto_format/proto_sync.py. |
||||
|
||||
load("@envoy_api//bazel:api_build_system.bzl", "api_proto_package") |
||||
|
||||
licenses(["notice"]) # Apache 2 |
||||
|
||||
api_proto_package( |
||||
deps = [ |
||||
"//envoy/config/core/v3:pkg", |
||||
"@com_github_cncf_udpa//udpa/annotations:pkg", |
||||
], |
||||
) |
@ -0,0 +1,25 @@ |
||||
syntax = "proto3"; |
||||
|
||||
package envoy.extensions.common.key_value.v3; |
||||
|
||||
import "envoy/config/core/v3/extension.proto"; |
||||
|
||||
import "google/protobuf/any.proto"; |
||||
import "google/protobuf/duration.proto"; |
||||
|
||||
import "udpa/annotations/status.proto"; |
||||
import "validate/validate.proto"; |
||||
|
||||
option java_package = "io.envoyproxy.envoy.extensions.common.key_value.v3"; |
||||
option java_outer_classname = "ConfigProto"; |
||||
option java_multiple_files = true; |
||||
option (udpa.annotations.file_status).package_version_status = ACTIVE; |
||||
|
||||
// [#protodoc-title: Key Value Store storage plugin] |
||||
|
||||
// [#alpha:] |
||||
// This shared configuration for Envoy key value stores. |
||||
message KeyValueStoreConfig { |
||||
// [#extension-category: envoy.common.key_value] |
||||
config.core.v3.TypedExtensionConfig config = 1 [(validate.rules).message = {required: true}]; |
||||
} |
@ -0,0 +1,9 @@ |
||||
# DO NOT EDIT. This file is generated by tools/proto_format/proto_sync.py. |
||||
|
||||
load("@envoy_api//bazel:api_build_system.bzl", "api_proto_package") |
||||
|
||||
licenses(["notice"]) # Apache 2 |
||||
|
||||
api_proto_package( |
||||
deps = ["@com_github_cncf_udpa//udpa/annotations:pkg"], |
||||
) |
@ -0,0 +1,27 @@ |
||||
syntax = "proto3"; |
||||
|
||||
package envoy.extensions.key_value.file_based.v3; |
||||
|
||||
import "google/protobuf/duration.proto"; |
||||
|
||||
import "udpa/annotations/status.proto"; |
||||
import "validate/validate.proto"; |
||||
|
||||
option java_package = "io.envoyproxy.envoy.extensions.key_value.file_based.v3"; |
||||
option java_outer_classname = "ConfigProto"; |
||||
option java_multiple_files = true; |
||||
option (udpa.annotations.file_status).package_version_status = ACTIVE; |
||||
|
||||
// [#protodoc-title: File Based Key Value Store storage plugin] |
||||
|
||||
// [#alpha:] |
||||
// [#extension: envoy.key_value.file_based] |
||||
// This is configuration to flush a key value store out to disk. |
||||
message FileBasedKeyValueStoreConfig { |
||||
// The filename to read the keys and values from, and write the keys and |
||||
// values to. |
||||
string filename = 1 [(validate.rules).string = {min_len: 1}]; |
||||
|
||||
// The interval at which the key value store should be flushed to the file. |
||||
google.protobuf.Duration flush_interval = 2; |
||||
} |
Loading…
Reference in new issue