Commit Graph

46 Commits

Author SHA1 Message Date
Jose Diaz-Gonzalez
0c96c4b6de feat: allow exposing non-web processes as kubernetes services
Closes #7204
2025-11-22 19:39:56 -05:00
Jose Diaz-Gonzalez
54c1ccd9bb refactor: use tailscale/hujson to support trailing commas after the last member in arrays and lists 2025-11-20 01:00:40 -05:00
Jose Diaz-Gonzalez
38505006e8 fix: correctly sanitize comments out of the jsonc content 2025-11-20 00:35:17 -05:00
Jose Diaz-Gonzalez
1c0ce250dc feat: support inline comments for app.json
Closes #8007
2025-11-20 00:35:17 -05:00
Jose Diaz-Gonzalez
d72c183d9e feat: add ability to specify a concurrency policy for crons in the app.json file 2025-11-10 03:03:49 -05:00
Jose Diaz-Gonzalez
426e6b746a chore: standardize on cron task vs any other naming 2025-11-09 23:16:38 -05:00
Jose Diaz-Gonzalez
e42df29a79 feat: allow specifying maintenance mode in the file or not
If the app's cron tasks are set to maintenance mode, then the task is set to maintenance mode regardless.
2025-11-09 23:16:38 -05:00
Jose Diaz-Gonzalez
82cab643a8 chore: standardize on cron task vs any other naming 2025-11-07 22:36:00 -05:00
Jose Diaz-Gonzalez
4ae9cca6f1 feat: implement app-json-is-valid plugin trigger 2025-06-19 02:20:02 -04:00
Jose Diaz-Gonzalez
38ca3eac1c chore: drop extra logging call from app-json plugin 2024-03-06 17:44:22 -05:00
Jose Diaz-Gonzalez
46f11cb239 feat: implement replacements 2024-03-06 03:39:11 -05:00
Jose Diaz-Gonzalez
b7ff696507 feat: add initial support for injecting keda addons 2024-03-06 03:39:11 -05:00
Jose Diaz-Gonzalez
7a94b10266 feat: add docblocks to appjson structs 2024-01-18 22:08:40 -05:00
Jose Diaz-Gonzalez
4294694be3 feat: add support for exposing healthchecks in the AppJson struct 2024-01-18 19:05:14 -05:00
Jose Diaz-Gonzalez
f6a3db9c6d docs: fix docblock entries for properties in plugins 2023-12-19 00:34:33 -05:00
Jose Diaz-Gonzalez
a8283824a5 fix: remove extra import 2023-02-14 03:08:02 -05:00
Jose Diaz-Gonzalez
09eb0b2c8f refactor: move app.json extraction up to core-post-extract 2023-02-14 03:08:02 -05:00
Jose Diaz-Gonzalez
6cbe93c245 refactor: move all golang code for managing data directories to common plugin
Additionally, ensure the golang plugins handle setup/teardown of plugin and app-specific data directories during install, rename, and clone phases.
2023-01-08 23:36:12 -05:00
Jose Diaz-Gonzalez
55554ce9bd feat: add ability to increase the max parallelism when deploying a given process type 2021-10-09 22:44:03 -04:00
Jose Diaz-Gonzalez
c6d99722eb fix: correct stickler errors 2021-07-31 20:54:14 -04:00
Jose Diaz-Gonzalez
6d9520e599 feat: add support for formation key in app.json file
Still needs triggers for ps-can-scale and ps-scale-set.

