ftlv1connect

package
v0.446.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 14, 2025 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// AdminServicePingProcedure is the fully-qualified name of the AdminService's Ping RPC.
	AdminServicePingProcedure = "/xyz.block.ftl.v1.AdminService/Ping"
	// AdminServiceConfigListProcedure is the fully-qualified name of the AdminService's ConfigList RPC.
	AdminServiceConfigListProcedure = "/xyz.block.ftl.v1.AdminService/ConfigList"
	// AdminServiceConfigGetProcedure is the fully-qualified name of the AdminService's ConfigGet RPC.
	AdminServiceConfigGetProcedure = "/xyz.block.ftl.v1.AdminService/ConfigGet"
	// AdminServiceConfigSetProcedure is the fully-qualified name of the AdminService's ConfigSet RPC.
	AdminServiceConfigSetProcedure = "/xyz.block.ftl.v1.AdminService/ConfigSet"
	// AdminServiceConfigUnsetProcedure is the fully-qualified name of the AdminService's ConfigUnset
	// RPC.
	AdminServiceConfigUnsetProcedure = "/xyz.block.ftl.v1.AdminService/ConfigUnset"
	// AdminServiceSecretsListProcedure is the fully-qualified name of the AdminService's SecretsList
	// RPC.
	AdminServiceSecretsListProcedure = "/xyz.block.ftl.v1.AdminService/SecretsList"
	// AdminServiceSecretGetProcedure is the fully-qualified name of the AdminService's SecretGet RPC.
	AdminServiceSecretGetProcedure = "/xyz.block.ftl.v1.AdminService/SecretGet"
	// AdminServiceSecretSetProcedure is the fully-qualified name of the AdminService's SecretSet RPC.
	AdminServiceSecretSetProcedure = "/xyz.block.ftl.v1.AdminService/SecretSet"
	// AdminServiceSecretUnsetProcedure is the fully-qualified name of the AdminService's SecretUnset
	// RPC.
	AdminServiceSecretUnsetProcedure = "/xyz.block.ftl.v1.AdminService/SecretUnset"
	// AdminServiceMapConfigsForModuleProcedure is the fully-qualified name of the AdminService's
	// MapConfigsForModule RPC.
	AdminServiceMapConfigsForModuleProcedure = "/xyz.block.ftl.v1.AdminService/MapConfigsForModule"
	// AdminServiceMapSecretsForModuleProcedure is the fully-qualified name of the AdminService's
	// MapSecretsForModule RPC.
	AdminServiceMapSecretsForModuleProcedure = "/xyz.block.ftl.v1.AdminService/MapSecretsForModule"
	// AdminServiceResetSubscriptionProcedure is the fully-qualified name of the AdminService's
	// ResetSubscription RPC.
	AdminServiceResetSubscriptionProcedure = "/xyz.block.ftl.v1.AdminService/ResetSubscription"
)

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.

View Source
const (
	// ControllerServicePingProcedure is the fully-qualified name of the ControllerService's Ping RPC.
	ControllerServicePingProcedure = "/xyz.block.ftl.v1.ControllerService/Ping"
	// ControllerServiceClusterInfoProcedure is the fully-qualified name of the ControllerService's
	// ClusterInfo RPC.
	ControllerServiceClusterInfoProcedure = "/xyz.block.ftl.v1.ControllerService/ClusterInfo"
	// ControllerServiceProcessListProcedure is the fully-qualified name of the ControllerService's
	// ProcessList RPC.
	ControllerServiceProcessListProcedure = "/xyz.block.ftl.v1.ControllerService/ProcessList"
	// ControllerServiceStatusProcedure is the fully-qualified name of the ControllerService's Status
	// RPC.
	ControllerServiceStatusProcedure = "/xyz.block.ftl.v1.ControllerService/Status"
	// ControllerServiceGetArtefactDiffsProcedure is the fully-qualified name of the ControllerService's
	// GetArtefactDiffs RPC.
	ControllerServiceGetArtefactDiffsProcedure = "/xyz.block.ftl.v1.ControllerService/GetArtefactDiffs"
	// ControllerServiceUploadArtefactProcedure is the fully-qualified name of the ControllerService's
	// UploadArtefact RPC.
	ControllerServiceUploadArtefactProcedure = "/xyz.block.ftl.v1.ControllerService/UploadArtefact"
	// ControllerServiceGetDeploymentArtefactsProcedure is the fully-qualified name of the
	// ControllerService's GetDeploymentArtefacts RPC.
	ControllerServiceGetDeploymentArtefactsProcedure = "/xyz.block.ftl.v1.ControllerService/GetDeploymentArtefacts"
	// ControllerServiceRegisterRunnerProcedure is the fully-qualified name of the ControllerService's
	// RegisterRunner RPC.
	ControllerServiceRegisterRunnerProcedure = "/xyz.block.ftl.v1.ControllerService/RegisterRunner"
)

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.

