Commit Graph

38 Commits

Author SHA1 Message Date
Jose Diaz-Gonzalez
343032fcf8 chore: update command 2023-11-25 03:43:16 -05:00
Jose Diaz-Gonzalez
463601fb1c fix: update command 2023-11-25 03:42:59 -05:00
Jose Diaz-Gonzalez
20ee524067 chore: remove deprecated stacks 2023-11-25 03:41:36 -05:00
Jose Diaz-Gonzalez
2e22f49898 chore: drop deprecated 2023-11-25 03:41:21 -05:00
Jose Diaz-Gonzalez
ab6efcfcda chore: update buildpack api for test buildpack 2023-11-24 19:42:18 -05:00
Jose Diaz-Gonzalez
619d898051 chore: update buildpack api for test buildpack 2023-11-24 19:41:26 -05:00
Jose Diaz-Gonzalez
f33d7f129b feat: warn when incorrect interface/port in use for web processes
Users that misconfigure their process's listening interface or port will now see an additional healthcheck warning for web deploys. While only a single port is checked, this ensures that users at least have some context as to why their app isn't responding as expected.

Closes #4798
2023-10-15 20:25:09 -04:00
Jose Diaz-Gonzalez
a89b8d6213 chore: convert all CHECKS files to healthchecks 2023-10-15 00:22:24 -04:00
Jose Diaz-Gonzalez
24d94576a9 feat: make heroku-22/jammy the default stack for cnb/herokuish builds 2023-08-09 10:11:33 -04:00
Jose Diaz-Gonzalez
4bc3de5540 feat: write auto-detected port mappings during a deploy
During an app build, we now auto-detect ports based on the source code. This is usually http:80:5000, with Dockerfile-based deploys having their ports extracted from the docker image or Dockerfile. Additionally, we add an https:443 mapping for any detected http:80 mapping when there is an ssl certificate, and all http port mappings are transformed to https mappings for Dockerfile-based deploys.

While the ports aren't currently consumed, a future refactor will provide the ability to fallback to the new detected ports when there is no user-specified port mapping.
2023-08-05 10:58:57 -04:00
Jose Diaz-Gonzalez
515994c8d3 feat: add the ability to execute a cron task on the fly
Closes #4904
2023-08-05 10:58:57 -04:00
Jose Diaz-Gonzalez
eb6f85f083 feat: skip scaled processes that are missing in the Procfile
This allows folks to deploy apps that don't have a web process without needing to scale that process down before/after the first deploy. Note that the formations key in the app.json or a manual scale of other processes will be necessary to start anything non-web.

Closes #5700
2023-08-05 10:58:57 -04:00
Jose Diaz-Gonzalez
0eccfe8ba4 tests: add test ensuring the build-dir property is supported 2023-02-14 03:08:02 -05:00
Jose Diaz-Gonzalez
35c6d61a04 feat: test all compose-based proxy implementations with a dockerfile app
This allows the tests to run on arm systems.
2023-02-11 06:09:50 -05:00
Jose Diaz-Gonzalez
be682e8504 tests: refactor the config test to use a simple python codebase instead
This should also make it possible to run the tests locally on an ARM machine.
2023-01-25 23:01:15 -05:00
Jose Diaz-Gonzalez
9f6aade092 fix: run unbuffered 2022-12-28 16:42:36 -05:00
Jose Diaz-Gonzalez
476a4efa46 fix: use -u in Procfile to unbuffer python output
Without this, logs don't get written out immediately, causing tests to fail.
2022-12-28 15:35:26 -05:00
Jose Diaz-Gonzalez
d9af6516bb tests: validate that procfile-path is respected
Refs #5550
2022-12-28 13:40:33 -05:00
Jose Diaz-Gonzalez
fd2c540cd5 fix: exit non-zero when git:from-image deploys fail to start the app
Also ensure the repository doesn't get updated to an invalid state in those failure cases.

Closes #5538
2022-12-27 02:37:30 -05:00
Jose Diaz-Gonzalez
c3c6e2174a fix: keep track of the source image when building an app via git:from-image
This change fixes issues with ps:rebuild not working as expected - essentially ignoring files in the repo - as well as adds tests.

Closes #5518
2022-12-18 17:57:24 -05:00
Jose Diaz-Gonzalez
dded26625b fix: always respect app.json formations in scale settings
Without this change, it was possible would end up in a state where we might still try to scale processes up that no longer exists.

Closes #5205
2022-06-26 14:33:19 -04:00
Jose Diaz-Gonzalez
07f2ef1411 fix: respect pre-existing .env files when preparing the herokuish buildenv
Closes #4894
2022-01-18 02:21:12 -05:00
Jose Diaz-Gonzalez
4f870512f4 fix: correct lint error 2022-01-15 08:44:02 -05:00
Jose Diaz-Gonzalez
6f55b89149 refactor: simplify env var passing by using a new config:export format
Also add a test for env vars during build time for pack-built applications.
2022-01-15 08:34:02 -05:00
Jose Diaz-Gonzalez
4cf717baf8 fix: set default process list in test buildpacks
Also include the packeto-buildpacks/procfile buildpack to ensure the Procfile is interpolated for a process list.
2021-10-06 03:06:54 -04:00
Jose Diaz-Gonzalez
620a36be82 tests: enhance release tests to check global secrets 2021-08-12 17:36:01 -04:00
Jose Diaz-Gonzalez
19f9648b40 fix: correct shfmt and shellcheck warnings 2021-07-10 15:44:41 -04:00
Jose Diaz-Gonzalez
be6c4dc6df fix: correct shfmt and shellcheck warnings 2021-07-10 15:38:19 -04:00
Jose Diaz-Gonzalez
7292eaefc3 tests: add test for builder-pack:set projectoml-path 2021-07-10 15:32:59 -04:00
Jose Diaz-Gonzalez
135e78c868 tests: add test for procfile-path 2021-07-10 14:57:59 -04:00
Jose Diaz-Gonzalez
d4016223d5 tests: add tests for build-dir 2021-07-10 14:57:58 -04:00
Jose Diaz-Gonzalez
0ab135b034 tests: add test for app-json:set 2021-07-10 14:57:58 -04:00
Jose Diaz-Gonzalez
244651dcba fix: actually use the null buildpack for the sample python app 2021-05-31 16:00:28 -04:00
Jose Diaz-Gonzalez
123fbea7c0 feat: add a deployment task test for cnb 2021-02-11 07:16:54 -05:00
Jose Diaz-Gonzalez
812e34c6f5 feat: properly export env vars for cnb apps
They are not baked into the image like they are for herokuish, so we need to manually set them via --env. Additionally, due to newline constraints in docker, we need to use `--env=key` format to correctly pull the values into place.
2021-02-11 03:52:02 -05:00
Jose Diaz-Gonzalez
4448e60a8b tests: run tests faster by not cloning the buildpack each time
This is now included in herokuish.
2021-02-08 11:17:14 -05:00
Jose Diaz-Gonzalez
f7ef14d737 feat: add initial scheduled task implementation
This functionality enables users to manage a global crontab for the Dokku user that contains all scheduled tasks across all apps. Alternative schedulers can implement cron tasks as desired.
2021-01-20 14:49:48 -05:00
Jose Diaz-Gonzalez
008b362751 feat: switch to null buildpack for performance 2020-06-20 17:02:27 -04:00