Compare commits

..

189 Commits

Author SHA1 Message Date
James W.
921af38848 Merge pull request #144 from open-webui/update-docs
Update docs and trigger release
2025-01-16 14:39:03 -07:00
0xThresh.eth
73268086eb Update docs and trigger release 2025-01-16 14:38:49 -07:00
James W.
2e13b26b94 Merge pull request #143 from open-webui/fix-chart-lock
Add Bitnami chart repo to GH Actions steps
2025-01-16 14:35:10 -07:00
0xThresh.eth
32797850cd Add Bitnami chart repo to GH Actions steps 2025-01-16 14:34:56 -07:00
James W.
30750a96ae Merge pull request #142 from open-webui/fix-chart-lock
Add Bitnami source for Redis
2025-01-16 14:33:17 -07:00
0xThresh.eth
f187ecd6fc Add Bitnami source for Redis 2025-01-16 14:28:50 -07:00
James W.
46068602fc Merge pull request #141 from open-webui/fix-chart-lock
Fix chart lock
2025-01-16 14:27:15 -07:00
0xThresh.eth
e49bd4d041 Fix chart lock 2025-01-16 14:24:41 -07:00
James W.
b3c486f5e6 Merge pull request #137 from jyje/feat/websocket-with-redis
Add redis for websocket
2025-01-16 10:05:08 -08:00
jyje
4421135184 chore(ci): bump a target chart version of open-webui to 5.4.0 2025-01-15 02:48:34 +09:00
jyje
9c9aae9660 Merge branch 'main' into feat/websocket-with-redis 2025-01-15 02:44:56 +09:00
James W.
15b9ccbf84 Merge pull request #138 from jyje/feat/add-extra-resources 2025-01-14 09:36:33 -08:00
jyje
961d895fe4 Merge branch 'main' into feat/add-extra-resources 2025-01-15 02:35:19 +09:00
jyje
972a24510c Merge branch 'main' into feat/websocket-with-redis 2025-01-15 02:34:05 +09:00
jyje
60864a365b chore(redis): bump a target chart version to 5.3.0 2025-01-15 02:30:31 +09:00
jyje
64160c1750 chore(websocket): bump a target chart version to 5.3.0 2025-01-15 02:29:16 +09:00
James W.
1c9327eb4f Merge pull request #139 from jyje/feat/owui-notes
Add helm notes (Helper Message)
2025-01-14 08:32:15 -08:00
jyje
464f194014 feat(notes): fix ingress and helm uninstall option 2025-01-15 01:18:11 +09:00
jyje
1b47d08288 feat(notes): add pilot
- case-by-case helm notes per service type, per persistence
- note sections
    1. Deployment Information
    2. Access the Application
    3. Useful Commands
    4. Cleanup
2025-01-15 00:14:34 +09:00
James W.
ba068ee8c0 Merge pull request #136 from jyje/fix/skip-forked-release
Fix 'helm-release' CI to disabling chart release for forked repos
2025-01-12 06:23:56 -08:00
jyje
b894afc239 chore(websocket): fix full redis url 2025-01-12 02:49:06 +09:00
jyje
1e17c5651d chore(websocket): fix chart dependency 2025-01-12 02:20:14 +09:00
jyje
0ccce3cf5f feat(websocket): add redis-cluster from bitnami chart
- add values and corresponding readme
- add subchart **redis-20.6.2**
2025-01-12 01:34:50 +09:00
jyje
3b1bfc20d3 chore(websocket): fix enabled flag 2025-01-11 23:17:40 +09:00
jyje
51aab38029 chore(websocket): revert test lines for release workflows and refactor readme and values 2025-01-11 16:47:12 +09:00
jyje
535985967d feat(websocket): fix labels and annotations 2025-01-07 23:57:42 +09:00
jyje
f06ddd9f2f feat(websocket): change redis name and set container resources 2025-01-07 23:33:49 +09:00
jyje
9b13a7e2af feat(websocket): fix labels and port and remove security contexts 2025-01-07 22:27:29 +09:00
jyje
added76a4c feat(websocket): fix type of '_helpers.tpl' 2025-01-07 21:07:49 +09:00
jyje
1c072ce5bf feat(websocket): add envs and pilot of redis 2025-01-07 21:00:05 +09:00
jyje
72a324248a ci(test): enable chart release for test 2025-01-07 19:58:23 +09:00
jyje
069909c5f3 feat: add extra-resources for all owui and owui pipelines
- list of ConfigMaps, SealedSecrets, other CRDs
- no Secrets for secure GitOps
2025-01-07 17:00:20 +09:00
jyje
8ceb4ed675 Merge branch 'fix/skip-forked-release' 2025-01-07 12:30:06 +09:00
jyje
5ae7d88c6d fix(ci): skip release actions for forked repositories
- Add a repository slug check to clarify release origin
- Prevent action failures on forked repositories
2025-01-07 12:29:40 +09:00
James W.
1c186f785c Merge pull request #134 from jyje/fix/helm-test-pipelines
Fix 'Pipelines' CI to verify chart installing on test-namespace
2025-01-06 17:02:31 -07:00
jyje
8d6a4745ca fix(ci): revert changes for test 2025-01-06 16:20:52 +09:00
jyje
2a1dfd7c79 fix(ci): add dummy change on the readme file 2025-01-06 16:17:18 +09:00
jyje
911da24970 fix(ci): verify 'pipeline' chart installing on test-namespace
- with `workflow_dispatch:` (need to be removed)
2025-01-06 16:10:33 +09:00
James W.
aa8f48d65c Merge pull request #132 from open-webui/0.5.4
Upgrade to v0.5.4
2025-01-05 12:27:54 -07:00
0xThresh.eth
299203bc14 Upgrade to v0.5.4 2025-01-05 12:24:10 -07:00
James W.
669a7f4006 Merge pull request #130 from jyje/feat/open-webui-add-probes
Add 3 probes to the main container of workload-manager
2025-01-03 10:11:10 -07:00
jyje
902852e161 Merge branch 'main' into feat/open-webui-add-probes
# Conflicts (resolved):
#	charts/open-webui/Chart.yaml
2025-01-04 01:50:45 +09:00
James W.
35100e8c9b Merge pull request #131 from open-webui/0.5
Updating to 0.5.3
2025-01-02 15:19:16 -07:00
0xThresh.eth
80eecb60b7 Updating to 0.5.3 2025-01-02 15:13:53 -07:00
jyje
78358cdd0c feat: add values with commented example values 2024-12-29 04:19:27 +09:00
jyje
2229cfaef1 feat: add 3 container probes for workload-manager
- add livenessProbe, readinessProbe, startupProbe for main container
- add key rows in table of readme
- bump the chart version from 5.0.0 to 5.1.0
2024-12-29 04:11:48 +09:00
James W.
44c982df2f Merge pull request #129 from open-webui/0.5
Update to latest version
2024-12-27 09:11:35 -07:00
0xThresh.eth
5af2615a30 Update to latest version 2024-12-27 09:07:39 -07:00
James W.
0e6bc2b733 Merge pull request #125 from jyje/feat/open-webui
Fix CI to verify chart installing on test-namespace
2024-12-16 08:50:43 -08:00
jyje
38d7ecfe21 Fix CI to verify chart installing on test-namespace
Remove ambiguity for `default` and `test-namespace`. It comes from `namespaceOverride` after #122. This commit helps to complete `namespaceOverride`.

- create `test-namespace` namespace
- install app on `test-namespace` namespace instead of `default`
- (Optional) wait until `pod/open-webui-0` is ready
2024-12-13 16:41:50 +09:00
James W.
d826181995 Merge pull request #123 from jyje/feat/open-webui
Add updateStrategy for workload manager
2024-12-12 20:02:57 -08:00
James W.
fe387238e1 Merge branch 'main' into feat/open-webui 2024-12-12 20:01:37 -08:00
James W.
dc60612c27 Merge pull request #122 from CiraciNicolo/fix(openwebui-namespace)
Add namespace explicitly for OpenWebUI Chart
2024-12-12 20:00:29 -08:00
James W.
3764c99690 Merge pull request #120 from mbrouer/main
feat: Support for podLabels
2024-12-12 19:55:15 -08:00
James W.
3adaffd03d Merge pull request #121 from CiraciNicolo/fix(pipelines-namespace)
Add namespace explicitly to pipelines
2024-12-12 19:53:17 -08:00
jyje
7c6aa4fc19 Add updateStrategy for workload manager
To add update strategy, choose 'strategy' for 'Deployment/spec.strategy' and 'StatefulSet/spec.updateStrategy'. Update samver from 4.0.6 to 4.1.0 with minor spec changes
2024-12-06 04:57:41 +09:00
Nicolò Ciraci
fe7d2bb946 fix(namespace): add namespace explicitly
Signed-off-by: Nicolò Ciraci <ciraci.nicolo@gmail.com>
2024-12-05 15:49:51 +01:00
Nicolò Ciraci
aa0c381f01 fix(namespace): add namespace explicitly
Signed-off-by: Nicolò Ciraci <ciraci.nicolo@gmail.com>
2024-12-05 15:47:51 +01:00
Mads Brouer
de66118c42 feat: Support for podLabels 2024-12-05 11:57:31 +01:00
James W.
2ef9234739 Merge pull request #119 from open-webui/0.4.7
Update OWUI version, upgrade Ollama and Pipelines charts
2024-12-01 18:26:36 -07:00
0xThresh.eth
fc3a19b8d9 Update OWUI version, upgrade Ollama and Pipelines charts 2024-12-01 18:25:04 -07:00
James W.
f70f12a720 Merge pull request #114 from 0xmeyer/fix-copy-app-data-value
fix resources for copy-app-data init container
2024-12-01 18:22:07 -07:00
James W.
905073b392 Bump Pipelines chart version to release latest fixes 2024-12-01 17:20:04 -08:00
James W.
e2bb6c5ac4 Merge pull request #117 from alexnederlof/patch-2
Fix Pipelines persistance
2024-12-01 18:19:28 -07:00
James W.
3ac14d7ed7 Merge pull request #118 from alexnederlof/allow-pipieline-sa
Enable service accounts for pipelines chart
2024-12-01 18:19:07 -07:00
Alex Nederlof
f539153797 Enable service accounts for pipelines chart
Follow up from https://github.com/open-webui/helm-charts/pull/110
2024-11-29 07:43:42 +01:00
Alex Nederlof
5a9e030548 Fix Pipelines persistance
I might not fully understand, but currently the pipelines are not persisted between restarts because they are stored in `/app/piplines` which is not the current persistent volume. That one is `/app/backend/data`.

