14 Commits

Author SHA1 Message Date
Jose Diaz-Gonzalez
9d603e1a45 fix: use real path when extracting files 2026-01-04 20:46:00 -05:00
Jose Diaz-Gonzalez
c19cb81c4b tests: add a test to prove cron:run commands work as expected
Closes #8242
2026-01-04 00:57:43 -05:00
Jose Diaz-Gonzalez
5e2e53d864 tests: run python3 instead of python 2025-12-25 19:07:56 -05:00
Jose Diaz-Gonzalez
4e50dbfb02 tests: run tasks with quiet output so we can check the entire output 2025-12-25 19:05:30 -05:00
Jose Diaz-Gonzalez
153ff6ecb4 tests: fix expected output when task is specified from Procfile
When run from a Procfile, we output an additional message like "-----> Found 'task' in Procfile, running that command".
2025-12-25 18:32:26 -05:00
Jose Diaz-Gonzalez
3d49dbe63f tests: add tests to prove that Procfile tasks all work for every builder
Closes #8242
2025-12-25 18:06:22 -05:00
Jose Diaz-Gonzalez
bba2cd9710 fix: correct lint issues 2025-12-24 16:30:01 -05:00
Jose Diaz-Gonzalez
e7be49f0ce fix: ensure all build flags are consumed as an array 2025-12-24 16:30:01 -05:00
Jose Diaz-Gonzalez
6f095271e1 fix: ensure we can execute run commands when exec is executed as part of an entrypoint
Closes #8052
2025-11-19 20:34:51 -05:00
Jose Diaz-Gonzalez
77cfa63196 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
2025-03-09 09:38:25 -04:00
Jose Diaz-Gonzalez
f8ccf52079 refactor: only use detected port mapping if override is not specified
Previously, we would always set the port mapping during a dockerfile build, making it difficult for users to override mappings. We also only _sometimes_ updated the detected port mapping, further confusing issues when users were migrating from Dockerfile to Buildpacks for builds.

Now, we always detect the port mapping during the build process, and only use that detected port mapping if an override is not specified. This greatly simplifies the experience around port mapping, as now a user can create an app, set a port mapping, and that first deploy will respect the port mapping without an additional deploy.

The builder always has the best context for what the app should be listening on, and thus we can always specify a "default" port mapping at this stage. Users can override this map as desired later.

This change also results in the removal of a ton of internal code that is now centralized in the ports plugin.

Closes #4067
2023-08-05 10:58:57 -04:00
Jose Diaz-Gonzalez
72e8c8d978 tests: correct assertion for dockerfile builds when a variable is eval'd 2023-08-05 10:58:57 -04:00
Jose Diaz-Gonzalez
94f4d1325c feat: export environment variables during dockerfile builds for use with value-less --build-arg flags
Exposing all config values will allow users to skip setting environment variables twice - once as a docker option and once as an env var. Docker will automatically pull the value from the environment if none is set for the --build-arg flag.

Users will still be required to specify each desired env var via --build-arg as otherwise docker builds will complain about unused build arguments.

Re-implements #5978 (lost in a rebase)
Closes #5903
2023-08-05 10:58:57 -04:00
Jose Diaz-Gonzalez
a4b024d6f9 tests: add a test for dockerfile-path 2021-07-10 14:57:58 -04:00