Rework: 4 tabs by func
Deploy / deploy (push) Successful in 10s

This commit is contained in:
2026-08-29 13:33:17 +05:00
parent dfa70e96e3
commit 0857d77a01
18 changed files with 1239 additions and 314 deletions
+44 -16
View File
@@ -6,22 +6,55 @@ option go_package = "pwa-homelab-mon/gen/homelab/v1;homelabv1";
message Item {
string name = 1;
string type = 2; // monitor | response
string data = 3; // monitor: text | percentage
string value = 4; // monitor: last output
int32 args = 5; // response: arg count
repeated string arg_types = 6; // response: text | number per arg
string data = 2; // monitor: text | percentage
string value = 3; // monitor: last output
int32 args = 4; // exec: arg count
repeated string arg_types = 5; // exec: text | number per arg
}
message Section {
message Link {
string name = 1;
string icon = 2;
repeated Item items = 3;
string url = 2;
}
message ListSectionsRequest {}
message ListSectionsResponse {
repeated Section sections = 1;
message ListContentRequest {}
message ListContentResponse {
repeated Link links = 1;
repeated Item monitors = 2;
repeated Item exec = 3;
}
message DocMeta {
string name = 1;
string hash = 2; // sha256 hex of content
}
message ListDocsRequest {}
message ListDocsResponse {
repeated DocMeta docs = 1;
}
message GetDocRequest {
string name = 1;
}
message GetDocResponse {
string content = 1;
}
message SaveDocRequest {
string name = 1;
string content = 2;
}
message SaveDocResponse {
string hash = 1;
}
service HomelabService {
rpc ListContent(ListContentRequest) returns (ListContentResponse);
rpc ListDocs(ListDocsRequest) returns (ListDocsResponse);
rpc GetDoc(GetDocRequest) returns (GetDocResponse);
rpc SaveDoc(SaveDocRequest) returns (SaveDocResponse);
rpc RunScript(RunScriptRequest) returns (RunScriptResponse);
}
message RunScriptRequest {
@@ -31,8 +64,3 @@ message RunScriptRequest {
message RunScriptResponse {
string output = 1;
}
service HomelabService {
rpc ListSections(ListSectionsRequest) returns (ListSectionsResponse);
rpc RunScript(RunScriptRequest) returns (RunScriptResponse);
}