Documentation ¶
Index ¶
- Constants
- func ExtractPubKey(message []byte, signature []byte) (*ecdsa.PublicKey, error)
- func GetNamespace(req connect.AnyRequest) string
- func NewAuthInterceptor(c client.Client) connect.Interceptor
- func NewAutoscalerServiceHandler(svc AutoscalerServiceHandler, opts ...connect.HandlerOption) (string, http.Handler)
- func NewProvisionPodServiceHandler(svc ProvisionPodServiceHandler, opts ...connect.HandlerOption) (string, http.Handler)
- func VerifyPayload(publisher common.Address, message []byte, signature []byte) (bool, error)
- type AuthInterceptorClient
- func (a *AuthInterceptorClient) WrapStreamingClient(handler connect.StreamingClientFunc) connect.StreamingClientFunc
- func (a *AuthInterceptorClient) WrapStreamingHandler(handler connect.StreamingHandlerFunc) connect.StreamingHandlerFunc
- func (a *AuthInterceptorClient) WrapUnary(handler connect.UnaryFunc) connect.UnaryFunc
- type AutoscalerServiceClient
- type AutoscalerServiceHandler
- type HasPaymentChannel
- type ProvisionPodServiceClient
- type ProvisionPodServiceHandler
- type SignFunc
- type Token
- type UnimplementedAutoscalerServiceHandler
- func (UnimplementedAutoscalerServiceHandler) ConnectCluster(context.Context, *connect.Request[proto.ConnectClusterRequest]) (*connect.Response[proto.ConnectClusterResponse], error)
- func (UnimplementedAutoscalerServiceHandler) TriggerNode(context.Context, *connect.Request[proto.ConnectClusterRequest]) (*connect.Response[proto.TriggerNodeResponse], error)
- type UnimplementedProvisionPodServiceHandler
- func (UnimplementedProvisionPodServiceHandler) DeletePod(context.Context, *connect.Request[proto.DeletePodRequest]) (*connect.Response[proto.DeletePodResponse], error)
- func (UnimplementedProvisionPodServiceHandler) GetPodLogs(context.Context, *connect.Request[proto.PodLogRequest], ...) error
- func (UnimplementedProvisionPodServiceHandler) ProvisionPod(context.Context, *connect.Request[proto.ProvisionPodRequest]) (*connect.Response[proto.ProvisionPodResponse], error)
- func (UnimplementedProvisionPodServiceHandler) UpdatePod(context.Context, *connect.Request[proto.UpdatePodRequest]) (*connect.Response[proto.ProvisionPodResponse], error)
Constants ¶
const ( // AutoscalerServiceConnectClusterProcedure is the fully-qualified name of the AutoscalerService's // ConnectCluster RPC. AutoscalerServiceConnectClusterProcedure = "/apocryph.proto.v0.autoscaler.AutoscalerService/ConnectCluster" // AutoscalerServiceTriggerNodeProcedure is the fully-qualified name of the AutoscalerService's // TriggerNode RPC. AutoscalerServiceTriggerNodeProcedure = "/apocryph.proto.v0.autoscaler.AutoscalerService/TriggerNode" )
These constants are the fully-qualified names of the RPCs defined in this package. They're exposed at runtime as Spec.Procedure and as the final two segments of the HTTP route.
Note that these are different from the fully-qualified method names used by google.golang.org/protobuf/reflect/protoreflect. To convert from these constants to reflection-formatted method names, remove the leading slash and convert the remaining slash to a period.
const ( // ProvisionPodServiceProvisionPodProcedure is the fully-qualified name of the ProvisionPodService's // ProvisionPod RPC. ProvisionPodServiceProvisionPodProcedure = "/apocryph.proto.v0.provisionPod.ProvisionPodService/ProvisionPod" // ProvisionPodServiceUpdatePodProcedure is the fully-qualified name of the ProvisionPodService's // UpdatePod RPC. ProvisionPodServiceUpdatePodProcedure = "/apocryph.proto.v0.provisionPod.ProvisionPodService/UpdatePod" // ProvisionPodServiceDeletePodProcedure is the fully-qualified name of the ProvisionPodService's // DeletePod RPC. ProvisionPodServiceDeletePodProcedure = "/apocryph.proto.v0.provisionPod.ProvisionPodService/DeletePod" // ProvisionPodServiceGetPodLogsProcedure is the fully-qualified name of the ProvisionPodService's // GetPodLogs RPC. ProvisionPodServiceGetPodLogsProcedure = "/apocryph.proto.v0.provisionPod.ProvisionPodService/GetPodLogs" )
These constants are the fully-qualified names of the RPCs defined in this package. They're exposed at runtime as Spec.Procedure and as the final two segments of the HTTP route.
Note that these are different from the fully-qualified method names used by google.golang.org/protobuf/reflect/protoreflect. To convert from these constants to reflection-formatted method names, remove the leading slash and convert the remaining slash to a period.
const (
// AutoscalerServiceName is the fully-qualified name of the AutoscalerService service.
AutoscalerServiceName = "apocryph.proto.v0.autoscaler.AutoscalerService"
)
const (
NamespaceHeader = "X-Namespace"
)
const (
// ProvisionPodServiceName is the fully-qualified name of the ProvisionPodService service.
ProvisionPodServiceName = "apocryph.proto.v0.provisionPod.ProvisionPodService"
)
Variables ¶
This section is empty.
Functions ¶
func GetNamespace ¶
func GetNamespace(req connect.AnyRequest) string
func NewAuthInterceptor ¶
func NewAuthInterceptor(c client.Client) connect.Interceptor
func NewAutoscalerServiceHandler ¶
func NewAutoscalerServiceHandler(svc AutoscalerServiceHandler, opts ...connect.HandlerOption) (string, http.Handler)
NewAutoscalerServiceHandler builds an HTTP handler from the service implementation. It returns the path on which to mount the handler and the handler itself.
By default, handlers support the Connect, gRPC, and gRPC-Web protocols with the binary Protobuf and JSON codecs. They also support gzip compression.
func NewProvisionPodServiceHandler ¶
func NewProvisionPodServiceHandler(svc ProvisionPodServiceHandler, opts ...connect.HandlerOption) (string, http.Handler)
NewProvisionPodServiceHandler builds an HTTP handler from the service implementation. It returns the path on which to mount the handler and the handler itself.
By default, handlers support the Connect, gRPC, and gRPC-Web protocols with the binary Protobuf and JSON codecs. They also support gzip compression.
Types ¶
type AuthInterceptorClient ¶
type AuthInterceptorClient struct {
// contains filtered or unexported fields
}
func NewAuthInterceptorClient ¶
func NewAuthInterceptorClient(deployment *pb.Deployment, expirationOffset int64, sign SignFunc) *AuthInterceptorClient
func (*AuthInterceptorClient) WrapStreamingClient ¶
func (a *AuthInterceptorClient) WrapStreamingClient(handler connect.StreamingClientFunc) connect.StreamingClientFunc
func (*AuthInterceptorClient) WrapStreamingHandler ¶
func (a *AuthInterceptorClient) WrapStreamingHandler(handler connect.StreamingHandlerFunc) connect.StreamingHandlerFunc
type AutoscalerServiceClient ¶
type AutoscalerServiceClient interface { ConnectCluster(context.Context, *connect.Request[proto.ConnectClusterRequest]) (*connect.Response[proto.ConnectClusterResponse], error) TriggerNode(context.Context, *connect.Request[proto.ConnectClusterRequest]) (*connect.Response[proto.TriggerNodeResponse], error) }
AutoscalerServiceClient is a client for the apocryph.proto.v0.autoscaler.AutoscalerService service.
func NewAutoscalerServiceClient ¶
func NewAutoscalerServiceClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) AutoscalerServiceClient
NewAutoscalerServiceClient constructs a client for the apocryph.proto.v0.autoscaler.AutoscalerService service. By default, it uses the Connect protocol with the binary Protobuf Codec, asks for gzipped responses, and sends uncompressed requests. To use the gRPC or gRPC-Web protocols, supply the connect.WithGRPC() or connect.WithGRPCWeb() options.
The URL supplied here should be the base URL for the Connect or gRPC server (for example, http://api.acme.com or https://acme.com/grpc).
type AutoscalerServiceHandler ¶
type AutoscalerServiceHandler interface { ConnectCluster(context.Context, *connect.Request[proto.ConnectClusterRequest]) (*connect.Response[proto.ConnectClusterResponse], error) TriggerNode(context.Context, *connect.Request[proto.ConnectClusterRequest]) (*connect.Response[proto.TriggerNodeResponse], error) }
AutoscalerServiceHandler is an implementation of the apocryph.proto.v0.autoscaler.AutoscalerService service.
type HasPaymentChannel ¶
type HasPaymentChannel interface{ GetPayment() *pb.PaymentChannel }
type ProvisionPodServiceClient ¶
type ProvisionPodServiceClient interface { ProvisionPod(context.Context, *connect.Request[proto.ProvisionPodRequest]) (*connect.Response[proto.ProvisionPodResponse], error) UpdatePod(context.Context, *connect.Request[proto.UpdatePodRequest]) (*connect.Response[proto.ProvisionPodResponse], error) DeletePod(context.Context, *connect.Request[proto.DeletePodRequest]) (*connect.Response[proto.DeletePodResponse], error) GetPodLogs(context.Context, *connect.Request[proto.PodLogRequest]) (*connect.ServerStreamForClient[proto.PodLogResponse], error) }
ProvisionPodServiceClient is a client for the apocryph.proto.v0.provisionPod.ProvisionPodService service.
func NewProvisionPodServiceClient ¶
func NewProvisionPodServiceClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) ProvisionPodServiceClient
NewProvisionPodServiceClient constructs a client for the apocryph.proto.v0.provisionPod.ProvisionPodService service. By default, it uses the Connect protocol with the binary Protobuf Codec, asks for gzipped responses, and sends uncompressed requests. To use the gRPC or gRPC-Web protocols, supply the connect.WithGRPC() or connect.WithGRPCWeb() options.
The URL supplied here should be the base URL for the Connect or gRPC server (for example, http://api.acme.com or https://acme.com/grpc).
type ProvisionPodServiceHandler ¶
type ProvisionPodServiceHandler interface { ProvisionPod(context.Context, *connect.Request[proto.ProvisionPodRequest]) (*connect.Response[proto.ProvisionPodResponse], error) UpdatePod(context.Context, *connect.Request[proto.UpdatePodRequest]) (*connect.Response[proto.ProvisionPodResponse], error) DeletePod(context.Context, *connect.Request[proto.DeletePodRequest]) (*connect.Response[proto.DeletePodResponse], error) GetPodLogs(context.Context, *connect.Request[proto.PodLogRequest], *connect.ServerStream[proto.PodLogResponse]) error }
ProvisionPodServiceHandler is an implementation of the apocryph.proto.v0.provisionPod.ProvisionPodService service.
type UnimplementedAutoscalerServiceHandler ¶
type UnimplementedAutoscalerServiceHandler struct{}
UnimplementedAutoscalerServiceHandler returns CodeUnimplemented from all methods.
func (UnimplementedAutoscalerServiceHandler) ConnectCluster ¶
func (UnimplementedAutoscalerServiceHandler) ConnectCluster(context.Context, *connect.Request[proto.ConnectClusterRequest]) (*connect.Response[proto.ConnectClusterResponse], error)
func (UnimplementedAutoscalerServiceHandler) TriggerNode ¶
func (UnimplementedAutoscalerServiceHandler) TriggerNode(context.Context, *connect.Request[proto.ConnectClusterRequest]) (*connect.Response[proto.TriggerNodeResponse], error)
type UnimplementedProvisionPodServiceHandler ¶
type UnimplementedProvisionPodServiceHandler struct{}
UnimplementedProvisionPodServiceHandler returns CodeUnimplemented from all methods.
func (UnimplementedProvisionPodServiceHandler) DeletePod ¶
func (UnimplementedProvisionPodServiceHandler) DeletePod(context.Context, *connect.Request[proto.DeletePodRequest]) (*connect.Response[proto.DeletePodResponse], error)
func (UnimplementedProvisionPodServiceHandler) GetPodLogs ¶
func (UnimplementedProvisionPodServiceHandler) GetPodLogs(context.Context, *connect.Request[proto.PodLogRequest], *connect.ServerStream[proto.PodLogResponse]) error
func (UnimplementedProvisionPodServiceHandler) ProvisionPod ¶
func (UnimplementedProvisionPodServiceHandler) ProvisionPod(context.Context, *connect.Request[proto.ProvisionPodRequest]) (*connect.Response[proto.ProvisionPodResponse], error)
func (UnimplementedProvisionPodServiceHandler) UpdatePod ¶
func (UnimplementedProvisionPodServiceHandler) UpdatePod(context.Context, *connect.Request[proto.UpdatePodRequest]) (*connect.Response[proto.ProvisionPodResponse], error)