Docker has changed their output in an unclear manner, but this is the correct way to check for what dns records are available for usage by apps.
290 lines
9.2 KiB
Bash
Executable File
290 lines
9.2 KiB
Bash
Executable File
#!/usr/bin/env bats
|
|
load test_helper
|
|
|
|
setup() {
|
|
dokku "$PLUGIN_COMMAND_PREFIX:create" ls
|
|
dokku network:create custom-network
|
|
}
|
|
|
|
teardown() {
|
|
dokku --force "$PLUGIN_COMMAND_PREFIX:destroy" ls || true
|
|
dokku --force "$PLUGIN_COMMAND_PREFIX:destroy" lsa || true
|
|
dokku network:destroy --force custom-network
|
|
}
|
|
|
|
@test "($PLUGIN_COMMAND_PREFIX:set) set initial-network" {
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:set" ls initial-network custom-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:info" ls --initial-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_output "custom-network"
|
|
assert_success
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{printf "%s\n" $net}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains bridge
|
|
assert_output_contains custom-network 0
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:stop" ls
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:start" ls
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{printf "%s\n" $net}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains bridge 0
|
|
assert_output_contains custom-network
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{range $k,$alias := $v.DNSNames}}{{printf "alias:%s\n" $alias}}{{end}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains "alias:dokku.$PLUGIN_COMMAND_PREFIX.ls"
|
|
assert_output_contains "alias:dokku-$PLUGIN_COMMAND_PREFIX-ls"
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:set" ls initial-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:info" ls --initial-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_output ""
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:stop" ls
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:start" ls
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{printf "%s\n" $net}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains bridge
|
|
assert_output_contains custom-network 0
|
|
}
|
|
|
|
@test "($PLUGIN_COMMAND_PREFIX:set) set post-create-network" {
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:set" ls post-create-network custom-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:info" ls --post-create-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_output "custom-network"
|
|
assert_success
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{printf "%s\n" $net}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains bridge
|
|
assert_output_contains custom-network 0
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:stop" ls
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:start" ls
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{printf "%s\n" $net}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains custom-network
|
|
assert_output_contains bridge
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{range $k,$alias := $v.DNSNames}}{{printf "alias:%s\n" $alias}}{{end}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains "alias:dokku.$PLUGIN_COMMAND_PREFIX.ls"
|
|
assert_output_contains "alias:dokku-$PLUGIN_COMMAND_PREFIX-ls"
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:set" ls post-create-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:info" ls --post-create-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_output ""
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:stop" ls
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:start" ls
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{printf "%s\n" $net}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains bridge
|
|
assert_output_contains custom-network 0
|
|
}
|
|
|
|
@test "($PLUGIN_COMMAND_PREFIX:set) set an post-start-network" {
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:set" ls post-start-network custom-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:info" ls --post-start-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_output "custom-network"
|
|
assert_success
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{printf "%s\n" $net}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains bridge
|
|
assert_output_contains custom-network 0
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:stop" ls
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:start" ls
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{printf "%s\n" $net}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains bridge
|
|
assert_output_contains custom-network
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{range $k,$alias := $v.DNSNames}}{{printf "alias:%s\n" $alias}}{{end}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains "alias:dokku.$PLUGIN_COMMAND_PREFIX.ls"
|
|
assert_output_contains "alias:dokku-$PLUGIN_COMMAND_PREFIX-ls"
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:set" ls post-start-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:info" ls --post-start-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_output ""
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:stop" ls
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:start" ls
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{printf "%s\n" $net}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains bridge
|
|
assert_output_contains custom-network 0
|
|
}
|
|
|
|
@test "($PLUGIN_COMMAND_PREFIX:create) flags" {
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:create" lsa --initial-network custom-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run docker inspect "dokku.$PLUGIN_COMMAND_PREFIX.lsa" -f '{{range $net,$v := .NetworkSettings.Networks}}{{printf "%s\n" $net}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains bridge 0
|
|
assert_output_contains custom-network
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:destroy" lsa --force
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:create" lsa --post-create-network custom-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run docker inspect "dokku.$PLUGIN_COMMAND_PREFIX.lsa" -f '{{range $net,$v := .NetworkSettings.Networks}}{{printf "%s\n" $net}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains bridge
|
|
assert_output_contains custom-network
|
|
|
|
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.lsa -f '{{range $net,$v := .NetworkSettings.Networks}}{{range $k,$alias := $v.DNSNames}}{{printf "alias:%s\n" $alias}}{{end}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains "alias:dokku.$PLUGIN_COMMAND_PREFIX.lsa"
|
|
assert_output_contains "alias:dokku-$PLUGIN_COMMAND_PREFIX-lsa"
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:destroy" lsa --force
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:create" lsa --post-start-network custom-network
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
|
|
run docker inspect "dokku.$PLUGIN_COMMAND_PREFIX.lsa" -f '{{range $net,$v := .NetworkSettings.Networks}}{{printf "%s\n" $net}}{{end}}'
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
assert_output_contains bridge
|
|
assert_output_contains custom-network
|
|
|
|
run dokku "$PLUGIN_COMMAND_PREFIX:destroy" lsa --force
|
|
echo "output: $output"
|
|
echo "status: $status"
|
|
assert_success
|
|
}
|