model

package
v0.13.0 Latest Latest
Warning

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

Go to latest
Published: May 20, 2024 License: GPL-3.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	BoxPrefixName = "box-"
	BoxShellNone  = "none" // distroless
	BoxPortNone   = "none" // runtime only when tunnelling

)
View Source
const (
	LabelBoxSize = "com.hckops.box.size"
)

Variables

This section is empty.

Functions

func AddBoxSize added in v0.9.0

func AddBoxSize(labels commonModel.Labels, size ResourceSize) commonModel.Labels

func BoxLabelSelector added in v0.8.1

func BoxLabelSelector() string

func NewBoxLabels added in v0.9.0

func NewBoxLabels() commonModel.Labels

func PortFormatPadding added in v0.8.0

func PortFormatPadding(ports []BoxPort) int

func ToBoxTemplateName

func ToBoxTemplateName(boxName string) string

ToBoxTemplateName returns the strictly validated template name, or the original trimmed name

func ToEnvironmentVariables added in v0.9.0

func ToEnvironmentVariables(values []string) map[string]BoxEnv

Types

type BoxClientOptions added in v0.8.0

type BoxClientOptions struct {
	Provider   BoxProvider
	DockerOpts *commonModel.DockerOptions
	KubeOpts   *commonModel.KubeOptions
	CloudOpts  *commonModel.CloudOptions
}

type BoxDetails added in v0.8.0

type BoxDetails struct {
	Info         BoxInfo
	TemplateInfo *BoxTemplateInfo
	ProviderInfo *BoxProviderInfo
	Size         ResourceSize
	Env          []BoxEnv  // TODO map[string]BoxEnv
	Ports        []BoxPort // TODO map[string]BoxPort
	Created      time.Time
}

type BoxEnv added in v0.8.0

type BoxEnv struct {
	Key   string
	Value string
}

func SortEnv added in v0.8.0

func SortEnv(env []BoxEnv) []BoxEnv

type BoxInfo

type BoxInfo struct {
	Id      string
	Name    string
	Healthy bool // TODO BoxStatus healthy, offline, unknown, error, etc
}

type BoxPort

type BoxPort struct {
	Alias  string
	Remote string // TODO int ?
	Local  string // TODO int ?
	Public bool   // TODO
}

func SortPorts added in v0.8.0

func SortPorts(ports []BoxPort) []BoxPort

type BoxProvider

type BoxProvider string

func (BoxProvider) String added in v0.7.0

func (p BoxProvider) String() string

type BoxProviderInfo added in v0.8.0

type BoxProviderInfo struct {
	Provider       BoxProvider
	DockerProvider *commonModel.DockerProviderInfo
	KubeProvider   *commonModel.KubeProviderInfo
}

type BoxTemplateInfo added in v0.8.0

type BoxTemplateInfo struct {
	CachedTemplate *commonModel.CachedTemplateInfo
	GitTemplate    *commonModel.GitTemplateInfo
}

func (*BoxTemplateInfo) IsCached added in v0.8.0

func (info *BoxTemplateInfo) IsCached() bool

type BoxV1

type BoxV1 struct {
	Kind    string
	Name    string
	Tags    []string
	Image   commonModel.Image
	Shell   string
	Env     []string
	Network struct {
		Ports []string
	}
}

func (*BoxV1) EnvironmentVariableValues added in v0.8.1

func (box *BoxV1) EnvironmentVariableValues() []BoxEnv

func (*BoxV1) EnvironmentVariables added in v0.8.1

func (box *BoxV1) EnvironmentVariables() map[string]BoxEnv

func (*BoxV1) GenerateName

func (box *BoxV1) GenerateName() string

func (*BoxV1) HasPorts

func (box *BoxV1) HasPorts() bool

func (*BoxV1) MainContainerName added in v0.12.1

func (box *BoxV1) MainContainerName() string

func (*BoxV1) NetworkPortValues added in v0.8.1

func (box *BoxV1) NetworkPortValues(includeVirtual bool) []BoxPort

func (*BoxV1) NetworkPorts

func (box *BoxV1) NetworkPorts(includeVirtual bool) map[string]BoxPort

TODO return error validation?

func (*BoxV1) Pretty

func (box *BoxV1) Pretty() string

type CommonBoxOptions added in v0.8.0

type CommonBoxOptions struct {
	EventBus *event.EventBus
}

func NewCommonBoxOpts added in v0.8.0

func NewCommonBoxOpts() *CommonBoxOptions

type ConnectOptions added in v0.8.0

type ConnectOptions struct {
	Template            *BoxV1
	StreamOpts          *commonModel.StreamOptions
	Name                string
	DisableExec         bool
	DisableTunnel       bool
	DeleteOnExit        bool
	OnInterruptCallback func(func())
}

type CreateOptions added in v0.8.0

type CreateOptions struct {
	Template   *BoxV1
	Labels     commonModel.Labels
	CommonInfo commonModel.CommonInfo
	Size       ResourceSize
}

type ResourceSize added in v0.8.0

type ResourceSize uint
const (
	ExtraSmall ResourceSize = iota
	Small
	Medium
	Large
	ExtraLarge
)

func ExistResourceSize added in v0.8.0

func ExistResourceSize(value string) (ResourceSize, error)

func ToBoxSize added in v0.9.0

func ToBoxSize(labels commonModel.Labels) (ResourceSize, error)

func (ResourceSize) String added in v0.8.0

func (size ResourceSize) String() string

func (ResourceSize) ToKubeResource added in v0.8.0

func (size ResourceSize) ToKubeResource() *kubernetes.KubeResource

Jump to

Keyboard shortcuts

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