|
|
|
syntax = "proto3";
|
|
|
|
|
|
|
|
package envoy.service.tap.v2alpha;
|
|
|
|
|
|
|
|
import "envoy/api/v2/discovery.proto";
|
|
|
|
import "envoy/service/tap/v2alpha/common.proto";
|
|
|
|
|
|
|
|
import "google/api/annotations.proto";
|
|
|
|
|
|
|
|
import "validate/validate.proto";
|
|
|
|
|
|
|
|
option java_package = "io.envoyproxy.envoy.service.tap.v2alpha";
|
|
|
|
option java_outer_classname = "TapdsProto";
|
|
|
|
option java_multiple_files = true;
|
|
|
|
option java_generic_services = true;
|
|
|
|
|
|
|
|
// [#protodoc-title: Tap discovery service]
|
|
|
|
|
|
|
|
// [#not-implemented-hide:] Tap discovery service.
|
|
|
|
service TapDiscoveryService {
|
|
|
|
rpc StreamTapConfigs(stream api.v2.DiscoveryRequest) returns (stream api.v2.DiscoveryResponse) {
|
|
|
|
}
|
|
|
|
|
|
|
|
rpc DeltaTapConfigs(stream api.v2.DeltaDiscoveryRequest)
|
|
|
|
returns (stream api.v2.DeltaDiscoveryResponse) {
|
|
|
|
}
|
|
|
|
|
|
|
|
rpc FetchTapConfigs(api.v2.DiscoveryRequest) returns (api.v2.DiscoveryResponse) {
|
|
|
|
option (google.api.http).post = "/v2/discovery:tap_configs";
|
|
|
|
option (google.api.http).body = "*";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// [#not-implemented-hide:] A tap resource is essentially a tap configuration with a name
|
|
|
|
// The filter TapDS config references this name.
|
|
|
|
message TapResource {
|
|
|
|
// The name of the tap configuration.
|
|
|
|
string name = 1 [(validate.rules).string = {min_bytes: 1}];
|
|
|
|
|
|
|
|
// Tap config to apply
|
|
|
|
TapConfig config = 2;
|
|
|
|
}
|