Refs #4500
2021-07-31 20:54:14 -04:00
Jose Diaz-Gonzalez
a6113f88e7 featfeat: add ability to specify a custom app.json path 2021-07-10 14:57:56 -04:00
Jose Diaz-Gonzalez
f98e7702fb feat: implement heroku's postdeploy deployment task
This occurs during the postdeploy on the first deploy of an app, mimicking heroku. It currently happens _after_ the `postdeploy` and `release` deploy tasks.
2021-02-28 04:51:42 -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
2eb159b0c3 refactor: use error group for fetching the app shell to use for app-json tasks 2021-01-02 18:45:30 -05:00
Jose Diaz-Gonzalez
9a86549359 chore: fix mispelling
[ci skip]
2020-12-11 14:19:44 -05:00
Jose Diaz-Gonzalez
26b95854d4 fix: properly parse releease command when there is an entrypoint
Closes #4232
2020-12-11 11:44:13 -05:00
Jose Diaz-Gonzalez
bde77dbf78 feat: cleanup log output for failure case
Also mark DOKKU_DISABLE_ANSI_PREFIX_REMOVAL as deprecated (it will be removed in 0.23.0 and no prefixes will be removed at that time).
2020-11-28 03:32:11 -05:00
Jose Diaz-Gonzalez
c343316864 Merge pull request #4198 from dokku/4083-fewer-extracts
Reference extracted Procfile
2020-11-23 01:36:53 -05:00
Jose Diaz-Gonzalez
97513dee91 fix: handle case where deploying app image does not exist
This happens if ps:scale is called before a deploy.

Also refactor GetDeployingAppImageName() to return an error as the second return parameter.
2020-11-23 00:11:00 -05:00
Jose Diaz-Gonzalez
ef490f0a05 feat: retire intermediate containers after use
Rather than waiting for the next deploy, take advantage of the retire system to retire these containers immediately.

Note that since the retire process happens out of band, the containers may stick around for up to 5 minutes, after which point they will be removed.

Customization of the wait time to retire - currently 60 seconds - is up for future debate. The containers ultimately haven't been useful for debugging, so keeping them around for longer won't help in most cases, and folks can disable the dokku-retire service (or cron) if that is desired.
2020-11-22 16:57:39 -05:00
Jose Diaz-Gonzalez
f9969a0e61 refactor: drop extra args from procfile-extract
They were not necessary.
2020-11-21 20:57:33 -05:00
Jose Diaz-Gonzalez
2a1d3877f1 fix: add docblock 2020-08-31 21:03:16 -04:00
Jose Diaz-Gonzalez
b8b6d64f75 fix: correct stickler-ci errors and remove unused code 2020-08-31 18:44:00 -04:00
Jose Diaz-Gonzalez
2b65def123 fix: pass command directly to entrypoint
Closes #3706
2020-08-31 18:36:07 -04:00
Jose Diaz-Gonzalez
84367e1c16 fix: correctly handle injecting environment variables to deployment tasks
Also test that release tasks are invoked the correct environment.

Closes #3817
2020-08-31 15:01:14 -04:00
Jose Diaz-Gonzalez
428beb3413 fix: pass in correct image variable 2020-08-31 04:23:10 -04:00
Jose Diaz-Gonzalez
4ab9632526 fix: handle case where there is no app.json
Somehow, an empty file may get copied over...
2020-08-31 02:56:50 -04:00
Jose Diaz-Gonzalez
53dabf7fd0 refactor: fix handling of string andd array CMD and ENTRYPOINT values
Previous versions extracted the values as strings, prefixing the values with `/bin/sh -c '$CMD'` unnecessarily. This caused issues where we would incorrectly overrride these values when an app had a predeploy script.

Closes #3143
2020-08-31 02:31:36 -04:00
Jose Diaz-Gonzalez
7ca4cba8ec chore: drop extra quotes 2020-08-31 02:06:24 -04:00
Jose Diaz-Gonzalez
23db07ed4e chore: remove extra LogDebug call 2020-08-31 02:05:03 -04:00
Jose Diaz-Gonzalez
53e75e7898 chore: rewrite log message
This change makes it more clear as to what is being executed.
2020-08-31 02:04:51 -04:00
Jose Diaz-Gonzalez
31ab2f97f6 fix: split arguments to ensure they get parsed properly 2020-08-30 16:05:10 -04:00
Jose Diaz-Gonzalez
8126c63d6e fix: properly handle return from PluginTriggerOutput 2020-08-30 14:51:25 -04:00
Jose Diaz-Gonzalez
f27096f235 refactor: implement appjson in golang 2020-08-30 13:41:15 -04:00
Jose Diaz-Gonzalez
98bc513336 feat: implement getPhaseScript and scaffold out plugin triggers 2020-08-30 13:41:14 -04:00