View Source
const (
	// SchemaServicePingProcedure is the fully-qualified name of the SchemaService's Ping RPC.
	SchemaServicePingProcedure = "/xyz.block.ftl.v1.SchemaService/Ping"
	// SchemaServiceGetSchemaProcedure is the fully-qualified name of the SchemaService's GetSchema RPC.
	SchemaServiceGetSchemaProcedure = "/xyz.block.ftl.v1.SchemaService/GetSchema"
	// SchemaServicePullSchemaProcedure is the fully-qualified name of the SchemaService's PullSchema
	// RPC.
	SchemaServicePullSchemaProcedure = "/xyz.block.ftl.v1.SchemaService/PullSchema"
	// SchemaServiceUpdateDeploymentRuntimeProcedure is the fully-qualified name of the SchemaService's
	// UpdateDeploymentRuntime RPC.
	SchemaServiceUpdateDeploymentRuntimeProcedure = "/xyz.block.ftl.v1.SchemaService/UpdateDeploymentRuntime"
	// SchemaServiceGetDeploymentsProcedure is the fully-qualified name of the SchemaService's
	// GetDeployments RPC.
	SchemaServiceGetDeploymentsProcedure = "/xyz.block.ftl.v1.SchemaService/GetDeployments"
	// SchemaServiceCreateChangesetProcedure is the fully-qualified name of the SchemaService's
	// CreateChangeset RPC.
	SchemaServiceCreateChangesetProcedure = "/xyz.block.ftl.v1.SchemaService/CreateChangeset"
	// SchemaServicePrepareChangesetProcedure is the fully-qualified name of the SchemaService's
	// PrepareChangeset RPC.
	SchemaServicePrepareChangesetProcedure = "/xyz.block.ftl.v1.SchemaService/PrepareChangeset"
	// SchemaServiceCommitChangesetProcedure is the fully-qualified name of the SchemaService's
	// CommitChangeset RPC.
	SchemaServiceCommitChangesetProcedure = "/xyz.block.ftl.v1.SchemaService/CommitChangeset"
	// SchemaServiceDrainChangesetProcedure is the fully-qualified name of the SchemaService's
	// DrainChangeset RPC.
	SchemaServiceDrainChangesetProcedure = "/xyz.block.ftl.v1.SchemaService/DrainChangeset"
	// SchemaServiceFinalizeChangesetProcedure is the fully-qualified name of the SchemaService's
	// FinalizeChangeset RPC.
	SchemaServiceFinalizeChangesetProcedure = "/xyz.block.ftl.v1.SchemaService/FinalizeChangeset"
	// SchemaServiceRollbackChangesetProcedure is the fully-qualified name of the SchemaService's
	// RollbackChangeset RPC.
	SchemaServiceRollbackChangesetProcedure = "/xyz.block.ftl.v1.SchemaService/RollbackChangeset"
	// SchemaServiceFailChangesetProcedure is the fully-qualified name of the SchemaService's
	// FailChangeset RPC.
	SchemaServiceFailChangesetProcedure = "/xyz.block.ftl.v1.SchemaService/FailChangeset"
	// SchemaServiceGetDeploymentProcedure is the fully-qualified name of the SchemaService's
	// GetDeployment RPC.
	SchemaServiceGetDeploymentProcedure = "/xyz.block.ftl.v1.SchemaService/GetDeployment"
)

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.

