diff --git a/drivers/vmwarefusion/fusion_darwin.go b/drivers/vmwarefusion/fusion_darwin.go index 53f421bc53..82bff84d36 100644 --- a/drivers/vmwarefusion/fusion_darwin.go +++ b/drivers/vmwarefusion/fusion_darwin.go @@ -49,6 +49,7 @@ type Driver struct { SwarmMaster bool SwarmHost string SwarmDiscovery string + CPUS int storePath string } @@ -106,6 +107,7 @@ func (d *Driver) SetConfigFromFlags(flags drivers.DriverOptions) error { d.SwarmMaster = flags.Bool("swarm-master") d.SwarmHost = flags.String("swarm-host") d.SwarmDiscovery = flags.String("swarm-discovery") + d.CPUS = runtime.NumCPU() // We support a maximum of 16 cpu to be consistent with Virtual Hardware 10 // specs. diff --git a/test/driver-hyperv.bats b/test/driver-hyperv.bats new file mode 100644 index 0000000000..8f5536f6a2 --- /dev/null +++ b/test/driver-hyperv.bats @@ -0,0 +1,111 @@ +#!/usr/bin/env bats + +load vars + +export DRIVER=hyperv +export NAME="bats-$DRIVER-test" +export MACHINE_STORAGE_PATH=/tmp/machine-bats-test-$DRIVER + +@test "$DRIVER: machine should not exist" { + run machine active $NAME + [ "$status" -eq 1 ] +} + +@test "$DRIVER: create" { + run machine create -d $DRIVER $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: active" { + run machine active $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: ls" { + run machine ls + [ "$status" -eq 0 ] + [[ ${lines[1]} == *"$NAME"* ]] +} + +@test "$DRIVER: run busybox container" { + run docker $(machine config $NAME) run busybox echo hello world + [ "$status" -eq 0 ] +} + +@test "$DRIVER: url" { + run machine url $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: ip" { + run machine ip $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: ssh" { + run machine ssh $NAME -- ls -lah / + [ "$status" -eq 0 ] + [[ ${lines[0]} =~ "total" ]] +} + +@test "$DRIVER: stop" { + run machine stop $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: machine should show stopped after stop" { + run machine ls + [ "$status" -eq 0 ] + [[ ${lines[1]} == *"Stopped"* ]] +} + +@test "$DRIVER: start" { + run machine start $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: machine should show running after start" { + run machine ls + [ "$status" -eq 0 ] + [[ ${lines[1]} == *"Running"* ]] +} + +@test "$DRIVER: kill" { + run machine kill $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: machine should show stopped after kill" { + run machine ls + [ "$status" -eq 0 ] + [[ ${lines[1]} == *"$NAME"* ]] + [[ ${lines[1]} == *"Stopped"* ]] +} + +@test "$DRIVER: restart" { + run machine restart $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: machine should show running after restart" { + run machine ls + [ "$status" -eq 0 ] + [[ ${lines[1]} == *"$NAME"* ]] + [[ ${lines[1]} == *"Running"* ]] +} + +@test "$DRIVER: remove" { + run machine rm -f $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: machine should not exist" { + run machine active $NAME + [ "$status" -eq 1 ] +} + +@test "$DRIVER: cleanup" { + run rm -rf $MACHINE_STORAGE_PATH + [ "$status" -eq 0 ] +} + diff --git a/test/driver-softlayer.bats b/test/driver-softlayer.bats new file mode 100644 index 0000000000..51fb3f3a05 --- /dev/null +++ b/test/driver-softlayer.bats @@ -0,0 +1,111 @@ +#!/usr/bin/env bats + +load vars + +export DRIVER=softlayer +export NAME="bats-$DRIVER-test" +export MACHINE_STORAGE_PATH=/tmp/machine-bats-test-$DRIVER + +@test "$DRIVER: machine should not exist" { + run machine active $NAME + [ "$status" -eq 1 ] +} + +@test "$DRIVER: create" { + run machine create -d $DRIVER $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: active" { + run machine active $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: ls" { + run machine ls + [ "$status" -eq 0 ] + [[ ${lines[1]} == *"$NAME"* ]] +} + +@test "$DRIVER: run busybox container" { + run docker $(machine config $NAME) run busybox echo hello world + [ "$status" -eq 0 ] +} + +@test "$DRIVER: url" { + run machine url $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: ip" { + run machine ip $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: ssh" { + run machine ssh $NAME -- ls -lah / + [ "$status" -eq 0 ] + [[ ${lines[0]} =~ "total" ]] +} + +@test "$DRIVER: stop" { + run machine stop $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: machine should show stopped after stop" { + run machine ls + [ "$status" -eq 0 ] + [[ ${lines[1]} == *"Stopped"* ]] +} + +@test "$DRIVER: start" { + run machine start $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: machine should show running after start" { + run machine ls + [ "$status" -eq 0 ] + [[ ${lines[1]} == *"Running"* ]] +} + +@test "$DRIVER: kill" { + run machine kill $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: machine should show stopped after kill" { + run machine ls + [ "$status" -eq 0 ] + [[ ${lines[1]} == *"$NAME"* ]] + [[ ${lines[1]} == *"Stopped"* ]] +} + +@test "$DRIVER: restart" { + run machine restart $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: machine should show running after restart" { + run machine ls + [ "$status" -eq 0 ] + [[ ${lines[1]} == *"$NAME"* ]] + [[ ${lines[1]} == *"Running"* ]] +} + +@test "$DRIVER: remove" { + run machine rm -f $NAME + [ "$status" -eq 0 ] +} + +@test "$DRIVER: machine should not exist" { + run machine active $NAME + [ "$status" -eq 1 ] +} + +@test "$DRIVER: cleanup" { + run rm -rf $MACHINE_STORAGE_PATH + [ "$status" -eq 0 ] +} +