`/app/backend/data` is mentioned in [the Openweb-ui readme](0a26c41c7b/README.md (L90)) but I see no mention of it in the pipelines repo.
2024-11-28 20:45:52 +01:00
James W.
357d167f76 trigger release for recent fixes 2024-11-27 16:32:10 -07:00
James W.
3269b62733 Merge pull request #113 from zadjadr/fix/ci
Fix broken ServiceAccount & introduce automated testing via CI
2024-11-27 16:16:48 -07:00
Oliver Meyer
373b4c8042 fix resources for copy-app-data init container
Upgrading charts fail w/ 'Error: UPGRADE FAILED: template: open-webui/templates/workload-manager.yaml:47:24: executing open-webui/templates/workload-manager.yaml at <.Values.copyAppData.resources>: nil pointer evaluating interface {}.resources'
2024-11-26 07:45:46 +01:00
Zadjad Rezai
154753931e ci: Add checks for helm charts 2024-11-25 09:40:51 +00:00
Zadjad Rezai
b9cc6a30cc fix: serviceaccount token automount 2024-11-25 09:07:42 +00:00
0xThresh.eth
db99d5cafe feat: Release Open WebUI v4.0.4 2024-11-24 13:15:26 -07:00
0xThresh.eth
400512fc0e feat: Release Open WebUI v4.0.3 2024-11-24 13:14:08 -07:00
James W.
cf12b1d078 Merge pull request #110 from alexnederlof/allow-service-accounts
Allow service accounts
2024-11-24 13:11:01 -07:00
0xThresh.eth
746fe34aa1 Merge in main, change create to enable for consistency 2024-11-24 13:09:07 -07:00
0xThresh.eth
d0cf4abd11 Merge branch 'main' into alexnederlof-allow-service-accounts 2024-11-24 13:03:11 -07:00
James W.
2b83759321 Merge pull request #109 from maxupp/patch-1
fix: make copy-app-data resource quotas configurable
2024-11-24 12:58:48 -07:00
James W.
67adcc38e6 Merge branch 'main' into patch-1 2024-11-24 12:58:33 -07:00
James W.
831cc94d8d Merge pull request #112 from open-webui/v0.4.2
feat: Release OWUI v0.4.2
2024-11-24 12:55:25 -07:00
0xThresh.eth
83c5a02a28 Remove semantic release job for now 2024-11-24 12:54:21 -07:00
0xThresh.eth
145a5f5933 feat!: Release Open WebUI v0.4.2 2024-11-24 12:53:38 -07:00
0xThresh.eth
1931f3ea06 feat!: Release Open WebUI v0.4.1 2024-11-24 12:52:01 -07:00
James W.
45d5c2a26e Merge pull request #111 from open-webui/v4.0.0
feat!: Release v0.4.0 and upgrade Ollama
2024-11-24 12:48:56 -07:00
0xThresh.eth
b1e7ce6cea Upgrade Ollama 2024-11-24 12:42:58 -07:00
0xThresh.eth
f71d21d5e4 feat!: Release v4.0.0 the right way 2024-11-24 12:30:28 -07:00
0xThresh
30707d473d chore(release) bump version to 3.8.0 2024-11-24 19:27:56 +00:00
James W.
01fd07172c Merge pull request #106 from zadjadr/zadjadr/ingress
feat: allow additionalHosts for ingress
2024-11-24 12:27:23 -07:00
Alex Nederlof
afcd804aaf Allow service account to be set 2024-11-24 16:37:46 +01:00
maxupp
afe30f15cb Update Chart.yaml version 2024-11-21 17:01:51 +01:00
maxupp
abc23d2ad4 fix: make copy-app-data resource quotas configurable 2024-11-21 16:51:29 +01:00
Zadjad Rezai
5cf03b48a0 feat: allow additionalHosts for ingress 2024-11-20 08:01:31 +00:00
James W.
48ab03c9d6 Release v0.4.0 2024-11-19 17:05:55 -07:00
0xThresh
1cdb232649 chore(release) bump version to 3.7.0 2024-11-10 21:22:59 +00:00
James W.
242bfa2827 Merge pull request #105 from open-webui/update-ollama-chart
feat: Update Ollama chart version
2024-11-10 14:22:23 -07:00
0xThresh.eth
7514e5a5d7 feat: Update Ollama chart version 2024-11-10 14:21:55 -07:00
0xThresh
cba16a4f3f chore(release) bump version to 1.0.0 2024-11-09 05:31:12 +00:00
James W.
bc32f167f2 Enable Automatic Updates of Chart Versions (#104) 2024-11-08 21:30:36 -08:00
James W.
c70affc35c Merge pull request #101 from okamototk/tika-support
feat: add Apache Tika dependency
2024-11-07 15:14:05 -07:00
0xThresh.eth
6a61802dab Bundle in Tika chart, update docs, update Ollama chart to latest 2024-11-07 15:13:14 -07:00
0xThresh.eth
54961fc38b Updated Chart version and docs 2024-11-07 14:11:43 -07:00
Takashi Okamoto
7fb97e6a35 feat: add Apache Tika dependency 2024-11-07 09:11:56 +00:00
James W.
008268d3fd Merge pull request #102 from windsource/main
Update ollama chart to 0.63.1
2024-11-05 14:47:43 -07:00
windsource
4637db000e Update ollama chart to 0.63.1 2024-11-04 18:06:50 +01:00
James W.
b0debd2d81 Merge pull request #100 from windsource/main
Support subPath for persistent volumes
2024-11-03 11:10:02 -07:00
windsource
5ebf1e3593 Support subPath for persistent volumes 2024-11-02 16:37:07 +01:00
James W.
125f67ec5c Merge pull request #97 from bergutman/main
Update to v0.3.35
2024-10-26 20:54:27 -07:00
Ber Gutman
d919ea1b42 Update to v0.3.35 2024-10-26 19:06:52 -07:00
Ber Gutman
c30ab597bb Update to v0.3.34 2024-10-26 08:19:51 -07:00
Ber Gutman
941176514c Update to v0.3.33 2024-10-24 19:49:53 -07:00
James W.
7c753cf117 Merge pull request #96 from hongbo-miao/patch-1 2024-10-22 09:00:23 -07:00
Hongbo Miao
7605066b8e docs: add how to set custom api key 2024-10-22 03:19:08 -07:00
James W.
dfe63ed352 Merge pull request #94 from ssc-dsai/feat-extra-volumes 2024-10-21 07:41:31 -07:00
Justin Bertrand
22d99dd349 chore: update version, docs, and dependencies. 2024-10-21 05:47:46 -04:00
Justin Bertrand
b07888478a fix: indentation. 2024-10-16 12:41:51 -04:00
Justin Bertrand
f93c4949c9 feat(volumes): add the ability to specify volumes and mounts. 2024-10-16 10:21:10 -04:00
James W.
645edec699 Merge pull request #93 from bergutman/main 2024-10-08 06:11:10 -07:00
Ber Gutman
5cc0d44aba Update to v0.3.32 2024-10-07 14:53:29 +02:00
James W.
8672c78ac5 Merge pull request #92 from bergutman/main
Update to v0.3.30
2024-10-05 11:07:07 -07:00
Ber Gutman
5e3237a972 Update to v0.3.30 2024-10-05 13:36:06 +02:00
James W.
4f1fa4718e Merge pull request #88 from saip92/saip92/move-env-vars-to-stateful-set
Move extraEnvVars to Workload from ConfigMap
2024-10-01 19:38:22 -07:00
Pramod Valavala
119fdd2f2d Update chart version 2024-10-01 22:26:55 -04:00
Pramod Valavala
a16cdd4477 Move extraEnvVars to Workload from ConfigMap 2024-09-27 21:13:33 -04:00
James W.
4ee3936555 Merge pull request #85 from open-webui/feat-env-configmap
feat: Move env vars from deployment to a configmap for easier management
2024-09-26 22:51:18 -06:00
0xThresh.eth
09184d93d9 feat: Move env vars from deployment to a configmap for easier management 2024-09-26 22:49:51 -06:00
James W.
bb0f668201 Merge pull request #84 from davizucon/main
FIX: ollama url and env vars when ollama.enabled=False
2024-09-26 20:17:26 -06:00
Davi S. Zucon
6ebb3da9d2 Bump appVersion to 0.3.24
Bump appVersion to 0.3.24
2024-09-26 23:14:21 -03:00
Davi Sclifo Zucon
6c7b42517d fix: Set ollama url and env vars if ollama.enabled=False, bump version to 3.1.19 2024-09-25 12:09:24 -03:00
Davi Sclifo Zucon
2062a5d4e6 fix: Set ollama url and env vars if ollama.enabled=False 2024-09-25 11:54:36 -03:00
James W.
63055b910d Merge pull request #81 from bergutman/main
Update to v0.3.23
2024-09-22 12:39:53 -06:00
James W.
a3c255d9c3 Merge branch 'main' into main 2024-09-22 12:39:38 -06:00
James W.
3a339ccb8d Merge pull request #82 from open-webui/v0.3.22
Update to v0.3.22 and Ollama to latest
2024-09-22 12:17:44 -06:00
0xThresh.eth
056de60090 Update to v0.3.22 and Ollama to latest 2024-09-22 12:17:04 -06:00
Ber Gutman
07fa518798 Upgrade to v0.3.23 2024-09-21 07:47:47 +02:00
Ber Gutman
5b87076f92 Update to v0.3.22 2024-09-20 17:51:19 +02:00
James W.
f8a5fdfb61 Merge pull request #78 from open-webui/0.3.21
Update to v0.3.21
2024-09-12 21:57:20 -06:00
0xThresh.eth
338ecfd26c Update to v0.3.21 2024-09-12 21:56:42 -06:00
James W.
4d7ea6759e Merge pull request #77 from open-webui/0.3.19
Update to v0.3.19
2024-09-12 21:49:59 -06:00
0xThresh.eth
39bc3aaf4c Update to v0.3.19 2024-09-12 21:49:43 -06:00
James W.
0b637b28d6 Merge pull request #76 from open-webui/0.3.18
Update to v0.3.18
2024-09-12 21:47:10 -06:00
0xThresh.eth
450afb1c4d Update to v0.3.18 2024-09-12 21:46:42 -06:00
James W.
d234e766b2 Merge pull request #75 from open-webui/0.3.17
Update to v0.3.17
2024-09-12 21:44:15 -06:00
0xThresh.eth
e1b6ba25d3 Update to v0.3.17 2024-09-12 21:43:14 -06:00
James W.
35ce1ec7fc Merge pull request #74 from open-webui/0.3.16
Update to v0.3.16
2024-09-12 21:39:58 -06:00
0xThresh.eth
d72e66c82f Update to v0.3.16 2024-09-12 21:39:36 -06:00
James W.
dbacb4e63e Merge pull request #73 from open-webui/0.3.15
Update to v0.3.15
2024-09-12 21:33:42 -06:00
0xThresh.eth
4cd3137680 Update to v0.3.15 2024-09-12 21:33:17 -06:00
James W.
179bc9c08c Merge pull request #72 from open-webui/0.3.14
Update dependent charts, remove latest tag from values, and upgrade to v0.3.14
2024-09-12 21:29:00 -06:00
0xThresh.eth
73673db0c6 Update dependent charts, remove latest tag from values, and upgrade to v0.3.14 2024-09-12 21:27:50 -06:00
James W.
6475d5af98 Merge pull request #69 from open-webui/fix-svc-typo
Fix service typo from last PR
2024-08-31 14:26:53 -06:00
James W.
20af7b89cf Update README.md 2024-08-31 14:26:29 -06:00
James W.
d0db4c5ca3 Update Chart.yaml 2024-08-31 14:26:13 -06:00
James W.
bda4bcfd48 Update service.yaml 2024-08-31 14:24:45 -06:00
James W.
13980b1fcc Merge pull request #68 from harunanase/main
Fix condition case on `loadBalancerIP`
2024-08-31 11:42:27 -06:00
haruna
2f21841a00 feat: update open-webui chart version to 3.1.8 2024-08-31 16:16:21 +08:00
haruna
7b564ed2f0 fix: open-webui svc condition case on loadBalancerIP 2024-08-31 16:10:53 +08:00
James W.
400052429b Merge pull request #65 from chr0n1x/ollama-bump
feat: bump ollama chart to 0.54
2024-08-22 16:51:15 -06:00
chr0n1x
abe5ce38bc feat: bump ollama chart to 0.54
Bumping for https://github.com/otwld/ollama-helm/pull/89
2024-08-19 19:49:35 -04:00
James W.
b4080434ea Merge pull request #64 from open-webui/owui-dependency
Update bundled Pipelines chart
2024-08-17 21:15:38 -06:00
0xThresh.eth
ad063a989d Update README 2024-08-17 21:14:24 -06:00
0xThresh.eth
19527a43c7 Update OWUI chart version 2024-08-17 21:13:58 -06:00
0xThresh.eth
93d318ce41 Updated Pipelines version in OWUI chart 2024-08-17 21:13:25 -06:00
James W.
723c33e3f2 Merge pull request #63 from open-webui/pipelines-0.0.4
Update Pipelines chart version
2024-08-17 21:11:12 -06:00
James W.
17e1e7d61a Update Pipelines chart version 2024-08-17 20:10:43 -07:00
James W.
7f7aa04351 Merge pull request #62 from marlapativ/pullsecrets
feat: adding imagepullsecrets to open-webui and pipelines
2024-08-17 21:10:06 -06:00
James W.
80be808ed1 Delay update on Pipelines chart version
There's a bug with the Helm releaser Github action that prevents you from releasing multiple charts in the same PR, so I'll merge this PR without updating the chart version and update that in a separate PR to trigger that action.
2024-08-17 20:09:05 -07:00
Marlapati Venkata Naga Sai Teja[marlapativ]
4256a677f2 fix: chart version update and readme update 2024-08-17 00:32:21 -04:00
Marlapati Venkata Naga Sai Teja[marlapativ]
5c438db555 feat: adding imagepullsecrets to open-webui and pipelines 2024-08-17 00:03:43 -04:00
James W.
3003028420 Merge pull request #61 from open-webui/bug-reset-config
Fix init container to leave existing files intact
2024-08-15 21:45:02 -06:00
0xThresh.eth
c486164e97 Fix init container to leave existing files intact 2024-08-15 21:44:27 -06:00
James W.
a0ae9b172e Merge pull request #58 from aschaber1/main
feat: Add topologySpreadConstraints to workload-manager.yaml template
2024-08-15 20:44:56 -06:00
0xThresh.eth
d492339dd7 Update version and docs 2024-08-15 20:31:22 -06:00
Alexander Schaber
a1e073f557 feat: Add topologySpreadConstraints to workload-manager.yaml template 2024-08-09 00:54:39 +02:00
James W.
3cf4514166 Merge pull request #57 from 0xThresh/feat-owui-0.3.9
Upgrade Chart Dependencies
2024-08-04 18:54:36 -06:00
0xThresh.eth
0b5fb66ac2 Updated dependent charts 2024-08-04 18:39:47 -06:00
0xThresh.eth
961bbcda2c Upgrade OWUI to v0.3.9 2024-08-04 18:13:03 -06:00
0xThresh
803c99e135 Merge pull request #55 from chgl/publish-as-an-oci-artifact
Push the helm charts to ghcr.io as an OCI artifact
2024-07-30 22:37:06 -06:00
chgl
de2f698c72 Also apply the container security context to the initContainer (#54) 2024-07-28 14:48:48 -07:00
chgl
7273974943 Push the helm charts to ghcr.io as an OCI artifact 2024-07-27 13:21:06 +02:00
0xThresh
b7b6bc2022 fix: Use init container fix offline install issue (#53) 2024-07-23 17:20:07 -07:00
0xThresh
dd918f0216 Merge pull request #51 from chgl/make-security-context-configurable
feat: configure pod and container security context settings
2024-07-20 17:39:03 -06:00
chgl
62e5d9c95b feat: configure pod and container security context settings 2024-07-20 12:41:24 +02:00
0xThresh
587b93ecd4 Updated Ollama charts to latest version (#48)
Updated Ollama charts to latest version
2024-07-15 13:55:17 -07:00
0xThresh
309e0aa30c Merge pull request #45 from 0xThresh/feat-owui-0.3.8
feat: Upgrade to Open WebUI v0.3.8
2024-07-14 21:25:20 -06:00
0xThresh.eth
deaaef0147 feat: Upgrade to Open WebUI v0.3.8 2024-07-14 21:25:04 -06:00
0xThresh
881fe7140d Merge pull request #44 from 0xThresh/feat-owui-0.3.7
feat: Upgrade to Open WebUI v0.3.7
2024-07-14 21:07:31 -06:00
0xThresh.eth
2cb251504d feat: Upgrade to Open WebUI v0.3.7 2024-07-14 21:05:47 -06:00
0xThresh
5a54d7f998 Merge pull request #43 from 0xThresh/feat-owui-0.3.6
feat: Upgrade to Open WebUI v0.3.6
2024-07-14 20:54:04 -06:00
0xThresh.eth
d7a271013f feat: Upgrade to Open WebUI v0.3.6 2024-07-14 20:53:21 -06:00
35 changed files with 972 additions and 49 deletions

View File

@@ -5,16 +5,52 @@ on:
branches:
- main
paths:
- "charts/*/Chart.yaml"
- "charts/**"
jobs:
# semantic-release:
# runs-on: ubuntu-latest
# steps:
# # Checkout repo
# - name: Checkout
# uses: actions/checkout@v4
# - name: Setup Node.js
# uses: actions/setup-node@v3
# with:
# node-version: 'lts/*'
# - name: Install dependencies
# run: npm install
# - name: Release
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# run: npx semantic-release
# - name: Install yq
# run: |
# wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O yq &&\
# chmod +x yq
# - name: Get version
# id: get_version
# run: |
# echo "VERSION=$(cat charts/open-webui/Chart.yaml | ./yq -r '.version')" >> $GITHUB_OUTPUT
# - name: Commit Chart.yaml
# uses: stefanzweifel/git-auto-commit-action@v4
# with:
# commit_message: 'chore(release) bump version to ${{ steps.get_version.outputs.VERSION }}'
# file_pattern: 'charts/open-webui/Chart.yaml'
release:
#needs: semantic-release
permissions:
contents: write
packages: write
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 0
@@ -23,15 +59,12 @@ jobs:
git config user.name "$GITHUB_ACTOR"
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
- name: Install Helm
uses: azure/setup-helm@v4
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: Add Dependency Repos
run: |
helm repo add ollama https://otwld.github.io/ollama-helm/
helm repo add open-webui https://helm.openwebui.com/
helm repo add tika https://apache.jfrog.io/artifactory/tika/
helm repo add redis https://charts.bitnami.com/bitnami
- name: Run chart-releaser
uses: helm/chart-releaser-action@v1.6.0
@@ -41,3 +74,19 @@ jobs:
charts_dir: charts/
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: Login to GitHub Container Registry
run: |
echo "${GHCR_REGISTRY_PASSWORD}" | helm registry login ghcr.io --username ${{ github.actor }} --password-stdin
env:
GHCR_REGISTRY_PASSWORD: "${{ secrets.GITHUB_TOKEN }}"
- name: Push Charts to ghcr.io
run: |
for pkg in .cr-release-packages/*; do
if [ -z "${pkg:-}" ]; then
echo "No charts to release"
break
fi
helm push "${pkg}" oci://ghcr.io/${{ github.repository }}
done

View File

@@ -0,0 +1,54 @@
name: Check Open WebUI Helm Charts (open-webui)
on:
pull_request:
paths:
- "charts/open-webui/**"
push:
paths:
- "charts/open-webui/**"
jobs:
lint-chart:
name: Lint Helm Chart
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Set up Helm
uses: azure/setup-helm@v4
- name: Lint open-webui Helm Chart
run: |
helm lint ./charts/open-webui
test-deploy:
name: Test Chart Deployment
runs-on: ubuntu-latest
needs: lint-chart
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Set up kubectl
uses: azure/setup-kubectl@v4
- name: Set up Helm
uses: azure/setup-helm@v4
- name: Set up KinD Cluster
uses: helm/kind-action@v1
- name: Template open-webui Helm Chart
run: |
helm template open-webui ./charts/open-webui \
--namespace test-namespace --create-namespace > open-webui.yaml
- name: Verify open-webui
run: |
kubectl create namespace test-namespace
kubectl apply --namespace test-namespace -f open-webui.yaml
kubectl wait --namespace test-namespace pod/open-webui-0 --for=condition=Ready --timeout=600s

View File

@@ -0,0 +1,55 @@
name: Check Open WebUI Helm Charts (pipelines)
on:
pull_request:
paths:
- "charts/pipelines/**"
push:
paths:
- "charts/pipelines/**"
jobs:
lint-chart:
name: Lint Helm Chart
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Set up Helm
uses: azure/setup-helm@v4
- name: Lint pipelines Helm Chart
run: |
helm lint ./charts/pipelines
test-deploy:
name: Test Chart Deployment
runs-on: ubuntu-latest
needs: lint-chart
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Set up kubectl
uses: azure/setup-kubectl@v4
- name: Set up Helm
uses: azure/setup-helm@v4
- name: Set up KinD Cluster
uses: helm/kind-action@v1
- name: Template open-webui Helm Chart
run: |
helm template pipelines ./charts/pipelines \
--namespace test-namespace --create-namespace > pipelines.yaml
- name: Verify pipelines
run: |
kubectl create namespace test-namespace
kubectl apply --namespace test-namespace -f pipelines.yaml
PIPELINE_POD=$(kubectl get --namespace test-namespace pod -L app.kubernetes.io/component=pipelines -o jsonpath='{.items[*].metadata.name}')
kubectl wait --namespace test-namespace pod/${PIPELINE_POD} --for=condition=Ready --timeout=600s

125
.gitignore vendored Normal file
View File

@@ -0,0 +1,125 @@
# Created by https://www.toptal.com/developers/gitignore/api/macos,intellij+all,helm
# Edit at https://www.toptal.com/developers/gitignore?templates=macos,intellij+all,helm
### Intellij+all ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
# User-specific stuff
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/**/usage.statistics.xml
.idea/**/dictionaries
.idea/**/shelf
# AWS User-specific
.idea/**/aws.xml
# Generated files
.idea/**/contentModel.xml
# Sensitive or high-churn files
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
.idea/**/dbnavigator.xml
# Gradle
.idea/**/gradle.xml
.idea/**/libraries
# Gradle and Maven with auto-import
# When using Gradle or Maven with auto-import, you should exclude module files,
# since they will be recreated, and may cause churn. Uncomment if using
# auto-import.
# .idea/artifacts
# .idea/compiler.xml
# .idea/jarRepositories.xml
# .idea/modules.xml
# .idea/*.iml
# .idea/modules
# *.iml
# *.ipr
# CMake
cmake-build-*/
# Mongo Explorer plugin
.idea/**/mongoSettings.xml
# File-based project format
*.iws
# IntelliJ
out/
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Cursive Clojure plugin
.idea/replstate.xml
# SonarLint plugin
.idea/sonarlint/
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties
# Editor-based Rest Client
.idea/httpRequests
# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser
### Intellij+all Patch ###
# Ignore everything but code style settings and run configurations
# that are supposed to be shared within teams.
.idea/*
!.idea/codeStyles
!.idea/runConfigurations
### macOS ###
# General
.DS_Store
.AppleDouble
.LSOverride
# Icon must end with two \r
Icon
# Thumbnails
._*
# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk
### macOS Patch ###
# iCloud generated files
*.icloud
# End of https://www.toptal.com/developers/gitignore/api/macos,intellij+all,helm

14
.releaserc Normal file
View File

@@ -0,0 +1,14 @@
{
"name": "helm-charts",
"branches": ["main"],
"plugins": [
[
"semantic-release-helm",
{
chartPath: './charts/open-webui',
crPublish: false,
onlyUpdateVersion: true
}
]
]
}

View File

@@ -30,6 +30,8 @@
- **Issues**: If you find any issues or have suggestions for improvements, please create a new issue in the repository before working on a Pull Request.
- **Actions Updates**: If your Pull Request includes adding a new chart dependency, ensure to make the necessary updates to Github Actions to add the chart repo dependency, or else the release run will fail.
## Getting Help
If you need any help or have questions about contributing, feel free to reach out to the maintainers of the repository.

View File

@@ -1,9 +1,15 @@
dependencies:
- name: ollama
repository: https://otwld.github.io/ollama-helm/
version: 0.33.0
version: 1.3.0
- name: pipelines
repository: https://helm.openwebui.com
version: 0.0.1
digest: sha256:1138e9fa48135fabda643adc69845284d4ba08745caeb958a646f10c7a6f9fe1
generated: "2024-06-04T21:28:16.737572-06:00"
version: 0.0.6
- name: tika
repository: https://apache.jfrog.io/artifactory/tika
version: 2.9.0
- name: redis
repository: https://charts.bitnami.com/bitnami
version: 20.6.3
digest: sha256:b0e3a4613e4f5b9ad2766cafb111b2c03dff1ba1774217ed21fb9fd5556729f4
generated: "2025-01-16T14:22:56.662663-07:00"

View File

@@ -1,38 +1,45 @@
apiVersion: v2
name: open-webui
version: 3.0.5
appVersion: "v0.3.5"
version: 5.4.0
appVersion: 0.5.4
home: https://www.openwebui.com/
icon: https://raw.githubusercontent.com/open-webui/open-webui/main/static/favicon.png
description: "Open WebUI: A User-Friendly Web Interface for Chat Interactions 👋"
icon: >-
https://raw.githubusercontent.com/open-webui/open-webui/main/static/favicon.png
description: 'Open WebUI: A User-Friendly Web Interface for Chat Interactions 👋'
keywords:
- llm
- chat
- web-ui
- open-webui
sources:
- https://github.com/open-webui/helm-charts
- https://github.com/open-webui/open-webui/pkgs/container/open-webui
- https://github.com/otwld/ollama-helm/
- https://hub.docker.com/r/ollama/ollama
- https://charts.bitnami.com/bitnami
annotations:
licenses: MIT
dependencies:
- name: ollama
repository: https://otwld.github.io/ollama-helm/
version: ">=0.24.0"
version: '>=0.24.0'
import-values:
- child: service
parent: ollama.service
condition: ollama.enabled
- name: pipelines
repository: https://helm.openwebui.com
version: ">=0.0.1"
version: '>=0.0.1'
import-values:
- child: service
parent: pipelines.service
condition: pipelines.enabled
- name: tika
repository: https://apache.jfrog.io/artifactory/tika
version: '>=2.9.0'
condition: tika.enabled
- name: redis
repository: https://charts.bitnami.com/bitnami
version: '>=20.6.2'
alias: redis-cluster
condition: redis-cluster.enabled

View File

@@ -1,6 +1,6 @@
# open-webui
![Version: 3.0.4](https://img.shields.io/badge/Version-3.0.4-informational?style=flat-square) ![AppVersion: v0.3.4](https://img.shields.io/badge/AppVersion-v0.3.4-informational?style=flat-square)
![Version: 5.4.0](https://img.shields.io/badge/Version-5.4.0-informational?style=flat-square) ![AppVersion: 0.5.4](https://img.shields.io/badge/AppVersion-0.5.4-informational?style=flat-square)
Open WebUI: A User-Friendly Web Interface for Chat Interactions 👋
@@ -32,6 +32,8 @@ helm upgrade --install open-webui open-webui/open-webui
| Repository | Name | Version |
|------------|------|---------|
| https://apache.jfrog.io/artifactory/tika | tika | >=2.9.0 |
| https://charts.bitnami.com/bitnami | redis-cluster(redis) | >=20.6.2 |
| https://helm.openwebui.com | pipelines | >=0.0.1 |
| https://otwld.github.io/ollama-helm/ | ollama | >=0.24.0 |
@@ -42,16 +44,23 @@ helm upgrade --install open-webui open-webui/open-webui
| affinity | object | `{}` | Affinity for pod assignment |
| annotations | object | `{}` | |
| clusterDomain | string | `"cluster.local"` | Value of cluster domain |
| extraEnvVars | list | `[{"name":"OPENAI_API_KEY","value":"0p3n-w3bu!"}]` | Additional environments variables on the output Deployment definition. Most up-to-date environment variables can be found here: https://docs.openwebui.com/getting-started/env-configuration/ |
| containerSecurityContext | object | `{}` | Configure container security context ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-containe> |
| copyAppData.resources | object | `{}` | |
| extraEnvVars | list | `[{"name":"OPENAI_API_KEY","value":"0p3n-w3bu!"}]` | Env vars added to the Open WebUI deployment. Most up-to-date environment variables can be found here: https://docs.openwebui.com/getting-started/env-configuration/ |
| extraEnvVars[0] | object | `{"name":"OPENAI_API_KEY","value":"0p3n-w3bu!"}` | Default API key value for Pipelines. Should be updated in a production deployment, or be changed to the required API key if not using Pipelines |
| image | object | `{"pullPolicy":"Always","repository":"ghcr.io/open-webui/open-webui","tag":"latest"}` | Open WebUI image tags can be found here: https://github.com/open-webui/open-webui/pkgs/container/open-webui |
| extraResources | list | `[]` | Extra resources to deploy with Open WebUI |
| image | object | `{"pullPolicy":"IfNotPresent","repository":"ghcr.io/open-webui/open-webui","tag":""}` | Open WebUI image tags can be found here: https://github.com/open-webui/open-webui |
| imagePullSecrets | list | `[]` | Configure imagePullSecrets to use private registry ref: <https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry> |
| ingress.additionalHosts | list | `[]` | |
| ingress.annotations | object | `{}` | Use appropriate annotations for your Ingress controller, e.g., for NGINX: nginx.ingress.kubernetes.io/rewrite-target: / |
| ingress.class | string | `""` | |
| ingress.enabled | bool | `false` | |
| ingress.existingSecret | string | `""` | |
| ingress.host | string | `""` | |
| ingress.tls | bool | `false` | |
| livenessProbe | object | `{}` | Probe for liveness of the Open WebUI container ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes> |
| nameOverride | string | `""` | |
| namespaceOverride | string | `""` | |
| nodeSelector | object | `{}` | Node labels for pod assignment. |
| ollama.enabled | bool | `true` | Automatically install Ollama Helm chart from https://otwld.github.io/ollama-helm/. Use [Helm Values](https://github.com/otwld/ollama-helm/#helm-values) to configure |
| ollama.fullnameOverride | string | `"open-webui-ollama"` | If enabling embedded Ollama, update fullnameOverride to your desired Ollama name value, or else it will use the default ollama.name value from the Ollama chart |
@@ -64,13 +73,53 @@ helm upgrade --install open-webui open-webui/open-webui
| persistence.selector | object | `{}` | |
| persistence.size | string | `"2Gi"` | |
| persistence.storageClass | string | `""` | |
| persistence.subPath | string | `""` | Subdirectory of Open WebUI PVC to mount. Useful if root directory is not empty. |
| pipelines.enabled | bool | `true` | Automatically install Pipelines chart to extend Open WebUI functionality using Pipelines: https://github.com/open-webui/pipelines |
| pipelines.extraEnvVars | list | `[]` | This section can be used to pass required environment variables to your pipelines (e.g. Langfuse hostname) |
| podAnnotations | object | `{}` | |
| podLabels | object | `{}` | |
| podSecurityContext | object | `{}` | Configure pod security context ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-containe> |
| readinessProbe | object | `{}` | Probe for readiness of the Open WebUI container ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes> |
| redis-cluster | object | `{"auth":{"enabled":false},"enabled":false,"fullnameOverride":"open-webui-redis","replica":{"replicaCount":3}}` | Deploys a Redis cluster with subchart 'redis' from bitnami |
| redis-cluster.auth | object | `{"enabled":false}` | Redis Authentication |
| redis-cluster.auth.enabled | bool | `false` | Enable Redis authentication (disabled by default). For your security, we strongly suggest that you switch to 'auth.enabled=true' |
| redis-cluster.enabled | bool | `false` | Enable Redis installation |
| redis-cluster.fullnameOverride | string | `"open-webui-redis"` | Redis cluster name (recommended to be 'open-webui-redis') - In this case, redis url will be 'redis://open-webui-redis-master:6379/0' or 'redis://[:<password>@]open-webui-redis-master:6379/0' |
| redis-cluster.replica | object | `{"replicaCount":3}` | Replica configuration for the Redis cluster |
| redis-cluster.replica.replicaCount | int | `3` | Number of Redis replica instances |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| service | object | `{"annotations":{},"containerPort":8080,"labels":{},"loadBalancerClass":"","nodePort":"","port":80,"type":"ClusterIP"}` | Service values to expose Open WebUI pods to cluster |
| serviceAccount.annotations | object | `{}` | |
| serviceAccount.automountServiceAccountToken | bool | `false` | |
| serviceAccount.enable | bool | `true` | |
| serviceAccount.name | string | `""` | |
| startupProbe | object | `{}` | Probe for startup of the Open WebUI container ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes> |
| strategy | object | `{}` | Strategy for updating the workload manager: deployment or statefulset |
| tika.enabled | bool | `false` | Automatically install Apache Tika to extend Open WebUI |
| tolerations | list | `[]` | Tolerations for pod assignment |
| topologySpreadConstraints | list | `[]` | Topology Spread Constraints for pod assignment |
| volumeMounts | object | `{"container":[],"initContainer":[]}` | Configure container volume mounts ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/> |
| volumes | list | `[]` | Configure pod volumes ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/> |
| websocket.enabled | bool | `false` | Enables websocket support in Open WebUI with env `ENABLE_WEBSOCKET_SUPPORT` |
| websocket.manager | string | `"redis"` | Specifies the websocket manager to use with env `WEBSOCKET_MANAGER`: redis (default) |
| websocket.redis | object | `{"annotations":{},"args":[],"command":[],"enabled":true,"image":{"pullPolicy":"IfNotPresent","repository":"redis","tag":"7.4.2-alpine3.21"},"labels":{},"name":"open-webui-redis","resources":{},"service":{"annotations":{},"containerPort":6379,"labels":{},"nodePort":"","port":6379,"type":"ClusterIP"}}` | Deploys a redis |
| websocket.redis.annotations | object | `{}` | Redis annotations |
| websocket.redis.args | list | `[]` | Redis arguments (overrides default) |
| websocket.redis.command | list | `[]` | Redis command (overrides default) |
| websocket.redis.enabled | bool | `true` | Enable redis installation |
| websocket.redis.image | object | `{"pullPolicy":"IfNotPresent","repository":"redis","tag":"7.4.2-alpine3.21"}` | Redis image |
| websocket.redis.labels | object | `{}` | Redis labels |
| websocket.redis.name | string | `"open-webui-redis"` | Redis name |
| websocket.redis.resources | object | `{}` | Redis resources |
| websocket.redis.service | object | `{"annotations":{},"containerPort":6379,"labels":{},"nodePort":"","port":6379,"type":"ClusterIP"}` | Redis service |
| websocket.redis.service.annotations | object | `{}` | Redis service annotations |
| websocket.redis.service.containerPort | int | `6379` | Redis container/target port |
| websocket.redis.service.labels | object | `{}` | Redis service labels |
| websocket.redis.service.nodePort | string | `""` | Redis service node port. Valid only when type is `NodePort` |
| websocket.redis.service.port | int | `6379` | Redis service port |
| websocket.redis.service.type | string | `"ClusterIP"` | Redis service type |
| websocket.url | string | `"redis://open-webui-redis:6379/0"` | Specifies the URL of the Redis instance for websocket communication. Template with `redis://[:<password>@]<hostname>:<port>/<db>` |
----------------------------------------------

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,77 @@
{{- `
🎉 Welcome to Open WebUI!!
___ __ __ _ _ _ ___
/ _ \ _ __ ___ _ __ \ \ / /__| |__ | | | |_ _|
| | | | '_ \ / _ \ '_ \ \ \ /\ / / _ \ '_ \| | | || |
| |_| | |_) | __/ | | | \ V V / __/ |_) | |_| || |
\___/| .__/ \___|_| |_| \_/\_/ \___|_.__/ \___/|___|
|_|
` }}
v{{ .Chart.AppVersion }} - building the best open-source AI user interface.
- Chart Version: v{{ .Chart.Version }}
- Project URL 1: {{ .Chart.Home }}
- Project URL 2: https://github.com/open-webui/open-webui
- Documentation: https://docs.openwebui.com/
- Chart URL: https://github.com/open-webui/helm-charts
Open WebUI is a web-based user interface that works with Ollama, OpenAI, Claude 3, Gemini and more.
This interface allows you to easily interact with local AI models.
1. Deployment Information:
- Chart Name: {{ .Chart.Name }}
- Release Name: {{ .Release.Name }}
- Namespace: {{ .Release.Namespace }}
2. Access the Application:
{{- if contains "ClusterIP" .Values.service.type }}
Access via ClusterIP service:
export LOCAL_PORT=8080
export POD_NAME=$(kubectl get pods -n {{ .Release.Namespace }} -l "app.kubernetes.io/component={{ include "open-webui.name" . }}" -o jsonpath="{.items[0].metadata.name}")
export CONTAINER_PORT=$(kubectl get pod -n {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}")
kubectl -n {{ .Release.Namespace }} port-forward $POD_NAME $LOCAL_PORT:$CONTAINER_PORT
echo "Visit http://127.0.0.1:$LOCAL_PORT to use your application"
Then, access the application at: http://127.0.0.1:$LOCAL_PORT or http://localhost:8080
{{- else if contains "NodePort" .Values.service.type }}
Access via NodePort service:
export NODE_PORT=$(kubectl get -n {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "open-webui.name" . }})
export NODE_IP=$(kubectl get nodes -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.service.type }}
Access via LoadBalancer service:
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
NOTE: The external address format depends on your cloud provider:
- AWS: Will return a hostname (e.g., xxx.elb.amazonaws.com)
- GCP/Azure: Will return an IP address
You can watch the status by running:
kubectl get -n {{ .Release.Namespace }} svc {{ include "open-webui.name" . }} --watch
export EXTERNAL_IP=$(kubectl get -n {{ .Release.Namespace }} svc {{ include "open-webui.name" . }} -o jsonpath="{.status.loadBalancer.ingress[0].hostname:-.status.loadBalancer.ingress[0].ip}")
echo http://$EXTERNAL_IP:{{ .Values.service.port }}
{{- end }}
{{- if .Values.ingress.enabled }}
Ingress is enabled. Access the application at: http{{ if .Values.ingress.tls }}s{{ end }}://{{ .Values.ingress.host }}
{{- end }}
3. Useful Commands:
- Check deployment status:
helm status {{ .Release.Name }} -n {{ .Release.Namespace }}
- Get detailed information:
helm get all {{ .Release.Name }} -n {{ .Release.Namespace }}
- View logs:
{{- if .Values.persistence.enabled }}
kubectl logs -f statefulset/{{ include "open-webui.name" . }} -n {{ .Release.Namespace }}
{{- else }}
kubectl logs -f deployment/{{ include "open-webui.name" . }} -n {{ .Release.Namespace }}
{{- end }}
4. Cleanup:
- Uninstall the deployment:
helm uninstall {{ .Release.Name }} -n {{ .Release.Namespace }}

View File

@@ -1,3 +1,14 @@
{{/*
Allow the release namespace to be overridden for multi-namespace deployments in combined charts
*/}}
{{- define "open-webui.namespace" -}}
{{- if .Values.namespaceOverride -}}
{{- .Values.namespaceOverride -}}
{{- else -}}
{{- .Release.Namespace -}}
{{- end -}}
{{- end -}}
{{/*
Set the name of the Open WebUI resources
*/}}
@@ -141,4 +152,20 @@ Create the service endpoint to use for Pipelines if the subchart is used
{{- $pipelinesServicePort := .Values.pipelines.service.port | toString }}
{{- printf "http://%s.%s.svc.%s:%s" (include "pipelines.name" .) (.Release.Namespace) $clusterDomain $pipelinesServicePort }}
{{- end }}
{{- end }}
{{- end }}
{{/*
Create selector labels to include on chart all websocket resources
*/}}
{{- define "websocket.redis.selectorLabels" -}}
{{ include "base.selectorLabels" . }}
app.kubernetes.io/component: {{ .Values.websocket.redis.name }}
{{- end }}
{{/*
Create labels to include on chart all websocket resources
*/}}
{{- define "websocket.redis.labels" -}}
{{ include "base.labels" . }}
{{ include "websocket.redis.selectorLabels" . }}
{{- end }}

View File

@@ -0,0 +1,6 @@
{{- if .Values.extraResources }}
{{- range .Values.extraResources }}
---
{{ toYaml . | nindent 0 }}
{{- end }}
{{- end }}

View File

@@ -3,6 +3,7 @@ apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: {{ include "open-webui.name" . }}
namespace: {{ include "open-webui.namespace" . }}
labels:
{{- include "open-webui.labels" . | nindent 4 }}
{{- with .Values.ingress.annotations }}
@@ -17,6 +18,9 @@ spec:
tls:
- hosts:
- {{ .Values.ingress.host | quote }}
{{- range .Values.ingress.additionalHosts }}
- {{ . | quote }}
{{- end }}
secretName: {{ default (printf "%s-tls" .Release.Name) .Values.ingress.existingSecret }}
{{- end }}
rules:
@@ -30,4 +34,16 @@ spec:
name: {{ include "open-webui.name" . }}
port:
name: http
{{- range .Values.ingress.additionalHosts }}
- host: {{ . | quote }}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: {{ include "open-webui.name" $ }}
port:
name: http
{{- end }}
{{- end }}

View File

@@ -3,6 +3,7 @@ apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: {{ include "open-webui.name" . }}
namespace: {{ include "open-webui.namespace" . }}
labels:
{{- include "open-webui.selectorLabels" . | nindent 4 }}
{{- with .Values.persistence.annotations }}

View File

@@ -0,0 +1,14 @@
{{- if .Values.serviceAccount.enable }}
apiVersion: v1
kind: ServiceAccount
metadata:
name: {{ .Values.serviceAccount.name | default (include "open-webui.name" .) }}
namespace: {{ include "open-webui.namespace" . }}
labels:
{{- include "open-webui.labels" . | nindent 4 }}
{{- with .Values.serviceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }}
{{- end }}

View File

@@ -2,6 +2,7 @@ apiVersion: v1
kind: Service
metadata:
name: {{ include "open-webui.name" . }}
namespace: {{ include "open-webui.namespace" . }}
labels:
{{- include "open-webui.labels" . | nindent 4 }}
{{- with .Values.service.labels }}
@@ -29,7 +30,7 @@ spec:
{{- if and (eq .Values.service.type "ClusterIP") (.Values.service.clusterIP) }}
clusterIP: {{ .Values.service.clusterIP }}
{{- end }}
{{- if and (eq .Values.service.type "loadBalancer") (.Values.service.loadBalancerIP) }}
{{- if and (eq .Values.service.type "LoadBalancer") (.Values.service.loadBalancerIP) }}
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
{{- end }}

View File

@@ -0,0 +1,71 @@
{{- if and .Values.websocket.enabled .Values.websocket.redis.enabled }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Values.websocket.redis.name }}
namespace: {{ include "open-webui.namespace" . }}
labels:
{{- include "websocket.redis.labels" . | nindent 4 }}
{{- with .Values.websocket.redis.labels }}
{{- toYaml . | nindent 4 }}
{{- end }}
annotations:
{{- with .Values.websocket.redis.annotations }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
selector:
matchLabels:
{{- include "websocket.redis.selectorLabels" . | nindent 6 }}
template:
metadata:
labels:
{{- include "websocket.redis.labels" . | nindent 8 }}
spec:
containers:
- name: {{ .Values.websocket.redis.name }}
image: "{{ .Values.websocket.redis.image.repository }}:{{ .Values.websocket.redis.image.tag }}"
imagePullPolicy: {{ .Values.websocket.redis.image.pullPolicy }}
{{- with .Values.websocket.redis.command }}
command:
{{- toYaml . | nindent 10 }}
{{- end }}
{{- with .Values.websocket.redis.args }}
args:
{{- toYaml . | nindent 10 }}
{{- end }}
ports:
- name: http
containerPort: {{ .Values.websocket.redis.service.containerPort }}
{{- with .Values.websocket.redis.resources }}
resources:
{{- toYaml . | nindent 10 }}
{{- end }}
---
apiVersion: v1
kind: Service
metadata:
name: {{ .Values.websocket.redis.name }}
namespace: {{ include "open-webui.namespace" . }}
labels:
{{- include "websocket.redis.labels" . | nindent 4 }}
{{- with .Values.websocket.redis.labels }}
{{- toYaml . | nindent 4 }}
{{- end }}
annotations:
{{- with .Values.websocket.redis.service.annotations }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
selector:
{{- include "websocket.redis.selectorLabels" . | nindent 4 }}
type: {{ .Values.websocket.redis.service.type | default "ClusterIP" }}
ports:
- protocol: TCP
name: http
port: {{ .Values.websocket.redis.service.port }}
targetPort: http
{{- if .Values.websocket.redis.service.nodePort }}
nodePort: {{ .Values.websocket.redis.service.nodePort | int }}
{{- end }}
{{- end }}

View File

@@ -6,6 +6,7 @@ kind: Deployment
{{- end }}
metadata:
name: {{ include "open-webui.name" . }}
namespace: {{ include "open-webui.namespace" . }}
labels:
{{- include "open-webui.labels" . | nindent 4 }}
{{- with .Values.annotations }}
@@ -20,17 +21,63 @@ spec:
selector:
matchLabels:
{{- include "open-webui.selectorLabels" . | nindent 6 }}
{{- if .Values.strategy }}
{{- if .Values.persistence.enabled }}
updateStrategy:
{{- toYaml .Values.strategy | nindent 4 }}
{{- else }}
strategy:
{{- toYaml .Values.strategy | nindent 4 }}
{{- end }}
{{- end }}
template:
metadata:
labels:
{{- include "open-webui.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
initContainers:
- name: copy-app-data
{{- with .Values.image }}
image: {{ .repository }}:{{ .tag | default $.Chart.AppVersion }}
imagePullPolicy: {{ .pullPolicy }}
{{- end }}
command: ['sh', '-c', 'cp -R -n /app/backend/data/* /tmp/app-data/']
{{- with .Values.containerSecurityContext }}
securityContext:
{{- toYaml . | nindent 10 }}
{{- end }}
{{- with .Values.copyAppData.resources }}
resources: {{- toYaml . | nindent 10 }}
{{- end }}
volumeMounts:
- name: data
mountPath: /tmp/app-data
{{- if .Values.persistence.subPath }}
subPath: {{ .Values.persistence.subPath }}
{{- end }}
{{- with .Values.volumeMounts.initContainer }}
{{- toYaml . | nindent 8 }}
{{- end }}
enableServiceLinks: false
automountServiceAccountToken: false
automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }}
{{- if .Values.serviceAccount.enable }}
serviceAccountName: {{ .Values.serviceAccount.name | default (include "open-webui.name" .) }}
{{- end }}
{{- with .Values.podSecurityContext }}
securityContext:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: {{ .Chart.Name }}
{{- with .Values.image }}
@@ -40,28 +87,62 @@ spec:
ports:
- name: http
containerPort: {{ .Values.service.containerPort }}
{{- with .Values.livenessProbe }}
livenessProbe: {{- toYaml . | nindent 10 }}
{{- end }}
{{- with .Values.readinessProbe }}
readinessProbe: {{- toYaml . | nindent 10 }}
{{- end }}
{{- with .Values.startupProbe }}
startupProbe: {{- toYaml . | nindent 10 }}
{{- end }}
{{- with .Values.resources }}
resources: {{- toYaml . | nindent 10 }}
{{- end }}
{{- with .Values.containerSecurityContext }}
securityContext:
{{- toYaml . | nindent 10 }}
{{- end }}
volumeMounts:
- name: data
mountPath: /app/backend/data
{{- if .Values.persistence.subPath }}
subPath: {{ .Values.persistence.subPath }}
{{- end }}
{{- with .Values.volumeMounts.container }}
{{- toYaml . | nindent 8 }}
{{- end }}
env:
- name: OLLAMA_BASE_URLS
{{- if or .Values.ollamaUrls .Values.ollama.enabled }}
- name: "OLLAMA_BASE_URLS"
value: {{ include "ollamaBaseUrls" . | quote }}
{{ if .Values.pipelines.enabled }}
- name: OPENAI_API_BASE_URL
{{- else }}
- name: "ENABLE_OLLAMA_API"
value: "False"
{{- end }}
- name: "OPENAI_API_BASE_URL"
{{- if .Values.pipelines.enabled }}
value: {{ include "pipelines.serviceEndpoint" . }}
{{ else if .Values.openaiBaseApiUrl }}
- name: OPENAI_API_BASE_URL
value: {{ .Values.openaiBaseApiUrl }}
{{ else }}
- name: OPENAI_API_BASE_URL
value: "https://api.openai.com/v1"
{{ end }}
{{- else if .Values.openaiBaseApiUrl }}
value: {{ .Values.openaiBaseApiUrl | quote }}
{{- end }}
{{- if .Values.extraEnvVars }}
{{- toYaml .Values.extraEnvVars | nindent 8 }}
{{- end }}
{{- if .Values.tika.enabled }}
- name: "CONTENT_EXTRACTION_ENGINE"
value: "Tika"
- name: "TIKA_SERVER_URL"
value: http://{{ .Chart.Name }}-tika:9998
{{- end }}
{{- if .Values.websocket.enabled }}
- name: "ENABLE_WEBSOCKET_SUPPORT"
value: "True"
- name: "WEBSOCKET_MANAGER"
value: {{ .Values.websocket.manager | default "redis" | quote }}
- name: "WEBSOCKET_REDIS_URL"
value: {{ .Values.websocket.url | quote }}
{{- end }}
tty: true
{{- with .Values.nodeSelector }}
nodeSelector:
@@ -75,6 +156,10 @@ spec:
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
{{- if and .Values.persistence.enabled .Values.persistence.existingClaim }}
- name: data
@@ -87,4 +172,7 @@ spec:
- name: data
persistentVolumeClaim:
claimName: {{ include "open-webui.name" . }}
{{- end }}
{{- end }}
{{- with .Values.volumes }}
{{- toYaml . | nindent 6 }}
{{- end }}

View File

@@ -1,4 +1,5 @@
nameOverride: ""
namespaceOverride: ""
ollama:
# -- Automatically install Ollama Helm chart from https://otwld.github.io/ollama-helm/. Use [Helm Values](https://github.com/otwld/ollama-helm/#helm-values) to configure
@@ -16,28 +17,143 @@ ollama:
# runtimeClassName: nvidia
# persistentVolume:
# enabled: true
# volumeName: "example-pre-existing-pv-created-by-smb-csi"
pipelines:
# -- Automatically install Pipelines chart to extend Open WebUI functionality using Pipelines: https://github.com/open-webui/pipelines
enabled: true
enabled: true
# -- This section can be used to pass required environment variables to your pipelines (e.g. Langfuse hostname)
extraEnvVars: []
tika:
# -- Automatically install Apache Tika to extend Open WebUI
enabled: false
# -- A list of Ollama API endpoints. These can be added in lieu of automatically installing the Ollama Helm chart, or in addition to it.
ollamaUrls: []
websocket:
# -- Enables websocket support in Open WebUI with env `ENABLE_WEBSOCKET_SUPPORT`
enabled: false
# -- Specifies the websocket manager to use with env `WEBSOCKET_MANAGER`: redis (default)
manager: redis
# -- Specifies the URL of the Redis instance for websocket communication. Template with `redis://[:<password>@]<hostname>:<port>/<db>`
url: redis://open-webui-redis:6379/0
# -- Deploys a redis
redis:
# -- Enable redis installation
enabled: true
# -- Redis name
name: open-webui-redis
# -- Redis labels
labels: {}
# -- Redis annotations
annotations: {}
# -- Redis image
image:
repository: redis
tag: 7.4.2-alpine3.21
pullPolicy: IfNotPresent
# -- Redis command (overrides default)
command: []
# -- Redis arguments (overrides default)
args: []
# -- Redis resources
resources: {}
# -- Redis service
service:
# -- Redis container/target port
containerPort: 6379
# -- Redis service type
type: ClusterIP
# -- Redis service labels
labels: {}
# -- Redis service annotations
annotations: {}
# -- Redis service port
port: 6379
# -- Redis service node port. Valid only when type is `NodePort`
nodePort: ""
# -- Deploys a Redis cluster with subchart 'redis' from bitnami
redis-cluster:
# -- Enable Redis installation
enabled: false
# -- Redis cluster name (recommended to be 'open-webui-redis')
# - In this case, redis url will be 'redis://open-webui-redis-master:6379/0' or 'redis://[:<password>@]open-webui-redis-master:6379/0'
fullnameOverride: open-webui-redis
# -- Redis Authentication
auth:
# -- Enable Redis authentication (disabled by default). For your security, we strongly suggest that you switch to 'auth.enabled=true'
enabled: false
# -- Replica configuration for the Redis cluster
replica:
# -- Number of Redis replica instances
replicaCount: 3
# -- Value of cluster domain
clusterDomain: cluster.local
annotations: {}
podAnnotations: {}
podLabels: {}
replicaCount: 1
# -- Open WebUI image tags can be found here: https://github.com/open-webui/open-webui/pkgs/container/open-webui
# -- Strategy for updating the workload manager: deployment or statefulset
strategy: {}
# -- Open WebUI image tags can be found here: https://github.com/open-webui/open-webui
image:
repository: ghcr.io/open-webui/open-webui
tag: "latest"
pullPolicy: Always
tag: ""
pullPolicy: "IfNotPresent"
serviceAccount:
enable: true
name: ""
annotations: {}
automountServiceAccountToken: false
# -- Configure imagePullSecrets to use private registry
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry>
imagePullSecrets: []
# imagePullSecrets:
# - name: myRegistryKeySecretName
# -- Probe for liveness of the Open WebUI container
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes>
livenessProbe: {}
# livenessProbe:
# httpGet:
# path: /health
# port: http
# failureThreshold: 1
# periodSeconds: 10
# -- Probe for readiness of the Open WebUI container
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes>
readinessProbe: {}
# readinessProbe:
# httpGet:
# path: /health/db
# port: http
# failureThreshold: 1
# periodSeconds: 10
# -- Probe for startup of the Open WebUI container
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes>
startupProbe: {}
# startupProbe:
# httpGet:
# path: /health
# port: http
# initialDelaySeconds: 30
# periodSeconds: 5
# failureThreshold: 20
resources: {}
copyAppData:
resources: {}
ingress:
enabled: false
class: ""
@@ -45,6 +161,7 @@ ingress:
# nginx.ingress.kubernetes.io/rewrite-target: /
annotations: {}
host: ""
additionalHosts: []
tls: false
existingSecret: ""
persistence:
@@ -52,6 +169,8 @@ persistence:
size: 2Gi
# -- Use existingClaim if you want to re-use an existing Open WebUI PVC instead of creating a new one
existingClaim: ""
# -- Subdirectory of Open WebUI PVC to mount. Useful if root directory is not empty.
subPath: ""
# -- If using multiple replicas, you must update accessModes to ReadWriteMany
accessModes:
- ReadWriteOnce
@@ -68,6 +187,9 @@ tolerations: []
# -- Affinity for pod assignment
affinity: {}
# -- Topology Spread Constraints for pod assignment
topologySpreadConstraints: []
# -- Service values to expose Open WebUI pods to cluster
service:
type: ClusterIP
@@ -81,7 +203,7 @@ service:
# -- OpenAI base API URL to use. Defaults to the Pipelines service endpoint when Pipelines are enabled, and "https://api.openai.com/v1" if Pipelines are not enabled and this value is blank
openaiBaseApiUrl: ""
# -- Additional environments variables on the output Deployment definition. Most up-to-date environment variables can be found here: https://docs.openwebui.com/getting-started/env-configuration/
# -- Env vars added to the Open WebUI deployment. Most up-to-date environment variables can be found here: https://docs.openwebui.com/getting-started/env-configuration/
extraEnvVars:
# -- Default API key value for Pipelines. Should be updated in a production deployment, or be changed to the required API key if not using Pipelines
- name: OPENAI_API_KEY
@@ -97,3 +219,58 @@ extraEnvVars:
# key: api-key
# - name: OLLAMA_DEBUG
# value: "1"
# -- Configure container volume mounts
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/>
volumeMounts:
initContainer: []
# - name: ""
# mountPath: ""
container: []
# - name: ""
# mountPath: ""
# -- Configure pod volumes
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/configure-volume-storage/>
volumes: []
# - name: ""
# configMap:
# name: ""
# - name: ""
# emptyDir: {}
# -- Configure pod security context
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-containe>
podSecurityContext:
{}
# fsGroupChangePolicy: Always
# sysctls: []
# supplementalGroups: []
# fsGroup: 1001
# -- Configure container security context
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-containe>
containerSecurityContext:
{}
# runAsUser: 1001
# runAsGroup: 1001
# runAsNonRoot: true
# privileged: false
# allowPrivilegeEscalation: false
# readOnlyRootFilesystem: false
# capabilities:
# drop:
# - ALL
# seccompProfile:
# type: "RuntimeDefault"
# -- Extra resources to deploy with Open WebUI
extraResources:
[]
# - apiVersion: v1
# kind: ConfigMap
# metadata:
# name: example-configmap
# data:
# example-key: example-value

View File

@@ -1,6 +1,6 @@
apiVersion: v2
name: pipelines
version: 0.0.3
version: 0.1.0
appVersion: "alpha"
home: https://github.com/open-webui/pipelines

View File

@@ -1,6 +1,6 @@
# pipelines
![Version: 0.0.2](https://img.shields.io/badge/Version-0.0.2-informational?style=flat-square) ![AppVersion: alpha](https://img.shields.io/badge/AppVersion-alpha-informational?style=flat-square)
![Version: 0.0.6](https://img.shields.io/badge/Version-0.0.6-informational?style=flat-square) ![AppVersion: alpha](https://img.shields.io/badge/AppVersion-alpha-informational?style=flat-square)
Pipelines: UI-Agnostic OpenAI API Plugin Framework
@@ -35,9 +35,11 @@ helm upgrade --install open-webui open-webui/pipelines
| clusterDomain | string | `"cluster.local"` | Value of cluster domain |
| extraEnvVars | list | `[{"name":"PIPELINES_URLS","value":"https://github.com/open-webui/pipelines/blob/main/examples/filters/detoxify_filter_pipeline.py"}]` | Additional environments variables on the output Deployment definition. These are used to pull initial Pipeline files, and help configure Pipelines with required values (e.g. Langfuse API keys) |
| extraEnvVars[0] | object | `{"name":"PIPELINES_URLS","value":"https://github.com/open-webui/pipelines/blob/main/examples/filters/detoxify_filter_pipeline.py"}` | Example pipeline to pull and load on deployment startup, see current pipelines here: https://github.com/open-webui/pipelines/blob/main/examples |
| extraResources | list | `[]` | Extra resources to deploy with Open WebUI Pipelines |
| image.pullPolicy | string | `"Always"` | |
| image.repository | string | `"ghcr.io/open-webui/pipelines"` | |
| image.tag | string | `"main"` | |
| imagePullSecrets | list | `[]` | Configure imagePullSecrets to use private registry ref: <https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry> |
| ingress.annotations | object | `{}` | Use appropriate annotations for your Ingress controller, e.g., for NGINX: nginx.ingress.kubernetes.io/rewrite-target: / |
| ingress.class | string | `""` | |
| ingress.enabled | bool | `true` | |
@@ -45,6 +47,7 @@ helm upgrade --install open-webui open-webui/pipelines
| ingress.host | string | `""` | |
| ingress.tls | bool | `false` | |
| nameOverride | string | `""` | |
| namespaceOverride | string | `""` | |
| nodeSelector | object | `{}` | Node labels for pod assignment. |
| persistence.accessModes | list | `["ReadWriteOnce"]` | If using multiple replicas, you must update accessModes to ReadWriteMany |
| persistence.annotations | object | `{}` | |
@@ -54,6 +57,7 @@ helm upgrade --install open-webui open-webui/pipelines
| persistence.size | string | `"2Gi"` | |
| persistence.storageClass | string | `""` | |
| podAnnotations | object | `{}` | |
| podLabels | object | `{}` | |
| replicaCount | int | `1` | |
| resources | object | `{}` | |
| service.annotations | object | `{}` | |
@@ -63,6 +67,8 @@ helm upgrade --install open-webui open-webui/pipelines
| service.nodePort | string | `""` | |
| service.port | int | `9099` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.automountServiceAccountToken | bool | `false` | |
| serviceAccount.enable | bool | `true` | |
| tolerations | list | `[]` | Tolerations for pod assignment |
----------------------------------------------

View File

@@ -1,3 +1,14 @@
{{/*
Allow the release namespace to be overridden for multi-namespace deployments in combined charts
*/}}
{{- define "pipelines.namespace" -}}
{{- if .Values.namespaceOverride -}}
{{- .Values.namespaceOverride -}}
{{- else -}}
{{- .Release.Namespace -}}
{{- end -}}
{{- end -}}
{{/*
Set the name of the Pipelines resources
*/}}

View File

@@ -2,6 +2,7 @@ apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "pipelines.name" . }}
namespace: {{ include "pipelines.namespace" . }}
labels:
{{- include "pipelines.labels" . | nindent 4 }}
{{- with .Values.annotations }}
@@ -17,13 +18,23 @@ spec:
metadata:
labels:
{{- include "pipelines.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
enableServiceLinks: false
automountServiceAccountToken: false
automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken | default false }}
{{- if .Values.serviceAccount.enable }}
serviceAccountName: {{ .Values.serviceAccount.name | default (include "pipelines.name" .) }}
{{- end }}
containers:
- name: {{ .Chart.Name }}
{{- with .Values.image }}
@@ -38,7 +49,7 @@ spec:
{{- end }}
volumeMounts:
- name: data
mountPath: /app/backend/data
mountPath: /app/pipelines
env:
{{- if .Values.extraEnvVars }}
{{- toYaml .Values.extraEnvVars | nindent 8 }}
@@ -68,4 +79,4 @@ spec:
- name: data
persistentVolumeClaim:
claimName: {{ include "pipelines.name" . }}
{{- end }}
{{- end }}

View File

@@ -0,0 +1,6 @@
{{- if .Values.extraResources }}
{{- range .Values.extraResources }}
---
{{ toYaml . | nindent 0 }}
{{- end }}
{{- end }}

View File

@@ -3,6 +3,7 @@ apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: {{ include "pipelines.name" . }}
namespace: {{ include "pipelines.namespace" . }}
labels:
{{- include "pipelines.selectorLabels" . | nindent 4 }}
{{- with .Values.persistence.annotations }}

View File

@@ -0,0 +1,13 @@
{{- if .Values.serviceAccount.enable }}
apiVersion: v1
kind: ServiceAccount
metadata:
name: {{ .Values.serviceAccount.name | default (include "pipelines.name" .) }}
namespace: {{ include "pipelines.namespace" . }}
labels:
{{- include "pipelines.labels" . | nindent 4 }}
{{- with .Values.serviceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- end }}

View File

@@ -2,6 +2,7 @@ apiVersion: v1
kind: Service
metadata:
name: {{ include "pipelines.name" . }}
namespace: {{ include "pipelines.namespace" . }}
labels:
{{- include "pipelines.labels" . | nindent 4 }}
{{- with .Values.service.labels }}

View File

@@ -1,15 +1,24 @@
nameOverride: ""
namespaceOverride: ""
# -- Value of cluster domain
clusterDomain: cluster.local
annotations: {}
podAnnotations: {}
podLabels: {}
replicaCount: 1
image:
repository: ghcr.io/open-webui/pipelines
tag: main
pullPolicy: Always
# -- Configure imagePullSecrets to use private registry
# ref: <https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry>
imagePullSecrets: []
# imagePullSecrets:
# - name: myRegistryKeySecretName
resources: {}
ingress:
enabled: true
@@ -31,6 +40,10 @@ persistence:
selector: {}
annotations: {}
serviceAccount:
enable: true
automountServiceAccountToken: false
# -- Node labels for pod assignment.
nodeSelector: {}
@@ -54,6 +67,11 @@ extraEnvVars:
# -- Example pipeline to pull and load on deployment startup, see current pipelines here: https://github.com/open-webui/pipelines/blob/main/examples
- name: PIPELINES_URLS
value: "https://github.com/open-webui/pipelines/blob/main/examples/filters/detoxify_filter_pipeline.py"
# - name: PIPELINES_API_KEY
# valueFrom:
# secretKeyRef:
# name: pipelines-keys
# key: pipelines-api-key
# -- Langfuse example, including values used in Langfuse filter to connect
# - name: PIPELINES_URLS
# value: "https://github.com/open-webui/pipelines/blob/main/examples/filters/langfuse_filter_pipeline.py"
@@ -69,3 +87,13 @@ extraEnvVars:
# key: secret-key
# - name: LANGFUSE_HOST
# value: https://us.cloud.langfuse.com
# -- Extra resources to deploy with Open WebUI Pipelines
extraResources:
[]
# - apiVersion: v1
# kind: ConfigMap
# metadata:
# name: example-configmap
# data:
# example-key: example-value

7
package.json Normal file
View File

@@ -0,0 +1,7 @@
{
"devDependencies": {
"@semantic-release/github": "^9.0.3",
"semantic-release": "^21.0.5",
"semantic-release-helm": "^2.2.0"
}
}