View Source
const (
	// VerbServicePingProcedure is the fully-qualified name of the VerbService's Ping RPC.
	VerbServicePingProcedure = "/xyz.block.ftl.v1.VerbService/Ping"
	// VerbServiceCallProcedure is the fully-qualified name of the VerbService's Call RPC.
	VerbServiceCallProcedure = "/xyz.block.ftl.v1.VerbService/Call"
)

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.

View Source
const (
	// AdminServiceName is the fully-qualified name of the AdminService service.
	AdminServiceName = "xyz.block.ftl.v1.AdminService"
)
View Source
const (
	// ControllerServiceName is the fully-qualified name of the ControllerService service.
	ControllerServiceName = "xyz.block.ftl.v1.ControllerService"
)
View Source
const (
	// SchemaServiceName is the fully-qualified name of the SchemaService service.
	SchemaServiceName = "xyz.block.ftl.v1.SchemaService"
)
View Source
const (
	// VerbServiceName is the fully-qualified name of the VerbService service.
	VerbServiceName = "xyz.block.ftl.v1.VerbService"
)

Variables

This section is empty.

Functions

func NewAdminServiceHandler

func NewAdminServiceHandler(svc AdminServiceHandler, opts ...connect.HandlerOption) (string, http.Handler)

NewAdminServiceHandler 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 NewControllerServiceHandler

func NewControllerServiceHandler(svc ControllerServiceHandler, opts ...connect.HandlerOption) (string, http.Handler)

NewControllerServiceHandler 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 NewSchemaServiceHandler

func NewSchemaServiceHandler(svc SchemaServiceHandler, opts ...connect.HandlerOption) (string, http.Handler)

NewSchemaServiceHandler 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 NewVerbServiceHandler

func NewVerbServiceHandler(svc VerbServiceHandler, opts ...connect.HandlerOption) (string, http.Handler)

NewVerbServiceHandler 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 AdminServiceClient

type AdminServiceClient interface {
	Ping(context.Context, *connect.Request[v1.PingRequest]) (*connect.Response[v1.PingResponse], error)
	// List configuration.
	ConfigList(context.Context, *connect.Request[v1.ConfigListRequest]) (*connect.Response[v1.ConfigListResponse], error)
	// Get a config value.
	ConfigGet(context.Context, *connect.Request[v1.ConfigGetRequest]) (*connect.Response[v1.ConfigGetResponse], error)
	// Set a config value.
	ConfigSet(context.Context, *connect.Request[v1.ConfigSetRequest]) (*connect.Response[v1.ConfigSetResponse], error)
	// Unset a config value.
	ConfigUnset(context.Context, *connect.Request[v1.ConfigUnsetRequest]) (*connect.Response[v1.ConfigUnsetResponse], error)
	// List secrets.
	SecretsList(context.Context, *connect.Request[v1.SecretsListRequest]) (*connect.Response[v1.SecretsListResponse], error)
	// Get a secret.
	SecretGet(context.Context, *connect.Request[v1.SecretGetRequest]) (*connect.Response[v1.SecretGetResponse], error)
	// Set a secret.
	SecretSet(context.Context, *connect.Request[v1.SecretSetRequest]) (*connect.Response[v1.SecretSetResponse], error)
	// Unset a secret.
	SecretUnset(context.Context, *connect.Request[v1.SecretUnsetRequest]) (*connect.Response[v1.SecretUnsetResponse], error)
	// MapForModule combines all configuration values visible to the module.
	// Local values take precedence.
	MapConfigsForModule(context.Context, *connect.Request[v1.MapConfigsForModuleRequest]) (*connect.Response[v1.MapConfigsForModuleResponse], error)
	// MapSecretsForModule combines all secrets visible to the module.
	// Local values take precedence.
	MapSecretsForModule(context.Context, *connect.Request[v1.MapSecretsForModuleRequest]) (*connect.Response[v1.MapSecretsForModuleResponse], error)
	// Reset the offset for a subscription to the latest of each partition.
	ResetSubscription(context.Context, *connect.Request[v1.ResetSubscriptionRequest]) (*connect.Response[v1.ResetSubscriptionResponse], error)
}

