Info modal + proto
Deploy / deploy (push) Successful in 9s

This commit is contained in:
2026-08-31 16:37:43 +05:00
parent 202ab22530
commit 315ced56bb
7 changed files with 335 additions and 56 deletions
@@ -45,6 +45,9 @@ const (
// HomelabServiceServiceActionProcedure is the fully-qualified name of the HomelabService's
// ServiceAction RPC.
HomelabServiceServiceActionProcedure = "/homelab.v1.HomelabService/ServiceAction"
// HomelabServiceServiceInfoProcedure is the fully-qualified name of the HomelabService's
// ServiceInfo RPC.
HomelabServiceServiceInfoProcedure = "/homelab.v1.HomelabService/ServiceInfo"
// HomelabServiceRunScriptProcedure is the fully-qualified name of the HomelabService's RunScript
// RPC.
HomelabServiceRunScriptProcedure = "/homelab.v1.HomelabService/RunScript"
@@ -57,6 +60,7 @@ type HomelabServiceClient interface {
GetDoc(context.Context, *connect.Request[v1.GetDocRequest]) (*connect.Response[v1.GetDocResponse], error)
SaveDoc(context.Context, *connect.Request[v1.SaveDocRequest]) (*connect.Response[v1.SaveDocResponse], error)
ServiceAction(context.Context, *connect.Request[v1.ServiceActionRequest]) (*connect.Response[v1.ServiceActionResponse], error)
ServiceInfo(context.Context, *connect.Request[v1.ServiceInfoRequest]) (*connect.Response[v1.ServiceInfoResponse], error)
RunScript(context.Context, *connect.Request[v1.RunScriptRequest]) (*connect.Response[v1.RunScriptResponse], error)
}
@@ -101,6 +105,12 @@ func NewHomelabServiceClient(httpClient connect.HTTPClient, baseURL string, opts
connect.WithSchema(homelabServiceMethods.ByName("ServiceAction")),
connect.WithClientOptions(opts...),
),
serviceInfo: connect.NewClient[v1.ServiceInfoRequest, v1.ServiceInfoResponse](
httpClient,
baseURL+HomelabServiceServiceInfoProcedure,
connect.WithSchema(homelabServiceMethods.ByName("ServiceInfo")),
connect.WithClientOptions(opts...),
),
runScript: connect.NewClient[v1.RunScriptRequest, v1.RunScriptResponse](
httpClient,
baseURL+HomelabServiceRunScriptProcedure,
@@ -117,6 +127,7 @@ type homelabServiceClient struct {
getDoc *connect.Client[v1.GetDocRequest, v1.GetDocResponse]
saveDoc *connect.Client[v1.SaveDocRequest, v1.SaveDocResponse]
serviceAction *connect.Client[v1.ServiceActionRequest, v1.ServiceActionResponse]
serviceInfo *connect.Client[v1.ServiceInfoRequest, v1.ServiceInfoResponse]
runScript *connect.Client[v1.RunScriptRequest, v1.RunScriptResponse]
}
@@ -145,6 +156,11 @@ func (c *homelabServiceClient) ServiceAction(ctx context.Context, req *connect.R
return c.serviceAction.CallUnary(ctx, req)
}
// ServiceInfo calls homelab.v1.HomelabService.ServiceInfo.
func (c *homelabServiceClient) ServiceInfo(ctx context.Context, req *connect.Request[v1.ServiceInfoRequest]) (*connect.Response[v1.ServiceInfoResponse], error) {
return c.serviceInfo.CallUnary(ctx, req)
}
// RunScript calls homelab.v1.HomelabService.RunScript.
func (c *homelabServiceClient) RunScript(ctx context.Context, req *connect.Request[v1.RunScriptRequest]) (*connect.Response[v1.RunScriptResponse], error) {
return c.runScript.CallUnary(ctx, req)
@@ -157,6 +173,7 @@ type HomelabServiceHandler interface {
GetDoc(context.Context, *connect.Request[v1.GetDocRequest]) (*connect.Response[v1.GetDocResponse], error)
SaveDoc(context.Context, *connect.Request[v1.SaveDocRequest]) (*connect.Response[v1.SaveDocResponse], error)
ServiceAction(context.Context, *connect.Request[v1.ServiceActionRequest]) (*connect.Response[v1.ServiceActionResponse], error)
ServiceInfo(context.Context, *connect.Request[v1.ServiceInfoRequest]) (*connect.Response[v1.ServiceInfoResponse], error)
RunScript(context.Context, *connect.Request[v1.RunScriptRequest]) (*connect.Response[v1.RunScriptResponse], error)
}
@@ -197,6 +214,12 @@ func NewHomelabServiceHandler(svc HomelabServiceHandler, opts ...connect.Handler
connect.WithSchema(homelabServiceMethods.ByName("ServiceAction")),
connect.WithHandlerOptions(opts...),
)
homelabServiceServiceInfoHandler := connect.NewUnaryHandler(
HomelabServiceServiceInfoProcedure,
svc.ServiceInfo,
connect.WithSchema(homelabServiceMethods.ByName("ServiceInfo")),
connect.WithHandlerOptions(opts...),
)
homelabServiceRunScriptHandler := connect.NewUnaryHandler(
HomelabServiceRunScriptProcedure,
svc.RunScript,
@@ -215,6 +238,8 @@ func NewHomelabServiceHandler(svc HomelabServiceHandler, opts ...connect.Handler
homelabServiceSaveDocHandler.ServeHTTP(w, r)
case HomelabServiceServiceActionProcedure:
homelabServiceServiceActionHandler.ServeHTTP(w, r)
case HomelabServiceServiceInfoProcedure:
homelabServiceServiceInfoHandler.ServeHTTP(w, r)
case HomelabServiceRunScriptProcedure:
homelabServiceRunScriptHandler.ServeHTTP(w, r)
default:
@@ -246,6 +271,10 @@ func (UnimplementedHomelabServiceHandler) ServiceAction(context.Context, *connec
return nil, connect.NewError(connect.CodeUnimplemented, errors.New("homelab.v1.HomelabService.ServiceAction is not implemented"))
}
func (UnimplementedHomelabServiceHandler) ServiceInfo(context.Context, *connect.Request[v1.ServiceInfoRequest]) (*connect.Response[v1.ServiceInfoResponse], error) {
return nil, connect.NewError(connect.CodeUnimplemented, errors.New("homelab.v1.HomelabService.ServiceInfo is not implemented"))
}
func (UnimplementedHomelabServiceHandler) RunScript(context.Context, *connect.Request[v1.RunScriptRequest]) (*connect.Response[v1.RunScriptResponse], error) {
return nil, connect.NewError(connect.CodeUnimplemented, errors.New("homelab.v1.HomelabService.RunScript is not implemented"))
}