Documentation
¶
Index ¶
- func CheckOwnerEnv(ctx context.Context, su suser.UserService, es senv.EnvService, ...) (bool, error)
- func CheckOwnerVar(ctx context.Context, su suser.UserService, vs senv.VariableService, ...) (bool, error)
- func CreateService(srv EnvRPC, options []connect.HandlerOption) (*api.Service, error)
- type EnvRPC
- func (e *EnvRPC) EnvironmentCollection(ctx context.Context, req *connect.Request[emptypb.Empty]) (*connect.Response[apiv1.EnvironmentCollectionResponse], error)
- func (e *EnvRPC) EnvironmentDelete(ctx context.Context, req *connect.Request[apiv1.EnvironmentDeleteRequest]) (*connect.Response[emptypb.Empty], error)
- func (e *EnvRPC) EnvironmentInsert(ctx context.Context, req *connect.Request[apiv1.EnvironmentInsertRequest]) (*connect.Response[emptypb.Empty], error)
- func (e *EnvRPC) EnvironmentSync(ctx context.Context, req *connect.Request[emptypb.Empty], ...) error
- func (e *EnvRPC) EnvironmentUpdate(ctx context.Context, req *connect.Request[apiv1.EnvironmentUpdateRequest]) (*connect.Response[emptypb.Empty], error)
- func (e *EnvRPC) EnvironmentVariableCollection(ctx context.Context, req *connect.Request[emptypb.Empty]) (*connect.Response[apiv1.EnvironmentVariableCollectionResponse], error)
- func (e *EnvRPC) EnvironmentVariableDelete(ctx context.Context, ...) (*connect.Response[emptypb.Empty], error)
- func (e *EnvRPC) EnvironmentVariableInsert(ctx context.Context, ...) (*connect.Response[emptypb.Empty], error)
- func (e *EnvRPC) EnvironmentVariableSync(ctx context.Context, req *connect.Request[emptypb.Empty], ...) error
- func (e *EnvRPC) EnvironmentVariableUpdate(ctx context.Context, ...) (*connect.Response[emptypb.Empty], error)
- type EnvRPCDeps
- type EnvRPCReaders
- type EnvRPCServices
- type EnvRPCStreamers
- type EnvironmentEvent
- type EnvironmentTopic
- type EnvironmentVariableEvent
- type EnvironmentVariableTopic
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckOwnerEnv ¶
func CheckOwnerEnv(ctx context.Context, su suser.UserService, es senv.EnvService, envid idwrap.IDWrap) (bool, error)
Helper function to check environment ownership
func CheckOwnerVar ¶
func CheckOwnerVar(ctx context.Context, su suser.UserService, vs senv.VariableService, es senv.EnvService, varID idwrap.IDWrap) (bool, error)
Helper function to check environment variable ownership
func CreateService ¶
Types ¶
type EnvRPC ¶
func New ¶
func New(deps EnvRPCDeps) EnvRPC
func (*EnvRPC) EnvironmentCollection ¶
func (e *EnvRPC) EnvironmentCollection(ctx context.Context, req *connect.Request[emptypb.Empty]) (*connect.Response[apiv1.EnvironmentCollectionResponse], error)
EnvironmentCollection returns all environments the user has access to
func (*EnvRPC) EnvironmentDelete ¶
func (e *EnvRPC) EnvironmentDelete(ctx context.Context, req *connect.Request[apiv1.EnvironmentDeleteRequest]) (*connect.Response[emptypb.Empty], error)
EnvironmentDelete deletes an environment
func (*EnvRPC) EnvironmentInsert ¶
func (e *EnvRPC) EnvironmentInsert(ctx context.Context, req *connect.Request[apiv1.EnvironmentInsertRequest]) (*connect.Response[emptypb.Empty], error)
EnvironmentInsert creates a new environment
func (*EnvRPC) EnvironmentSync ¶
func (e *EnvRPC) EnvironmentSync(ctx context.Context, req *connect.Request[emptypb.Empty], stream *connect.ServerStream[apiv1.EnvironmentSyncResponse]) error
EnvironmentSync handles real-time synchronization for environments
func (*EnvRPC) EnvironmentUpdate ¶
func (e *EnvRPC) EnvironmentUpdate(ctx context.Context, req *connect.Request[apiv1.EnvironmentUpdateRequest]) (*connect.Response[emptypb.Empty], error)
EnvironmentUpdate updates an existing environment
func (*EnvRPC) EnvironmentVariableCollection ¶
func (e *EnvRPC) EnvironmentVariableCollection(ctx context.Context, req *connect.Request[emptypb.Empty]) (*connect.Response[apiv1.EnvironmentVariableCollectionResponse], error)
EnvironmentVariableCollection returns all environment variables for environments the user has access to
func (*EnvRPC) EnvironmentVariableDelete ¶
func (e *EnvRPC) EnvironmentVariableDelete(ctx context.Context, req *connect.Request[apiv1.EnvironmentVariableDeleteRequest]) (*connect.Response[emptypb.Empty], error)
EnvironmentVariableDelete deletes environment variables
func (*EnvRPC) EnvironmentVariableInsert ¶
func (e *EnvRPC) EnvironmentVariableInsert(ctx context.Context, req *connect.Request[apiv1.EnvironmentVariableInsertRequest]) (*connect.Response[emptypb.Empty], error)
EnvironmentVariableInsert creates new environment variables
func (*EnvRPC) EnvironmentVariableSync ¶
func (e *EnvRPC) EnvironmentVariableSync(ctx context.Context, req *connect.Request[emptypb.Empty], stream *connect.ServerStream[apiv1.EnvironmentVariableSyncResponse]) error
EnvironmentVariableSync handles real-time synchronization for environment variables
type EnvRPCDeps ¶
type EnvRPCDeps struct {
DB *sql.DB
Services EnvRPCServices
Readers EnvRPCReaders
Streamers EnvRPCStreamers
Publisher mutation.Publisher // Unified publisher for cascade delete events
}
func (*EnvRPCDeps) Validate ¶
func (d *EnvRPCDeps) Validate() error
type EnvRPCReaders ¶
type EnvRPCReaders struct {
Env *senv.EnvReader
Variable *senv.VariableReader
}
func (*EnvRPCReaders) Validate ¶
func (r *EnvRPCReaders) Validate() error
type EnvRPCServices ¶
type EnvRPCServices struct {
Env senv.EnvService
Variable senv.VariableService
User suser.UserService
Workspace sworkspace.WorkspaceService
}
func (*EnvRPCServices) Validate ¶
func (s *EnvRPCServices) Validate() error
type EnvRPCStreamers ¶
type EnvRPCStreamers struct {
Env eventstream.SyncStreamer[EnvironmentTopic, EnvironmentEvent]
Variable eventstream.SyncStreamer[EnvironmentVariableTopic, EnvironmentVariableEvent]
}
func (*EnvRPCStreamers) Validate ¶
func (s *EnvRPCStreamers) Validate() error
type EnvironmentEvent ¶
type EnvironmentEvent struct {
Type string
Environment *apiv1.Environment
}
type EnvironmentTopic ¶
type EnvironmentVariableEvent ¶
type EnvironmentVariableEvent struct {
Type string
Variable *apiv1.EnvironmentVariable
}