AdminServiceClient is a client for the xyz.block.ftl.v1.AdminService service.

func NewAdminServiceClient

func NewAdminServiceClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) AdminServiceClient

NewAdminServiceClient constructs a client for the xyz.block.ftl.v1.AdminService 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 AdminServiceHandler

type AdminServiceHandler interface {
	Ping(context.Context, *connect.Request[v1.PingRequest]) (*connect.Response[v1.PingResponse], error)
	// List configuration.
	ConfigList(context.Context, *connect.Request[v1.ConfigListRequest]) (*connect.Response[v1.ConfigListResponse], error)
	// Get a config value.
	ConfigGet(context.Context, *connect.Request[v1.ConfigGetRequest]) (*connect.Response[v1.ConfigGetResponse], error)
	// Set a config value.
	ConfigSet(context.Context, *connect.Request[v1.ConfigSetRequest]) (*connect.Response[v1.ConfigSetResponse], error)
	// Unset a config value.
	ConfigUnset(context.Context, *connect.Request[v1.ConfigUnsetRequest]) (*connect.Response[v1.ConfigUnsetResponse], error)
	// List secrets.
	SecretsList(context.Context, *connect.Request[v1.SecretsListRequest]) (*connect.Response[v1.SecretsListResponse], error)
	// Get a secret.
	SecretGet(context.Context, *connect.Request[v1.SecretGetRequest]) (*connect.Response[v1.SecretGetResponse], error)
	// Set a secret.
	SecretSet(context.Context, *connect.Request[v1.SecretSetRequest]) (*connect.Response[v1.SecretSetResponse], error)
	// Unset a secret.
	SecretUnset(context.Context, *connect.Request[v1.SecretUnsetRequest]) (*connect.Response[v1.SecretUnsetResponse], error)
	// MapForModule combines all configuration values visible to the module.
	// Local values take precedence.
	MapConfigsForModule(context.Context, *connect.Request[v1.MapConfigsForModuleRequest]) (*connect.Response[v1.MapConfigsForModuleResponse], error)
	// MapSecretsForModule combines all secrets visible to the module.
	// Local values take precedence.
	MapSecretsForModule(context.Context, *connect.Request[v1.MapSecretsForModuleRequest]) (*connect.Response[v1.MapSecretsForModuleResponse], error)
	// Reset the offset for a subscription to the latest of each partition.
	ResetSubscription(context.Context, *connect.Request[v1.ResetSubscriptionRequest]) (*connect.Response[v1.ResetSubscriptionResponse], error)
}

AdminServiceHandler is an implementation of the xyz.block.ftl.v1.AdminService service.

type ControllerServiceClient

type ControllerServiceClient interface {
	// Ping service for readiness.
	Ping(context.Context, *connect.Request[v1.PingRequest]) (*connect.Response[v1.PingResponse], error)
	ClusterInfo(context.Context, *connect.Request[v1.ClusterInfoRequest]) (*connect.Response[v1.ClusterInfoResponse], error)
	// List "processes" running on the cluster.
	ProcessList(context.Context, *connect.Request[v1.ProcessListRequest]) (*connect.Response[v1.ProcessListResponse], error)
	Status(context.Context, *connect.Request[v1.StatusRequest]) (*connect.Response[v1.StatusResponse], error)
	// Get list of artefacts that differ between the server and client.
	GetArtefactDiffs(context.Context, *connect.Request[v1.GetArtefactDiffsRequest]) (*connect.Response[v1.GetArtefactDiffsResponse], error)
	// Upload an artefact to the server.
	UploadArtefact(context.Context, *connect.Request[v1.UploadArtefactRequest]) (*connect.Response[v1.UploadArtefactResponse], error)
	// Stream deployment artefacts from the server.
	//
	// Each artefact is streamed one after the other as a sequence of max 1MB
	// chunks.
	GetDeploymentArtefacts(context.Context, *connect.Request[v1.GetDeploymentArtefactsRequest]) (*connect.ServerStreamForClient[v1.GetDeploymentArtefactsResponse], error)
	// Register a Runner with the Controller.
	//
	// Each runner issue a RegisterRunnerRequest to the ControllerService
	// every 10 seconds to maintain its heartbeat.
	RegisterRunner(context.Context) *connect.ClientStreamForClient[v1.RegisterRunnerRequest, v1.RegisterRunnerResponse]
}

