tests: add test to prove Dokku respects the Procfile when deploying from an image

Any subsequent ps:rebuild should always respect the image for fetching files. This test proves this works.

Closes #7375
This commit is contained in:
Jose Diaz-Gonzalez
2025-03-09 09:38:25 -04:00
parent c7f35eb8a2
commit 77cfa63196
3 changed files with 13 additions and 2 deletions

View File

@@ -22,7 +22,6 @@ trigger-git-git-from-image() {
rsync -a "$BUILD_DIR/" "$TMP_WORK_DIR"
fi
dokku_log_verbose "Setting Dockerfile"
touch "$TMP_WORK_DIR/Dockerfile"
echo "FROM $DOCKER_IMAGE" >>"$TMP_WORK_DIR/Dockerfile"
echo "LABEL com.dokku.docker-image-labeler/alternate-tags=[\\\"$DOCKER_IMAGE\\\"]" >>"$TMP_WORK_DIR/Dockerfile"

View File

@@ -90,7 +90,7 @@ trigger-scheduler-docker-local-scheduler-deploy() {
trap '' INT HUP
sleep "$DOKKU_WAIT_TO_RETIRE"
for oldid in $oldids; do
if ! docker container inspect "$oldid" &>/dev/null; then
if ! "$DOCKER_BIN" container inspect "$oldid" &>/dev/null; then
continue
fi
# Disable the container restart policy

View File

@@ -94,3 +94,15 @@ EOF
echo "status: $status"
assert_output "3001/udp 3000/tcp 3003"
}
@test "(builder-dockerfile) ps:rebuild fetches files from image" {
run /bin/bash -c "dokku --trace git:from-image $TEST_APP dokku/smoke-test-app:dockerfile"
echo "output: $output"
echo "status: $status"
assert_success
run /bin/bash -c "dokku ps:rebuild $TEST_APP"
echo "output: $output"
echo "status: $status"
assert_success
}