controller

package
v0.0.5 Latest Latest
Warning

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

Go to latest
Published: Dec 13, 2024 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Controller

type Controller struct {
	// contains filtered or unexported fields
}

func New

func New(config config.Config, db Database, deploymentClient DeploymentClient) *Controller

func (*Controller) CreateInstance

func (this *Controller) CreateInstance(instance model.Instance, userId string, token string) (result model.Instance, err error, code int)

func (*Controller) DeleteInstances

func (this *Controller) DeleteInstances(ids []string, userId string) (err error, errCode int)

func (*Controller) EnsureAllInstancesDeployed

func (this *Controller) EnsureAllInstancesDeployed() (err error)

func (*Controller) ListInstances

func (this *Controller) ListInstances(userId string, limit int64, offset int64, sort string, asc bool, search string, includeGenerated bool) (results []model.Instance, total int64, err error, errCode int)

func (*Controller) ReadInstance

func (this *Controller) ReadInstance(id string, userId string) (result model.Instance, err error, errCode int)

func (*Controller) SetInstance

func (this *Controller) SetInstance(instance model.Instance, userId string, token string) (err error, code int)

type Database

type Database interface {
	ListInstances(ctx context.Context, limit int64, offset int64, sort string, owner string, asc bool, search string, includeGenerated bool) (result []model.Instance, count int64, err error)
	GetInstance(ctx context.Context, id string, owner string) (instance model.Instance, exists bool, err error)
	SetInstance(ctx context.Context, instance model.Instance, owner string) error
	GetInstances(ctx context.Context, ids []string, owner string) (result []model.Instance, allExist bool, err error)
	RemoveInstances(ctx context.Context, ids []string, owner string) error
}

type DeploymentClient

type DeploymentClient interface {
	CreateContainer(name string, image string, env map[string]string, restart bool) (id string, err error)
	UpdateContainer(id string, name string, image string, env map[string]string, restart bool) (newId string, err error)
	RemoveContainer(id string) (err error)
	ContainerExists(id string) (exists bool, err error)
}

type Driver

type Driver interface {
	CreateInstance(instance *model.Instance, env map[string]string) (serviceId string, err error)
	DeleteInstance(id string) (err error)
}

type KafkaAdmin

type KafkaAdmin interface {
	CreateTopic(name string) (err error)
	DeleteTopic(name string) (err error)
}

Jump to

Keyboard shortcuts

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