inital commit gorealis resiliency

This commit is contained in:
Kumar Krishna 2017-03-16 23:19:30 -07:00
parent 1b475175db
commit d97e59b9e6
3 changed files with 355 additions and 61 deletions

View file

@ -34,6 +34,7 @@ func main() {
updateId := flag.String("updateId", "", "Update ID to operate on")
username := flag.String("username", "aurora", "Username to use for authorization")
password := flag.String("password", "secret", "Password to use for authorization")
zkUrl := flag.String("zkurl", "", "zookeeper url")
flag.Parse()
// Attempt to load leader from zookeeper
@ -57,20 +58,46 @@ func main() {
}
}
//Create new configuration with default transport layer
config, err := realis.NewDefaultConfig(*url, 10000)
if err != nil {
fmt.Println(err)
os.Exit(1)
}
// Configured for vagrant
realis.AddBasicAuth(&config, *username, *password)
r := realis.NewClient(config)
defer r.Close()
monitor := &realis.Monitor{r}
var job realis.Job
var err error
var config *realis.RealisConfig
var monitor *realis.Monitor
var r realis.Realis
//check if zkUrl is available.
if *zkUrl != "" {
fmt.Println("zkUrl: ", *zkUrl)
cluster := &realis.Cluster{Name: "example",
AuthMechanism: "UNAUTHENTICATED",
ZK: *zkUrl,
SchedZKPath: "/aurora/scheduler",
AgentRunDir: "latest",
AgentRoot: "/var/lib/mesos",
}
fmt.Printf("cluster: %+v \n", cluster)
r, err = realis.NewClientUsingCluster(cluster, *username, *password)
if err != nil {
fmt.Println(err)
os.Exit(1)
}
monitor = &realis.Monitor{r}
} else {
//Create new configuration with default transport layer
config, err = realis.NewDefaultConfig(*url, 10000)
if err != nil {
fmt.Println(err)
os.Exit(1)
}
// Configured for vagrant
realis.AddBasicAuth(config, *username, *password)
r = realis.NewClient(config)
monitor = &realis.Monitor{r}
}
defer r.Close()
switch *executor {
case "thermos":
@ -95,17 +122,21 @@ func main() {
break
case "compose":
job = realis.NewJob().
Environment("prod").
Role("vagrant").
Name("docker-compose").
ExecutorName("docker-compose-executor").
//Environment("prod").
//Role("vagrant").
//Name("docker-compose").
Role("gorealis").
Environment("k2").
Name("testapp").
ExecutorName("sampleapp").
ExecutorName("dce-regular").
ExecutorData("{}").
CPU(0.5).
CPU(0.25).
RAM(64).
Disk(100).
IsService(false).
InstanceCount(3).
AddPorts(1).
IsService(true).
InstanceCount(4).
AddPorts(4).
AddLabel("fileName", "sample-app/docker-compose.yml").
AddURIs(true, true, "https://github.com/mesos/docker-compose-executor/releases/download/0.1.0/sample-app.tar.gz")
break
@ -143,7 +174,10 @@ func main() {
fmt.Println(err)
os.Exit(1)
}
fmt.Println("ok: ", ok)
fmt.Println("err: ", err)
}
}
break
case "createDocker":