refactor(helm): identify the optional Slack worker clearly

This commit is contained in:
Tin 2026-10-26 13:23:27 -07:00
parent f97ea56af2
commit e368c404e7
3 changed files with 13 additions and 4 deletions

View file

@ -260,8 +260,10 @@ itself.
Follow the [Lens Helm connection guide](https://github.com/BerriAI/lens/blob/main/helm/lens/README.md#connect-a-gateway) for complete values, verification, GitOps credential requirements and existing-data migration. Source-chart installation requires a built Lens image until the first signed Lens release is published
### LiteAdmin Slack worker
### Slack worker
`/admin/mcp` is served inside LiteLLM and does not require `liteadmin.enabled`. That option deploys the separate Slack worker. Set `liteadmin.image.repository` to the worker repository and `liteadmin.image.tag` to an independently published version. A worker tag is required when the worker is enabled. `liteadmin.image.pullPolicy` defaults to `IfNotPresent`
The `slack-worker.yaml` template runs the `slack-worker` container and labels its resources with `app.kubernetes.io/component: slack-worker`. Existing `liteadmin.*` settings, resource names, selectors, and persistent volume names remain stable for upgrades. Use `kubectl get deployments,pods,services,pvc -l app.kubernetes.io/component=slack-worker` to find the worker resources
For an existing Slack deployment, publish or build the worker image before upgrading this chart. Preserve `liteadmin.existingSecret`, the encryption key, and the persistent volume. The chart starts the worker with `litellm-admin-agent --web` and `CONNECTION_AUTH_MODE=native`. See the [worker deployment guide](https://github.com/BerriAI/litellm-admin-agent/blob/main/docs/compatibility.md#native-enterprise-deployment)

View file

@ -5,6 +5,8 @@ apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ $name }}
labels:
app.kubernetes.io/component: slack-worker
spec:
replicas: 1
strategy:
@ -18,6 +20,7 @@ spec:
labels:
app.kubernetes.io/name: {{ $name }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/component: slack-worker
spec:
automountServiceAccountToken: false
terminationGracePeriodSeconds: 75
@ -31,7 +34,7 @@ spec:
fsGroup: 10001
runAsNonRoot: true
containers:
- name: liteadmin
- name: slack-worker
image: "{{ required "liteadmin.image.repository is required" .Values.liteadmin.image.repository }}:{{ required "liteadmin.image.tag is required when liteadmin is enabled" .Values.liteadmin.image.tag }}"
imagePullPolicy: {{ .Values.liteadmin.image.pullPolicy }}
command: ["litellm-admin-agent", "--web"]
@ -88,6 +91,8 @@ apiVersion: v1
kind: Service
metadata:
name: {{ $name }}
labels:
app.kubernetes.io/component: slack-worker
spec:
type: ClusterIP
selector:
@ -101,6 +106,8 @@ apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: {{ $name }}
labels:
app.kubernetes.io/component: slack-worker
spec:
accessModes: [ReadWriteOnce]
{{- with .Values.liteadmin.storageClassName }}

View file

@ -1,6 +1,6 @@
suite: LiteAdmin worker image
suite: Slack worker image
templates:
- liteadmin.yaml
- slack-worker.yaml
tests:
- it: does not deploy a worker by default
asserts: