Documentation
¶
Index ¶
- Variables
- func GetServiceStartOrder(services map[string]*Service) ([]string, error)
- type BindMount
- type CPUArch
- type ConfigTypeOptions
- type Configs
- func (c Configs) SetBool(ref string, def *bool, opt []bool, optExt bool, cType string, ...)
- func (c Configs) SetBoolSlice(ref string, def []bool, opt []bool, optExt bool, cType string, ...)
- func (c Configs) SetFloat64(ref string, def *float64, opt []float64, optExt bool, cType string, ...)
- func (c Configs) SetFloat64Slice(ref string, def []float64, opt []float64, optExt bool, cType string, ...)
- func (c Configs) SetInt64(ref string, def *int64, opt []int64, optExt bool, cType string, ...)
- func (c Configs) SetInt64Slice(ref string, def []int64, opt []int64, optExt bool, cType string, ...)
- func (c Configs) SetString(ref string, def *string, opt []string, optExt bool, cType string, ...)
- func (c Configs) SetStringSlice(ref string, def []string, opt []string, optExt bool, cType string, ...)
- type DataType
- type DeploymentType
- type ExtDependencyTarget
- type HttpEndpoint
- type Input
- type InputGroup
- type Inputs
- type Module
- type ModuleType
- type Port
- type PortProtocol
- type Resource
- type ResourceTarget
- type RunConfig
- type Secret
- type Service
- type TmpfsMount
Constants ¶
This section is empty.
Variables ¶
View Source
var CPUArchMap = map[CPUArch]struct{}{ X86: {}, I386: {}, X86_64: {}, AMD64: {}, AARCH32: {}, ARM32V5: {}, ARM32V6: {}, ARM32V7: {}, AARCH64: {}, ARM64V8: {}, }
View Source
var DeploymentTypeMap = map[DeploymentType]struct{}{ SingleDeployment: {}, MultipleDeployment: {}, }
View Source
var ModuleTypeMap = map[ModuleType]struct{}{ AddOnModule: {}, DeviceConnectorModule: {}, }
View Source
var PortProtocolMap = map[PortProtocol]struct{}{ TcpPort: {}, UdpPort: {}, }
Functions ¶
Types ¶
type ConfigTypeOptions ¶
type ConfigTypeOptions map[string]configTypeOption
func (ConfigTypeOptions) SetBool ¶
func (o ConfigTypeOptions) SetBool(ref string, val bool)
func (ConfigTypeOptions) SetFloat64 ¶
func (o ConfigTypeOptions) SetFloat64(ref string, val float64)
func (ConfigTypeOptions) SetInt64 ¶
func (o ConfigTypeOptions) SetInt64(ref string, val int64)
func (ConfigTypeOptions) SetString ¶
func (o ConfigTypeOptions) SetString(ref string, val string)
type Configs ¶
type Configs map[string]configValue
func (Configs) SetBoolSlice ¶
func (Configs) SetFloat64 ¶
func (Configs) SetFloat64Slice ¶
func (Configs) SetInt64Slice ¶
type DeploymentType ¶
type DeploymentType = string
const ( SingleDeployment DeploymentType = "single" MultipleDeployment DeploymentType = "multiple" )
type ExtDependencyTarget ¶ added in v0.4.0
type HttpEndpoint ¶
type InputGroup ¶
type Module ¶
type Module struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` Tags util.Set[string] `json:"tags"` License string `json:"license"` Author string `json:"author"` Version string `json:"version"` Type ModuleType `json:"type"` DeploymentType DeploymentType `json:"deployment_type"` Architectures util.Set[CPUArch] `json:"architectures"` Services map[string]*Service `json:"services"` // {ref:Service} Volumes util.Set[string] `json:"volumes"` // {volName} Dependencies map[string]string `json:"dependencies"` // {moduleID:moduleVersion} Resources map[string]Resource `json:"resources"` // {ref:{tag}} Secrets map[string]Secret `json:"secrets"` // {ref:Secret} Configs Configs `json:"configs"` // {ref:ConfigValue} Inputs Inputs `json:"inputs"` }
type ModuleType ¶
type ModuleType = string
const ( AddOnModule ModuleType = "add-on" DeviceConnectorModule ModuleType = "device-connector" )
type Port ¶
type Port struct { Name *string `json:"name"` Number uint `json:"number"` Protocol PortProtocol `json:"protocol"` Bindings []uint `json:"bindings"` }
type PortProtocol ¶
type PortProtocol = string
const ( TcpPort PortProtocol = "tcp" UdpPort PortProtocol = "udp" )
type ResourceTarget ¶
type Service ¶
type Service struct { Name string `json:"name"` Image string `json:"image"` RunConfig RunConfig `json:"run_config"` BindMounts map[string]BindMount `json:"bind_mounts"` // {mntPoint:BindMount} Tmpfs map[string]TmpfsMount `json:"tmpfs"` // {mntPoint:TmpfsMount} Volumes map[string]string `json:"volumes"` // {mntPoint:volName} Resources map[string]ResourceTarget `json:"resources"` // {mntPoint:ResourceTarget} Secrets map[string]string `json:"secrets"` // {mntPoint:ref} Configs map[string]string `json:"configs"` // {refVar:ref} SrvReferences map[string]string `json:"srv_references"` // {refVar:ref} HttpEndpoints map[string]HttpEndpoint `json:"http_endpoints"` // {externalPath:HttpEndpoint} RequiredSrv util.Set[string] `json:"required_srv"` // {ref} RequiredBySrv util.Set[string] `json:"required_by_srv"` // {ref} ExtDependencies map[string]ExtDependencyTarget `json:"ext_dependencies"` // {refVar:ExtDependencyTarget} Ports []Port `json:"ports"` }
type TmpfsMount ¶
Click to show internal directories.
Click to hide internal directories.