ControllerServiceClient is a client for the xyz.block.ftl.v1.ControllerService service.

func NewControllerServiceClient

func NewControllerServiceClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) ControllerServiceClient

NewControllerServiceClient constructs a client for the xyz.block.ftl.v1.ControllerService 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 ControllerServiceHandler

type ControllerServiceHandler interface {
	// Ping service for readiness.
	Ping(context.Context, *connect.Request[v1.PingRequest]) (*connect.Response[v1.PingResponse], error)
	ClusterInfo(context.Context, *connect.Request[v1.ClusterInfoRequest]) (*connect.Response[v1.ClusterInfoResponse], error)
	// List "processes" running on the cluster.
	ProcessList(context.Context, *connect.Request[v1.ProcessListRequest]) (*connect.Response[v1.ProcessListResponse], error)
	Status(context.Context, *connect.Request[v1.StatusRequest]) (*connect.Response[v1.StatusResponse], error)
	// Get list of artefacts that differ between the server and client.
	GetArtefactDiffs(context.Context, *connect.Request[v1.GetArtefactDiffsRequest]) (*connect.Response[v1.GetArtefactDiffsResponse], error)
	// Upload an artefact to the server.
	UploadArtefact(context.Context, *connect.Request[v1.UploadArtefactRequest]) (*connect.Response[v1.UploadArtefactResponse], error)
	// Stream deployment artefacts from the server.
	//
	// Each artefact is streamed one after the other as a sequence of max 1MB
	// chunks.
	GetDeploymentArtefacts(context.Context, *connect.Request[v1.GetDeploymentArtefactsRequest], *connect.ServerStream[v1.GetDeploymentArtefactsResponse]) error
	// Register a Runner with the Controller.
	//
	// Each runner issue a RegisterRunnerRequest to the ControllerService
	// every 10 seconds to maintain its heartbeat.
	RegisterRunner(context.Context, *connect.ClientStream[v1.RegisterRunnerRequest]) (*connect.Response[v1.RegisterRunnerResponse], error)
}

ControllerServiceHandler is an implementation of the xyz.block.ftl.v1.ControllerService service.

type SchemaServiceClient

