@ -39,8 +39,7 @@ func createCluster(c *cli.Context) error {
"--https-listen-port" , c . String ( "port" ) , //args
"--https-listen-port" , c . String ( "port" ) , //args
)
)
log . Printf ( "Creating cluster [%s]" , c . String ( "name" ) )
log . Printf ( "Creating cluster [%s]" , c . String ( "name" ) )
log . Printf ( "Running command: %+v" , exec . Command ( cmd , args ... ) . Args )
if err := run ( true , cmd , args ... ) ; err != nil {
if err := exec . Command ( cmd , args ... ) . Run ( ) ; err != nil {
log . Fatalf ( "FAILURE: couldn't create cluster [%s] -> %+v" , c . String ( "name" ) , err )
log . Fatalf ( "FAILURE: couldn't create cluster [%s] -> %+v" , c . String ( "name" ) , err )
return err
return err
}
}
@ -53,12 +52,10 @@ func deleteCluster(c *cli.Context) error {
cmd := "docker"
cmd := "docker"
args := [ ] string { "rm" , c . String ( "name" ) }
args := [ ] string { "rm" , c . String ( "name" ) }
log . Printf ( "Deleting cluster [%s]" , c . String ( "name" ) )
log . Printf ( "Deleting cluster [%s]" , c . String ( "name" ) )
log . Printf ( "Running command: %+v" , exec . Command ( cmd , args ... ) . Args )
if err := run ( true , cmd , args ... ) ; err != nil {
if err := exec . Command ( cmd , args ... ) . Run ( ) ; err != nil {
log . Printf ( "WARNING: couldn't delete cluster [%s], trying a force remove now." , c . String ( "name" ) )
log . Printf ( "WARNING: couldn't delete cluster [%s], trying a force remove now." , c . String ( "name" ) )
args = append ( args , "-f" )
args = append ( args , "-f" )
log . Printf ( "Running command: %+v" , exec . Command ( cmd , args ... ) . Args )
if err := run ( true , cmd , args ... ) ; err != nil {
if err := exec . Command ( cmd , args ... ) . Run ( ) ; err != nil {
log . Fatalf ( "FAILURE: couldn't delete cluster [%s] -> %+v" , c . String ( "name" ) , err )
log . Fatalf ( "FAILURE: couldn't delete cluster [%s] -> %+v" , c . String ( "name" ) , err )
return err
return err
}
}
@ -73,8 +70,7 @@ func stopCluster(c *cli.Context) error {
cmd := "docker"
cmd := "docker"
args := [ ] string { "stop" , c . String ( "name" ) }
args := [ ] string { "stop" , c . String ( "name" ) }
log . Printf ( "Stopping cluster [%s]" , c . String ( "name" ) )
log . Printf ( "Stopping cluster [%s]" , c . String ( "name" ) )
log . Printf ( "Running command: %+v" , exec . Command ( cmd , args ... ) . Args )
if err := run ( true , cmd , args ... ) ; err != nil {
if err := exec . Command ( cmd , args ... ) . Run ( ) ; err != nil {
log . Fatalf ( "FAILURE: couldn't stop cluster [%s] -> %+v" , c . String ( "name" ) , err )
log . Fatalf ( "FAILURE: couldn't stop cluster [%s] -> %+v" , c . String ( "name" ) , err )
return err
return err
}
}
@ -87,8 +83,7 @@ func startCluster(c *cli.Context) error {
cmd := "docker"
cmd := "docker"
args := [ ] string { "start" , c . String ( "name" ) }
args := [ ] string { "start" , c . String ( "name" ) }
log . Printf ( "Starting cluster [%s]" , c . String ( "name" ) )
log . Printf ( "Starting cluster [%s]" , c . String ( "name" ) )
log . Printf ( "Running command: %+v" , exec . Command ( cmd , args ... ) . Args )
if err := run ( true , cmd , args ... ) ; err != nil {
if err := exec . Command ( cmd , args ... ) . Run ( ) ; err != nil {
log . Fatalf ( "FAILURE: couldn't start cluster [%s] -> %+v" , c . String ( "name" ) , err )
log . Fatalf ( "FAILURE: couldn't start cluster [%s] -> %+v" , c . String ( "name" ) , err )
return err
return err
}
}
@ -109,8 +104,7 @@ func getKubeConfig(c *cli.Context) error {
cmd := "docker"
cmd := "docker"
args := [ ] string { "cp" , sourcePath , destPath }
args := [ ] string { "cp" , sourcePath , destPath }
log . Printf ( "Grabbing kubeconfig for cluster [%s]" , c . String ( "name" ) )
log . Printf ( "Grabbing kubeconfig for cluster [%s]" , c . String ( "name" ) )
log . Printf ( "Running command: %+v" , exec . Command ( cmd , args ... ) . Args )
if err := run ( false , cmd , args ... ) ; err != nil {
if err := exec . Command ( cmd , args ... ) . Run ( ) ; err != nil {
log . Fatalf ( "FAILURE: couldn't get kubeconfig for cluster [%s] -> %+v" , c . String ( "name" ) , err )
log . Fatalf ( "FAILURE: couldn't get kubeconfig for cluster [%s] -> %+v" , c . String ( "name" ) , err )
return err
return err
}
}
@ -146,7 +140,7 @@ func main() {
log . Print ( "Checking docker..." )
log . Print ( "Checking docker..." )
cmd := "docker"
cmd := "docker"
args := [ ] string { "version" }
args := [ ] string { "version" }
if err := exec . Command ( cmd , args ... ) . Run ( ) ; err != nil {
if err := run ( true , cmd , args ... ) ; err != nil {
log . Fatalf ( "Checking docker: FAILED" )
log . Fatalf ( "Checking docker: FAILED" )
return err
return err
}
}
@ -249,3 +243,13 @@ func main() {
log . Fatal ( err )
log . Fatal ( err )
}
}
}
}
func run ( verbose bool , name string , args ... string ) error {
if verbose {
log . Printf ( "Running command: %+v" , append ( [ ] string { name } , args ... ) )
}
cmd := exec . Command ( name , args ... )
cmd . Stdout = os . Stdout
cmd . Stderr = os . Stderr
return cmd . Run ( )
}