[READ ONLY MIRROR] Envoy REST/proto API definitions and documentation. (grpc依赖)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
1.5 KiB

// NOLINT(namespace-envoy)
#include <cstdlib>
#include <iostream>
#include "google/protobuf/descriptor.h"
// Basic C++ build/link validation for the v2 xDS APIs.
int main(int argc, char* argv[]) {
const auto methods = {
"envoy.api.v2.ClusterDiscoveryService.FetchClusters",
"envoy.api.v2.ClusterDiscoveryService.StreamClusters",
"envoy.api.v2.EndpointDiscoveryService.FetchEndpoints",
"envoy.api.v2.EndpointDiscoveryService.StreamEndpoints",
"envoy.api.v2.ListenerDiscoveryService.FetchListeners",
"envoy.api.v2.ListenerDiscoveryService.StreamListeners",
"envoy.api.v2.RouteDiscoveryService.FetchRoutes",
"envoy.api.v2.RouteDiscoveryService.StreamRoutes",
"envoy.service.discovery.v2.AggregatedDiscoveryService.StreamAggregatedResources",
"envoy.service.discovery.v2.HealthDiscoveryService.FetchHealthCheck",
"envoy.service.discovery.v2.HealthDiscoveryService.StreamHealthCheck",
"envoy.service.discovery.v2.RuntimeDiscoveryService.FetchRuntime",
"envoy.service.discovery.v2.RuntimeDiscoveryService.StreamRuntime",
"envoy.service.accesslog.v2.AccessLogService.StreamAccessLogs",
"envoy.service.metrics.v2.MetricsService.StreamMetrics",
"envoy.service.ratelimit.v2.RateLimitService.ShouldRateLimit",
};
for (const auto& method : methods) {
if (google::protobuf::DescriptorPool::generated_pool()->FindMethodByName(method) == nullptr) {
std::cout << "Unable to find method descriptor for " << method << std::endl;
exit(EXIT_FAILURE);
}
}
exit(EXIT_SUCCESS);
}