[VOL-1460]
- Imported protobuf definitions from pyvoltha at
https://gerrit.opencord.org/gitweb?p=pyvoltha.git, commit hash:
944aee71301b8ddb211b6e51d685f56d5c4a911b
- Imported upstream Google API protos from
https://github.com/googleapis/googleapis, commit hash:
5a90fbea68ce4a6e87c20d2df10df5ecd88299ff
- Fixed `import` paths and directory heirarchy in protobuf definitions
to be compatible with both python 2 and 3.
- Created Makefile scaffold to generate language-specific bindings for
python and go
Change-Id: Idd6b6b985a5eae4c38d40dd07ae78744c09e37f5
diff --git a/protos/voltha_protos/health.proto b/protos/voltha_protos/health.proto
new file mode 100644
index 0000000..a6337cf
--- /dev/null
+++ b/protos/voltha_protos/health.proto
@@ -0,0 +1,36 @@
+syntax = "proto3";
+
+option go_package = "github.com/opencord/voltha-go/protos/voltha";
+
+package voltha;
+
+import "google/api/annotations.proto";
+import "google/protobuf/empty.proto";
+import "voltha_protos/meta.proto";
+
+// Encode health status of a Voltha instance
+message HealthStatus {
+
+ // Health states
+ enum HealthState {
+ HEALTHY = 0; // The instance is healthy
+ OVERLOADED = 1; // The instance is overloaded, decrease query rate
+ DYING = 2; // The instance is in a critical condition, do not use it
+ }
+
+ // Current state of health of this Voltha instance
+ HealthState state = 1 [(access) = READ_ONLY];
+}
+
+// Health related services
+service HealthService {
+
+ // Return current health status of a Voltha instance
+ rpc GetHealthStatus(google.protobuf.Empty) returns (HealthStatus) {
+ option (google.api.http) = {
+ get: "/health"
+ };
+ }
+
+}
+