Files
dokku/tests/unit/10_tar.bats
2019-02-02 13:49:24 -05:00

45 lines
1.1 KiB
Bash

#!/usr/bin/env bats
load test_helper
setup() {
global_setup
create_app
}
teardown() {
destroy_app
global_teardown
}
deploy_app_tar() {
APP_TYPE="$1"; APP_TYPE=${APP_TYPE:="nodejs-express"}
TMP=$(mktemp -d "/tmp/dokku.me.XXXXX")
rmdir "$TMP" && cp -r "${BATS_TEST_DIRNAME}/../../tests/apps/$APP_TYPE" "$TMP"
pushd "$TMP" &>/dev/null || exit 1
trap 'popd &>/dev/null || true; rm -rf "$TMP"' RETURN INT TERM
shift 1
tar c . $* | ssh dokku@dokku.me tar:in $TEST_APP || destroy_app $?
sleep 5 # nginx needs some time to itself...
}
@test "(tar) non-tarbomb deploy using tar:in" {
deploy_app_tar nodejs-express --transform 's,^,prefix/,'
run /bin/bash -c "response=\"$(curl -s -S ${TEST_APP}.dokku.me)\"; echo \$response; test \"\$response\" == \"nodejs/express\""
echo "output: $output"
echo "status: $status"
assert_success
}
@test "(tar) tarbomb deploy using tar:in" {
deploy_app_tar nodejs-express
run /bin/bash -c "response=\"$(curl -s -S ${TEST_APP}.dokku.me)\"; echo \$response; test \"\$response\" == \"nodejs/express\""
echo "output: $output"
echo "status: $status"
assert_success
}