type SchemaServiceClient interface {
	// Ping service for readiness.
	Ping(context.Context, *connect.Request[v1.PingRequest]) (*connect.Response[v1.PingResponse], error)
	// Get the full schema.
	GetSchema(context.Context, *connect.Request[v1.GetSchemaRequest]) (*connect.Response[v1.GetSchemaResponse], error)
	// Pull schema changes from the Controller.
	//
	// Note that if there are no deployments this will block indefinitely, making it unsuitable for
	// just retrieving the schema. Use GetSchema for that.
	PullSchema(context.Context, *connect.Request[v1.PullSchemaRequest]) (*connect.ServerStreamForClient[v1.PullSchemaResponse], error)
	// UpdateModuleRuntime is used to update the runtime configuration of a module.
	UpdateDeploymentRuntime(context.Context, *connect.Request[v1.UpdateDeploymentRuntimeRequest]) (*connect.Response[v1.UpdateDeploymentRuntimeResponse], error)
	// GetDeployments is used to get the schema for all deployments.
	GetDeployments(context.Context, *connect.Request[v1.GetDeploymentsRequest]) (*connect.Response[v1.GetDeploymentsResponse], error)
	// CreateChangeset creates a new changeset.
	CreateChangeset(context.Context, *connect.Request[v1.CreateChangesetRequest]) (*connect.Response[v1.CreateChangesetResponse], error)
	// PrepareChangeset moves the changeset into the prepared state.
	PrepareChangeset(context.Context, *connect.Request[v1.PrepareChangesetRequest]) (*connect.Response[v1.PrepareChangesetResponse], error)
	// CommitChangeset makes all deployments for the changeset part of the canonical schema.
	CommitChangeset(context.Context, *connect.Request[v1.CommitChangesetRequest]) (*connect.Response[v1.CommitChangesetResponse], error)
	DrainChangeset(context.Context, *connect.Request[v1.DrainChangesetRequest]) (*connect.Response[v1.DrainChangesetResponse], error)
	FinalizeChangeset(context.Context, *connect.Request[v1.FinalizeChangesetRequest]) (*connect.Response[v1.FinalizeChangesetResponse], error)
	// RollbackChangeset Rolls back a failing changeset
	RollbackChangeset(context.Context, *connect.Request[v1.RollbackChangesetRequest]) (*connect.Response[v1.RollbackChangesetResponse], error)
	// FailChangeset fails an active changeset.
	FailChangeset(context.Context, *connect.Request[v1.FailChangesetRequest]) (*connect.Response[v1.FailChangesetResponse], error)
	// GetDeployment gets a deployment by deployment key
	GetDeployment(context.Context, *connect.Request[v1.GetDeploymentRequest]) (*connect.Response[v1.GetDeploymentResponse], error)
}

SchemaServiceClient is a client for the xyz.block.ftl.v1.SchemaService service.

func NewSchemaServiceClient

func NewSchemaServiceClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) SchemaServiceClient

NewSchemaServiceClient constructs a client for the xyz.block.ftl.v1.SchemaService 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 SchemaServiceHandler

type SchemaServiceHandler interface {
	// Ping service for readiness.
	Ping(context.Context, *connect.Request[v1.PingRequest]) (*connect.Response[v1.PingResponse], error)
	// Get the full schema.
	GetSchema(context.Context, *connect.Request[v1.GetSchemaRequest]) (*connect.Response[v1.GetSchemaResponse], error)
	// Pull schema changes from the Controller.
	//
	// Note that if there are no deployments this will block indefinitely, making it unsuitable for
	// just retrieving the schema. Use GetSchema for that.
	PullSchema(context.Context, *connect.Request[v1.PullSchemaRequest], *connect.ServerStream[v1.PullSchemaResponse]) error
	// UpdateModuleRuntime is used to update the runtime configuration of a module.
	UpdateDeploymentRuntime(context.Context, *connect.Request[v1.UpdateDeploymentRuntimeRequest]) (*connect.Response[v1.UpdateDeploymentRuntimeResponse], error)
	// GetDeployments is used to get the schema for all deployments.
	GetDeployments(context.Context, *connect.Request[v1.GetDeploymentsRequest]) (*connect.Response[v1.GetDeploymentsResponse], error)
	// CreateChangeset creates a new changeset.
	CreateChangeset(context.Context, *connect.Request[v1.CreateChangesetRequest]) (*connect.Response[v1.CreateChangesetResponse], error)
	// PrepareChangeset moves the changeset into the prepared state.
	PrepareChangeset(context.Context, *connect.Request[v1.PrepareChangesetRequest]) (*connect.Response[v1.PrepareChangesetResponse], error)
	// CommitChangeset makes all deployments for the changeset part of the canonical schema.
	CommitChangeset(context.Context, *connect.Request[v1.CommitChangesetRequest]) (*connect.Response[v1.CommitChangesetResponse], error)
	DrainChangeset(context.Context, *connect.Request[v1.DrainChangesetRequest]) (*connect.Response[v1.DrainChangesetResponse], error)
	FinalizeChangeset(context.Context, *connect.Request[v1.FinalizeChangesetRequest]) (*connect.Response[v1.FinalizeChangesetResponse], error)
	// RollbackChangeset Rolls back a failing changeset
	RollbackChangeset(context.Context, *connect.Request[v1.RollbackChangesetRequest]) (*connect.Response[v1.RollbackChangesetResponse], error)
	// FailChangeset fails an active changeset.
	FailChangeset(context.Context, *connect.Request[v1.FailChangesetRequest]) (*connect.Response[v1.FailChangesetResponse], error)
	// GetDeployment gets a deployment by deployment key
	GetDeployment(context.Context, *connect.Request[v1.GetDeploymentRequest]) (*connect.Response[v1.GetDeploymentResponse], error)
}

