2017-04-17 18:08:24 -04:00
|
|
|
syntax = "proto3";
|
|
|
|
|
|
|
|
// See: https://github.com/grpc/grpc-go/blob/master/health/grpc_health_v1/health.proto
|
|
|
|
//
|
|
|
|
// We use the same health check service proto description defined in the gRPC documentation,
|
|
|
|
// including the authorization check. This requires our own implementation of the health
|
|
|
|
// package located in `manager/health`.
|
|
|
|
//
|
|
|
|
// For more infos, refer to:
|
|
|
|
// https://github.com/grpc/grpc/blob/master/doc/health-checking.md
|
|
|
|
|
|
|
|
package docker.swarmkit.v1;
|
|
|
|
|
|
|
|
import "gogoproto/gogo.proto";
|
2017-09-29 06:32:26 -04:00
|
|
|
import "github.com/docker/swarmkit/protobuf/plugin/plugin.proto";
|
2017-04-17 18:08:24 -04:00
|
|
|
|
|
|
|
service Health {
|
|
|
|
rpc Check(HealthCheckRequest) returns (HealthCheckResponse) {
|
|
|
|
option (docker.protobuf.plugin.tls_authorization) = { roles: "swarm-manager" };
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
message HealthCheckRequest {
|
|
|
|
string service = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message HealthCheckResponse {
|
|
|
|
enum ServingStatus {
|
|
|
|
UNKNOWN = 0;
|
|
|
|
SERVING = 1;
|
|
|
|
NOT_SERVING = 2;
|
|
|
|
}
|
|
|
|
ServingStatus status = 1;
|
|
|
|
}
|