tests: add tests to prove that Procfile tasks all work for every builder

Closes #8242
This commit is contained in:
Jose Diaz-Gonzalez
2025-12-25 18:06:22 -05:00
parent 99664b9de5
commit 3d49dbe63f
6 changed files with 67 additions and 5 deletions

View File

@@ -8,6 +8,7 @@ web: python3 -u web.py first.Procfile # testing inline comment
worker: python3 -u worker.py
custom: echo -n
release: python3 -u release.py
task: python3 -u task.py test
# Old version with separate processes (use this if you have issues with the threaded version)

View File

@@ -147,15 +147,22 @@ EOF
echo "status: $status"
assert_success
run deploy_app dockerfile
run deploy_app python dokku@$DOKKU_DOMAIN:$TEST_APP convert_to_dockerfile
echo "output: $output"
echo "status: $status"
assert_success
run /bin/bash -c "dokku ps:inspect $TEST_APP"
run /bin/bash -c "dokku run $TEST_APP python task.py test"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "['task.py', 'test']"
run /bin/bash -c "dokku run $TEST_APP task"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "['task.py', 'test']"
run /bin/bash -c "dokku run $TEST_APP env"
echo "output: $output"

View File

@@ -105,10 +105,17 @@ teardown() {
echo "status: $status"
assert_success
run /bin/bash -c "dokku ps:inspect $TEST_APP"
run /bin/bash -c "dokku run $TEST_APP python task.py test"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "['task.py', 'test']"
run /bin/bash -c "dokku run $TEST_APP task"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "['task.py', 'test']"
run /bin/bash -c "dokku run $TEST_APP env"
echo "output: $output"

View File

@@ -59,11 +59,20 @@ teardown() {
echo "output: $output"
echo "status: $status"
assert_success
assert_output_contains 'load build definition from Dockerfile'
assert_output_contains "SECRET_KEY: fjdkslafjdk"
run /bin/bash -c "dokku ps:inspect $TEST_APP"
run /bin/bash -c "dokku run $TEST_APP python task.py test"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "['task.py', 'test']"
run /bin/bash -c "dokku run $TEST_APP task"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "['task.py', 'test']"
run /bin/bash -c "dokku run $TEST_APP env"
echo "output: $output"

View File

@@ -101,10 +101,11 @@ teardown() {
assert_success
assert_output "['task.py', 'test']"
run /bin/bash -c "dokku ps:inspect $TEST_APP"
run /bin/bash -c "dokku run $TEST_APP task"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "['task.py', 'test']"
run /bin/bash -c "dokku run $TEST_APP env"
echo "output: $output"

View File

@@ -54,6 +54,43 @@ teardown() {
assert_output_contains 'Successfully built image in'
}
@test "(builder-pack) run" {
run /bin/bash -c "dokku config:set $TEST_APP SECRET_KEY=fjdkslafjdk"
echo "output: $output"
echo "status: $status"
assert_success
run /bin/bash -c "dokku builder:set $TEST_APP selected railpack"
echo "output: $output"
echo "status: $status"
assert_success
run deploy_app python dokku@$DOKKU_DOMAIN:$TEST_APP inject_requirements_txt
echo "output: $output"
echo "status: $status"
assert_success
assert_output_contains 'create mise config'
assert_output_contains 'Successfully built image in'
run /bin/bash -c "dokku run $TEST_APP python task.py test"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "['task.py', 'test']"
run /bin/bash -c "dokku run $TEST_APP task"
echo "output: $output"
echo "status: $status"
assert_success
assert_output "['task.py', 'test']"
run /bin/bash -c "dokku run $TEST_APP env"
echo "output: $output"
echo "status: $status"
assert_success
assert_output_contains "SECRET_KEY=fjdkslafjdk"
}
inject_requirements_txt() {
local APP="$1"
local APP_REPO_DIR="$2"