func newECSScheduler(db *empire.DB, c *Context) (*ecs.Scheduler, error) { logDriver := c.String(FlagECSLogDriver) logOpts := c.StringSlice(FlagECSLogOpts) logConfiguration := ecsutil.NewLogConfiguration(logDriver, logOpts) config := ecs.Config{ AWS: c, Cluster: c.String(FlagECSCluster), ServiceRole: c.String(FlagECSServiceRole), InternalSecurityGroupID: c.String(FlagELBSGPrivate), ExternalSecurityGroupID: c.String(FlagELBSGPublic), InternalSubnetIDs: c.StringSlice(FlagEC2SubnetsPrivate), ExternalSubnetIDs: c.StringSlice(FlagEC2SubnetsPublic), ZoneID: c.String(FlagRoute53InternalZoneID), LogConfiguration: logConfiguration, } s, err := ecs.NewLoadBalancedScheduler(db.DB.DB(), config) if err != nil { return nil, err } log.Println("Using ECS backend with the following configuration:") log.Println(fmt.Sprintf(" Cluster: %v", config.Cluster)) log.Println(fmt.Sprintf(" ServiceRole: %v", config.ServiceRole)) log.Println(fmt.Sprintf(" InternalSecurityGroupID: %v", config.InternalSecurityGroupID)) log.Println(fmt.Sprintf(" ExternalSecurityGroupID: %v", config.ExternalSecurityGroupID)) log.Println(fmt.Sprintf(" InternalSubnetIDs: %v", config.InternalSubnetIDs)) log.Println(fmt.Sprintf(" ExternalSubnetIDs: %v", config.ExternalSubnetIDs)) log.Println(fmt.Sprintf(" ZoneID: %v", config.ZoneID)) log.Println(fmt.Sprintf(" LogConfiguration: %v", logConfiguration)) return s, nil }
func newECSScheduler(c *cli.Context) (scheduler.Scheduler, error) { logDriver := c.String(FlagECSLogDriver) logOpts := c.StringSlice(FlagECSLogOpts) logConfiguration := ecsutil.NewLogConfiguration(logDriver, logOpts) config := ecs.Config{ AWS: newConfigProvider(c), Cluster: c.String(FlagECSCluster), ServiceRole: c.String(FlagECSServiceRole), InternalSecurityGroupID: c.String(FlagELBSGPrivate), ExternalSecurityGroupID: c.String(FlagELBSGPublic), InternalSubnetIDs: c.StringSlice(FlagEC2SubnetsPrivate), ExternalSubnetIDs: c.StringSlice(FlagEC2SubnetsPublic), ZoneID: c.String(FlagRoute53InternalZoneID), LogConfiguration: logConfiguration, } s, err := ecs.NewLoadBalancedScheduler(config) if err != nil { return nil, err } r, err := newDockerRunner(c) if err != nil { return nil, err } log.Println("Using ECS backend with the following configuration:") log.Println(fmt.Sprintf(" Cluster: %v", config.Cluster)) log.Println(fmt.Sprintf(" ServiceRole: %v", config.ServiceRole)) log.Println(fmt.Sprintf(" InternalSecurityGroupID: %v", config.InternalSecurityGroupID)) log.Println(fmt.Sprintf(" ExternalSecurityGroupID: %v", config.ExternalSecurityGroupID)) log.Println(fmt.Sprintf(" InternalSubnetIDs: %v", config.InternalSubnetIDs)) log.Println(fmt.Sprintf(" ExternalSubnetIDs: %v", config.ExternalSubnetIDs)) log.Println(fmt.Sprintf(" ZoneID: %v", config.ZoneID)) log.Println(fmt.Sprintf(" LogConfiguration: %v", logConfiguration)) return &scheduler.AttachedRunner{ Scheduler: s, Runner: r, }, nil }