Commit Graph

22 Commits

Author SHA1 Message Date
Jose Diaz-Gonzalez
4593547e35 feat: add log message when kustomize is being applied 2025-08-22 02:01:04 -04:00
Jose Diaz-Gonzalez
4aed599d8c fix: do not run helm in dry-run mode when trace-mode is enabled 2025-07-23 20:47:31 -04:00
Jose Diaz-Gonzalez
553378085f fix: ensure the rendered.yaml file is written into the secure filesystem 2025-07-23 20:35:02 -04:00
Jose Diaz-Gonzalez
8f44a57158 fix: return the initial manifests if there is no kustomize root path 2025-07-23 18:52:43 -04:00
Jose Diaz-Gonzalez
d0ffd7d9f9 feat: stub out kustomize renderer
The process-specific kustomize root path is not currently set, but will be soon.
2025-07-23 18:40:43 -04:00
Jose Diaz-Gonzalez
272327af89 chore: add docs to the ChartInput type 2025-07-23 18:40:43 -04:00
Jose Diaz-Gonzalez
e83ba595aa fix: correct issues with passing a KustomizeRenderer 2025-07-23 18:40:43 -04:00
Jose Diaz-Gonzalez
1b4e02eb62 feat: create a KustomizeRenderer
The KustomizeRenderer is used to invoke Kustomize to the generated renderer.yaml.
2025-07-23 18:34:53 -04:00
Jose Diaz-Gonzalez
e034421ea9 fix: ensure the InstallChart function also attaches the debug renderer 2025-07-23 18:34:53 -04:00
Jose Diaz-Gonzalez
8aa311131e feat: add scheduler-k3s:ensure-charts
This command can be used to ensure charts are properly installed and configured according to Dokku's internal settings.
2024-11-13 01:18:40 -05:00
Jose Diaz-Gonzalez
69f94f64f0 fix: correct issue with locating existing chart 2024-11-13 01:17:27 -05:00
Jose Diaz-Gonzalez
d2b167d6ad Merge pull request #6681 from dokku/k3s-ingress-per-domain
Migrate to single ingress per app/domain combination
2024-03-12 22:22:45 -04:00
Jose Diaz-Gonzalez
c840fc5f9e feat: wait until helm charts are installed before marking a deploy as failed or completed
This ensures applications are actually up vs giving a false sense of security to users about the state of their applications.
2024-03-12 08:39:22 -04:00
Jose Diaz-Gonzalez
d4b484a33a fix: replace existing port-map ingress objects with domain ingress objects
Domains cannot be reused across ingress objects, and port maps are a function of a domain, so the inversion here makes most sense (at the cost of some downtime when migrating.
2024-03-12 03:55:40 -04:00
Jose Diaz-Gonzalez
72067fcfd2 feat: add ability for users to specify alternative kubeconfig and kubecontext
This will provide the possibility for users to talk to existing kubernetes clusters, thereby removing one of the biggest reasons for having the old scheduler-kubernetes plugin around.
2024-02-22 07:42:15 -05:00
Jose Diaz-Gonzalez
25925c0ae2 chore: remove logging from inside helm client 2024-01-23 07:25:18 -05:00
Jose Diaz-Gonzalez
2619c3db08 fix: ensure critical addons come up when the node is tainted
Rather than taint on `node-role.kubernetes.io/master=true:NoSchedule`, we check for `CriticalAddonsOnly=true:NoSchedule` and taint on that.
2024-01-23 03:00:27 -05:00
Jose Diaz-Gonzalez
5c4e1dfc39 fix: do not attempt to uninstall a chart that isn't available 2024-01-23 03:00:27 -05:00
Jose Diaz-Gonzalez
da4771e6e4 fix: uninstall in foreground 2024-01-23 03:00:27 -05:00
Jose Diaz-Gonzalez
297853781f refactor: move all k8s code behind client
Also fix an issue where attaching to pods fails in rare cases
2024-01-23 03:00:27 -05:00
Jose Diaz-Gonzalez
8b8444fb1f feat: implement run and run:detached
This utilizes a Kubernetes Job to start a pod in order to take advantage of completed Job cleanup in Kubernetes. It also properly handles interactivity by ensuring the container has a TTY.

Note that there is currently no provision for parsing docker arguments and translating them into their Kubernetes equivalents.
2024-01-23 03:00:27 -05:00
Jose Diaz-Gonzalez
6fb03eda4e feat: implement most of deployments
The big feature missing from deployments today is healthchecks, which require extra parsing of the app.json format since the healthchecks there aren't immediately serializable to kubernetes deployment healthchecks.

Other smaller missing functionality from the existing OSS kubernetes scheduler are:

- The ability to set custom pod annotations
- The ability to set custom deployment annotations
- The ability to mount volumes

Exposing these pieces of functionality will come at a later date, if at all.
2024-01-23 03:00:27 -05:00