Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AppsToTargetGroups ¶
func AppsToTargetGroups(apps *AppList) map[string]*config.TargetGroup
AppsToTargetGroups takes an array of Marathon apps and converts them into target groups.
func RandomAppsURL ¶
RandomAppsURL randomly selects a server from an array and creates an URL pointing to the app list.
Types ¶
type App ¶
type App struct { ID string `json:"id"` Tasks []Task `json:"tasks"` RunningTasks int `json:"tasksRunning"` Labels map[string]string `json:"labels"` Container Container `json:"container"` PortDefinitions []PortDefinitions `json:"portDefinitions"` }
App describes a service running on Marathon.
type AppListClient ¶
AppListClient defines a function that can be used to get an application list from marathon.
type Container ¶
type Container struct {
Docker DockerContainer `json:"docker"`
}
Container describes the runtime an app in running in.
type Discovery ¶
type Discovery struct {
// contains filtered or unexported fields
}
Discovery provides service discovery based on a Marathon instance.
func NewDiscovery ¶
func NewDiscovery(conf *config.MarathonSDConfig) (*Discovery, error)
NewDiscovery returns a new Marathon Discovery.
type DockerContainer ¶
type DockerContainer struct { Image string `json:"image"` PortMappings []PortMappings `json:"portMappings"` }
DockerContainer describes a container which uses the docker runtime.
type PortDefinitions ¶
PortDefinitions describes which load balancer port you should access to access the service.
type PortMappings ¶
PortMappings describes in which port the process are binding inside the docker container.