Documentation
¶
Index ¶
- func DeployApplication(controller IofogController, application interface{}, name string) error
- func DeployApplicationTemplate(controller IofogController, controllerBaseURL *url.URL, template interface{}, ...) error
- func DeployMicroservice(controller IofogController, microservice interface{}, appName, name string) error
- func ParseFQMsvcName(fqName string) (appName, name string, err error)
- type AgentConfiguration
- type Application
- type ApplicationData
- type ApplicationTemplate
- type ApplicationTemplateInfo
- type Applications
- type CatalogItem
- type ConflictError
- type Error
- type HTTPError
- type Header
- type HeaderMetadata
- type InputError
- type InternalError
- type IofogController
- type IofogHeader
- type Kind
- type Microservice
- type MicroserviceAgent
- type MicroserviceContainer
- type MicroserviceEnvironment
- type MicroserviceExtraHost
- type MicroserviceImages
- type MicroservicePortMapping
- type MicroservicePublicPortInfo
- type MicroservicePublicPortRouterInfo
- type MicroserviceVolumeMapping
- type Microservices
- type NestedMap
- type NotFoundError
- type Route
- type TemplateVariable
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeployApplication ¶
func DeployApplication(controller IofogController, application interface{}, name string) error
func DeployApplicationTemplate ¶
func DeployApplicationTemplate(controller IofogController, controllerBaseURL *url.URL, template interface{}, name string) error
func DeployMicroservice ¶
func DeployMicroservice(controller IofogController, microservice interface{}, appName, name string) error
func ParseFQMsvcName ¶
Types ¶
type AgentConfiguration ¶
type AgentConfiguration struct {
DockerURL *string `yaml:"dockerUrl,omitempty" json:"dockerUrl,omitempty"`
DiskLimit *int64 `yaml:"diskLimit,omitempty" json:"diskLimit,omitempty"`
DiskDirectory *string `yaml:"diskDirectory,omitempty" json:"diskDirectory,omitempty"`
MemoryLimit *int64 `yaml:"memoryLimit,omitempty" json:"memoryLimit,omitempty"`
CPULimit *int64 `yaml:"cpuLimit,omitempty" json:"cpuLimit,omitempty"`
LogLimit *int64 `yaml:"logLimit,omitempty" json:"logLimit,omitempty"`
LogDirectory *string `yaml:"logDirectory,omitempty" json:"logDirectory,omitempty"`
LogFileCount *int64 `yaml:"logFileCount,omitempty" json:"logFileCount,omitempty"`
StatusFrequency *float64 `yaml:"statusFrequency,omitempty" json:"statusFrequency,omitempty"`
ChangeFrequency *float64 `yaml:"changeFrequency,omitempty" json:"changeFrequency,omitempty"`
DeviceScanFrequency *float64 `yaml:"deviceScanFrequency,omitempty" json:"deviceScanFrequency,omitempty"`
BluetoothEnabled *bool `yaml:"bluetoothEnabled,omitempty" json:"bluetoothEnabled,omitempty"`
WatchdogEnabled *bool `yaml:"watchdogEnabled,omitempty" json:"watchdogEnabled,omitempty"`
AbstractedHardwareEnabled *bool `yaml:"abstractedHardwareEnabled,omitempty" json:"abstractedHardwareEnabled,omitempty"`
RouterMode *string `yaml:"routerMode,omitempty" json:"routerMode,omitempty"` // [edge, interior, none], default: edge
RouterPort *int `yaml:"routerPort,omitempty" json:"routerPort,omitempty"` // default: 5672
UpstreamRouters *[]string `yaml:"upstreamRouters,omitempty" json:"upstreamRouters,omitempty"` // ignored if routerMode: none
NetworkRouter *string `yaml:"networkRouter,omitempty" json:"networkRouter,omitempty"` // required if routerMone: none
}
+k8s:deepcopy-gen=true
func (*AgentConfiguration) DeepCopy ¶
func (in *AgentConfiguration) DeepCopy() *AgentConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentConfiguration.
func (*AgentConfiguration) DeepCopyInto ¶
func (in *AgentConfiguration) DeepCopyInto(out *AgentConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Application ¶
type Application struct {
Name string `yaml:"name" json:"name"`
Microservices []Microservice `yaml:"microservices,omitempty" json:"microservices,omitempty"`
Routes []Route `yaml:"routes,omitempty" json:"routes,omitempty"`
ID int `yaml:"id,omitempty" json:"id,omitempty"`
Template *ApplicationTemplate `yaml:"template,omitempty" json:"template,omitempty"`
}
Application contains information for configuring an application +k8s:deepcopy-gen=true
func (*Application) DeepCopy ¶
func (in *Application) DeepCopy() *Application
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Application.
func (*Application) DeepCopyInto ¶
func (in *Application) DeepCopyInto(out *Application)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationData ¶
type ApplicationData struct {
MicroserviceByName map[string]*client.MicroserviceInfo
AgentsByName map[string]*client.AgentInfo
CatalogByID map[int]*client.CatalogItemInfo
RegistryByID map[int]*client.RegistryInfo
CatalogByName map[string]*client.CatalogItemInfo
FlowInfo *client.FlowInfo
}
ApplicationData is data fetched from controller at init time
type ApplicationTemplate ¶
type ApplicationTemplate struct {
Name string `yaml:"name,omitempty"`
Description string `yaml:"description,omitempty"`
Variables []TemplateVariable `yaml:"variables,omitempty"`
Application *ApplicationTemplateInfo `yaml:"application,omitempty"`
}
ApplicationTemplate contains information for configuring an application template +k8s:deepcopy-gen=true
func (*ApplicationTemplate) DeepCopy ¶
func (in *ApplicationTemplate) DeepCopy() *ApplicationTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationTemplate.
func (*ApplicationTemplate) DeepCopyInto ¶
func (in *ApplicationTemplate) DeepCopyInto(out *ApplicationTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationTemplateInfo ¶
type ApplicationTemplateInfo struct {
Microservices []Microservice `yaml:"microservices"`
Routes []Route `yaml:"routes"`
}
ApplicationTemplateInfo contains microservice and route details for template +k8s:deepcopy-gen=true
func (*ApplicationTemplateInfo) DeepCopy ¶
func (in *ApplicationTemplateInfo) DeepCopy() *ApplicationTemplateInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationTemplateInfo.
func (*ApplicationTemplateInfo) DeepCopyInto ¶
func (in *ApplicationTemplateInfo) DeepCopyInto(out *ApplicationTemplateInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Applications ¶
type Applications struct {
Applications []Application `yaml:"applications" json:"applications"`
}
Applications is a list of applications +k8s:deepcopy-gen=true
func (*Applications) DeepCopy ¶
func (in *Applications) DeepCopy() *Applications
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Applications.
func (*Applications) DeepCopyInto ¶
func (in *Applications) DeepCopyInto(out *Applications)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CatalogItem ¶
type CatalogItem struct {
ID int `yaml:"id" json:"id"`
X86 string `yaml:"x86" json:"x86"`
ARM string `yaml:"arm" json:"arm"`
Registry string `yaml:"registry" json:"registry"`
Name string `yaml:"name" json:"name"`
Description string `yaml:"description" json:"description"`
ConfigExample string `yaml:"configExample" json:"configExample"`
}
CatalogItem contains information about a catalog item +k8s:deepcopy-gen=true
func (*CatalogItem) DeepCopy ¶
func (in *CatalogItem) DeepCopy() *CatalogItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CatalogItem.
func (*CatalogItem) DeepCopyInto ¶
func (in *CatalogItem) DeepCopyInto(out *CatalogItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConflictError ¶
type ConflictError struct {
// contains filtered or unexported fields
}
ConflictError export
func NewConflictError ¶
func NewConflictError(msg string) (err *ConflictError)
NewConflictError export
type HTTPError ¶
type HTTPError struct {
Code int
// contains filtered or unexported fields
}
HTTPError export
func NewHTTPError ¶
NewHTTPError export
type Header ¶
type Header struct {
APIVersion string `yaml:"apiVersion" json:"apiVersion"`
Kind Kind `yaml:"kind" json:"kind"`
Metadata HeaderMetadata `yaml:"metadata" json:"metadata"`
Spec interface{} `yaml:"spec" json:"spec"`
}
Header contains k8s yaml header
type HeaderMetadata ¶
type HeaderMetadata struct {
Name string `yaml:"name" json:"name"`
Namespace string `yaml:"namespace" json:"namespace"`
}
HeaderMetadata contains k8s metadata +k8s:deepcopy-gen=true
func (*HeaderMetadata) DeepCopy ¶
func (in *HeaderMetadata) DeepCopy() *HeaderMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeaderMetadata.
func (*HeaderMetadata) DeepCopyInto ¶
func (in *HeaderMetadata) DeepCopyInto(out *HeaderMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InputError ¶
type InputError struct {
// contains filtered or unexported fields
}
InputError export
type InternalError ¶
type InternalError struct {
// contains filtered or unexported fields
}
InternalError export
func NewInternalError ¶
func NewInternalError(message string) (err *InternalError)
NewInternalError export
type IofogController ¶
type IofogController struct {
Email string `yaml:"email" json:"email"`
Password string `yaml:"password" json:"password"`
Endpoint string `yaml:"endpoint" json:"endpoint"`
Token string `yaml:"token" json:"token"`
}
IofogController contains informations needed to connect to the controller +k8s:deepcopy-gen=true
func (*IofogController) DeepCopy ¶
func (in *IofogController) DeepCopy() *IofogController
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IofogController.
func (*IofogController) DeepCopyInto ¶
func (in *IofogController) DeepCopyInto(out *IofogController)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Microservice ¶
type Microservice struct {
UUID string `yaml:"uuid" json:"uuid"`
Name string `yaml:"name" json:"name"`
Agent MicroserviceAgent `yaml:"agent" json:"agent"`
Images *MicroserviceImages `yaml:"images,omitempty" json:"images,omitempty"`
Container MicroserviceContainer `yaml:"container,omitempty" json:"container,omitempty"`
Config NestedMap `yaml:"config" json:"config"`
Flow *string `yaml:"flow,omitempty" json:"flow,omitempty"`
Application *string `yaml:"application,omitempty" json:"application,omitempty"`
Created string `yaml:"created,omitempty" json:"created,omitempty"`
Rebuild interface{} `yaml:"rebuild,omitempty" json:"rebuild,omitempty"` // +k8s:deepcopy-gen=ignore
}
Microservice contains information for configuring a microservice +k8s:deepcopy-gen=true
func (*Microservice) DeepCopy ¶
func (in *Microservice) DeepCopy() *Microservice
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Microservice.
func (*Microservice) DeepCopyInto ¶
func (in *Microservice) DeepCopyInto(out *Microservice)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicroserviceAgent ¶
type MicroserviceAgent struct {
Name string `yaml:"name" json:"name"`
Config AgentConfiguration `yaml:"config" json:"config"`
}
MicroserviceAgent contains information about required agent configuration for a microservice +k8s:deepcopy-gen=true
func (*MicroserviceAgent) DeepCopy ¶
func (in *MicroserviceAgent) DeepCopy() *MicroserviceAgent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicroserviceAgent.
func (*MicroserviceAgent) DeepCopyInto ¶
func (in *MicroserviceAgent) DeepCopyInto(out *MicroserviceAgent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicroserviceContainer ¶
type MicroserviceContainer struct {
Commands []string `yaml:"commands,omitempty" json:"commands,omitempty"`
Volumes *[]MicroserviceVolumeMapping `yaml:"volumes,omitempty" json:"volumes,omitempty"`
Env *[]MicroserviceEnvironment `yaml:"env,omitempty" json:"env,omitempty"`
ExtraHosts *[]MicroserviceExtraHost `yaml:"extraHosts,omitempty" json:"extraHosts,omitempty"`
Ports []MicroservicePortMapping `yaml:"ports" json:"ports"`
RootHostAccess interface{} `yaml:"rootHostAccess" json:"rootHostAccess"` // +k8s:deepcopy-gen=ignore
}
MicroserviceContainer contains information for configuring a microservice container +k8s:deepcopy-gen=true
func (*MicroserviceContainer) DeepCopy ¶
func (in *MicroserviceContainer) DeepCopy() *MicroserviceContainer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicroserviceContainer.
func (*MicroserviceContainer) DeepCopyInto ¶
func (in *MicroserviceContainer) DeepCopyInto(out *MicroserviceContainer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicroserviceEnvironment ¶
type MicroserviceEnvironment struct {
Key string `yaml:"key" json:"key"`
Value string `yaml:"value" json:"value"`
}
+k8s:deepcopy-gen=true
func (*MicroserviceEnvironment) DeepCopy ¶
func (in *MicroserviceEnvironment) DeepCopy() *MicroserviceEnvironment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicroserviceEnvironment.
func (*MicroserviceEnvironment) DeepCopyInto ¶
func (in *MicroserviceEnvironment) DeepCopyInto(out *MicroserviceEnvironment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicroserviceExtraHost ¶
type MicroserviceExtraHost struct {
Name string `yaml:"name" json:"name,omitempty"`
Address string `yaml:"address" json:"address,omitempty"`
Value string `yaml:"value" json:"value,omitempty"`
}
+k8s:deepcopy-gen=true
func (*MicroserviceExtraHost) DeepCopy ¶
func (in *MicroserviceExtraHost) DeepCopy() *MicroserviceExtraHost
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicroserviceExtraHost.
func (*MicroserviceExtraHost) DeepCopyInto ¶
func (in *MicroserviceExtraHost) DeepCopyInto(out *MicroserviceExtraHost)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicroserviceImages ¶
type MicroserviceImages struct {
CatalogID int `yaml:"catalogId" json:"catalogId"`
X86 string `yaml:"x86" json:"x86"`
ARM string `yaml:"arm" json:"arm"`
Registry string `yaml:"registry" json:"registry"`
}
MicroserviceImages contains information about the images for a microservice +k8s:deepcopy-gen=true
func (*MicroserviceImages) DeepCopy ¶
func (in *MicroserviceImages) DeepCopy() *MicroserviceImages
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicroserviceImages.
func (*MicroserviceImages) DeepCopyInto ¶
func (in *MicroserviceImages) DeepCopyInto(out *MicroserviceImages)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicroservicePortMapping ¶
type MicroservicePortMapping struct {
Internal int64 `json:"internal"`
External int64 `json:"external"`
Public *MicroservicePublicPortInfo `yaml:"public,omitempty" json:"public,omitempty"`
Protocol string `json:"protocol,omitempty"`
}
+k8s:deepcopy-gen=true
func (*MicroservicePortMapping) DeepCopy ¶
func (in *MicroservicePortMapping) DeepCopy() *MicroservicePortMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicroservicePortMapping.
func (*MicroservicePortMapping) DeepCopyInto ¶
func (in *MicroservicePortMapping) DeepCopyInto(out *MicroservicePortMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicroservicePublicPortInfo ¶
type MicroservicePublicPortInfo struct {
Schemes []string `json:"schemes"`
Links []string `json:"links"`
Protocol string `json:"protocol"`
Enabled bool `json:"enabled"`
Router *MicroservicePublicPortRouterInfo `yaml:"router,omitempty" json:"router,omitempty"`
}
+k8s:deepcopy-gen=true
func (*MicroservicePublicPortInfo) DeepCopy ¶ added in v3.2.0
func (in *MicroservicePublicPortInfo) DeepCopy() *MicroservicePublicPortInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicroservicePublicPortInfo.
func (*MicroservicePublicPortInfo) DeepCopyInto ¶ added in v3.2.0
func (in *MicroservicePublicPortInfo) DeepCopyInto(out *MicroservicePublicPortInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicroservicePublicPortRouterInfo ¶
+k8s:deepcopy-gen=true
func (*MicroservicePublicPortRouterInfo) DeepCopy ¶ added in v3.2.0
func (in *MicroservicePublicPortRouterInfo) DeepCopy() *MicroservicePublicPortRouterInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicroservicePublicPortRouterInfo.
func (*MicroservicePublicPortRouterInfo) DeepCopyInto ¶ added in v3.2.0
func (in *MicroservicePublicPortRouterInfo) DeepCopyInto(out *MicroservicePublicPortRouterInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MicroserviceVolumeMapping ¶
type MicroserviceVolumeMapping struct {
HostDestination string `yaml:"hostDestination" json:"hostDestination"`
ContainerDestination string `yaml:"containerDestination" json:"containerDestination"`
AccessMode string `yaml:"accessMode" json:"accessMode"`
Type string `yaml:"type,omitempty" json:"type,omitempty"`
}
+k8s:deepcopy-gen=true
func (*MicroserviceVolumeMapping) DeepCopy ¶
func (in *MicroserviceVolumeMapping) DeepCopy() *MicroserviceVolumeMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MicroserviceVolumeMapping.
func (*MicroserviceVolumeMapping) DeepCopyInto ¶
func (in *MicroserviceVolumeMapping) DeepCopyInto(out *MicroserviceVolumeMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Microservices ¶
type Microservices struct {
Microservices []Microservice `yaml:"microservices" json:"microservices"`
}
Microservices is a list of Microservice +k8s:deepcopy-gen=true
func (*Microservices) DeepCopy ¶
func (in *Microservices) DeepCopy() *Microservices
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Microservices.
func (*Microservices) DeepCopyInto ¶
func (in *Microservices) DeepCopyInto(out *Microservices)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NotFoundError ¶
type NotFoundError struct {
// contains filtered or unexported fields
}
NotFoundError export
func NewNotFoundError ¶
func NewNotFoundError(msg string) (err *NotFoundError)
NewNotFoundError export
type Route ¶
type Route struct {
Name string `yaml:"name" json:"name"`
From string `yaml:"from" json:"from"`
To string `yaml:"to" json:"to"`
}
Route contains information about a route from one microservice to another +k8s:deepcopy-gen=true
func (*Route) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Route.
func (*Route) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TemplateVariable ¶
type TemplateVariable struct {
Key string `yaml:"key"`
Description string `yaml:"description"`
DefaultValue interface{} `yaml:"defaultValue,omitempty"` // +k8s:deepcopy-gen=ignore
Value interface{} `yaml:"value,omitempty"` // +k8s:deepcopy-gen=ignore
}
TemplateVariable contains a key-value pair +k8s:deepcopy-gen=true
func (*TemplateVariable) DeepCopy ¶
func (in *TemplateVariable) DeepCopy() *TemplateVariable
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateVariable.
func (*TemplateVariable) DeepCopyInto ¶
func (in *TemplateVariable) DeepCopyInto(out *TemplateVariable)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.