SchemaServiceHandler is an implementation of the xyz.block.ftl.v1.SchemaService service.

type UnimplementedAdminServiceHandler

type UnimplementedAdminServiceHandler struct{}

UnimplementedAdminServiceHandler returns CodeUnimplemented from all methods.

func (UnimplementedAdminServiceHandler) Ping

func (UnimplementedAdminServiceHandler) ResetSubscription added in v0.422.0

type UnimplementedControllerServiceHandler

type UnimplementedControllerServiceHandler struct{}

UnimplementedControllerServiceHandler returns CodeUnimplemented from all methods.

func (UnimplementedControllerServiceHandler) ClusterInfo added in v0.446.0

func (UnimplementedControllerServiceHandler) Ping

func (UnimplementedControllerServiceHandler) Status

type UnimplementedSchemaServiceHandler

type UnimplementedSchemaServiceHandler struct{}

UnimplementedSchemaServiceHandler returns CodeUnimplemented from all methods.

func (UnimplementedSchemaServiceHandler) CommitChangeset added in v0.435.0

func (UnimplementedSchemaServiceHandler) CreateChangeset added in v0.435.0

func (UnimplementedSchemaServiceHandler) DrainChangeset added in v0.436.0

func (UnimplementedSchemaServiceHandler) FailChangeset added in v0.435.0

func (UnimplementedSchemaServiceHandler) FinalizeChangeset added in v0.436.0

func (UnimplementedSchemaServiceHandler) GetDeployment added in v0.435.0

func (UnimplementedSchemaServiceHandler) GetDeployments added in v0.434.0

func (UnimplementedSchemaServiceHandler) Ping

func (UnimplementedSchemaServiceHandler) PrepareChangeset added in v0.435.0

func (UnimplementedSchemaServiceHandler) RollbackChangeset added in v0.442.0

type UnimplementedVerbServiceHandler

type UnimplementedVerbServiceHandler struct{}

UnimplementedVerbServiceHandler returns CodeUnimplemented from all methods.

func (UnimplementedVerbServiceHandler) Call

func (UnimplementedVerbServiceHandler) Ping

type VerbServiceClient

type VerbServiceClient interface {
	// Ping service for readiness.
	Ping(context.Context, *connect.Request[v1.PingRequest]) (*connect.Response[v1.PingResponse], error)
	// Issue a synchronous call to a Verb.
	Call(context.Context, *connect.Request[v1.CallRequest]) (*connect.Response[v1.CallResponse], error)
}

VerbServiceClient is a client for the xyz.block.ftl.v1.VerbService service.

func NewVerbServiceClient

func NewVerbServiceClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) VerbServiceClient

NewVerbServiceClient constructs a client for the xyz.block.ftl.v1.VerbService 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 VerbServiceHandler

type VerbServiceHandler interface {
	// Ping service for readiness.
	Ping(context.Context, *connect.Request[v1.PingRequest]) (*connect.Response[v1.PingResponse], error)
	// Issue a synchronous call to a Verb.
	Call(context.Context, *connect.Request[v1.CallRequest]) (*connect.Response[v1.CallResponse], error)
}

VerbServiceHandler is an implementation of the xyz.block.ftl.v1.VerbService service.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL