Documentation ¶
Overview ¶
Package marathon is the Marathon implementation for a Panamax Remote Adapter.
Index ¶
Constants ¶
const ( DEPLOY = iota OK FAIL TIMEOUT )
const (
DEPLOY_TIMEOUT = time.Minute * 15
)
Variables ¶
This section is empty.
Functions ¶
func NewMarathonAdapter ¶
func NewMarathonAdapter(endpoint string) *marathonAdapter
Create an instance of the marathon adapter.
Types ¶
type Deployer ¶
type Deployer interface { BuildDeploymentGroup([]*api.Service, gomarathonClientAbstractor) *deploymentGroup DeployGroup(*deploymentGroup, time.Duration) status }
Deployment interface for building a group deployment and issuing the actual deployment via provided client.
type MarathonConverter ¶
type MarathonConverter struct { }
type MarathonDeployer ¶
type MarathonDeployer struct {
// contains filtered or unexported fields
}
func (MarathonDeployer) BuildDeploymentGroup ¶
func (m MarathonDeployer) BuildDeploymentGroup(services []*api.Service, client gomarathonClientAbstractor) *deploymentGroup
BuildDeploymentGroup converts a list of api Services into a deployment group.
Generates the unique identifier for the marathon group, investigates the services dependencies, and converts the services into a list of gomarathon Applications.
func (MarathonDeployer) DeployGroup ¶
func (m MarathonDeployer) DeployGroup(myGroup *deploymentGroup, timeout time.Duration) status
DeployGroup
Manages a group of deployment structures as a single deployment. It uses a deployment channel and a timeout channel to determine if the overall deployment was successful, failed, or was unable to complete within a given duration.
type PanamaxServiceConverter ¶
type PanamaxServiceConverter interface {
// contains filtered or unexported methods
}