Одна задача = один MR: поднимается ТОЛЬКО оператор ToolHive со своими CRD. MCP-серверы (searxng-mcp и далее) поедут отдельными MR вместе с теми приложениями, которым служат.
Что сделано
kubernetes/apps/ai/namespace.yaml — ns ai с kustomize.toolkit.fluxcd.io/prune: disabled (в этом ns будет жить агент и его PVC, случайный prune не должен его сносить).
kubernetes/apps/ai/toolhive/ks.yaml — две Kustomization: toolhive-operator-crds и toolhive-operator (вторая с dependsOn на первую). CRD ставятся отдельным релизом до оператора — так это делают все 34 home-ops репозитория, и это же структурно снимает нашу грабельку «CR раньше CRD».
kubernetes/apps/ai/toolhive/{app,crds}/ — по kustomization.yaml, ocirepository.yaml, helmrelease.yaml.
Версии и форма values сверены с рабочим репозиторием (drag0n141/home-ops, kubernetes/apps/ai/toolhive). Тег 0.49.0 — действующий: запрос списка тегов у ghcr отдаёт постранично и в первую страницу не попадает.
Проверено
kubectl kustomize kubernetes/apps/ai собирается (Namespace + 2 Kustomization + Secret из sops-компонента).
Компонент sops подключается так же, как в ns security.
Одна задача = один MR: поднимается ТОЛЬКО оператор ToolHive со своими CRD. MCP-серверы (searxng-mcp и далее) поедут отдельными MR вместе с теми приложениями, которым служат.
**Что сделано**
- `kubernetes/apps/ai/namespace.yaml` — ns `ai` с `kustomize.toolkit.fluxcd.io/prune: disabled` (в этом ns будет жить агент и его PVC, случайный prune не должен его сносить).
- `kubernetes/apps/ai/kustomization.yaml` — ns-каталог по образцу `security`: `namespace: ai`, компонент `sops`, ресурсы.
- `kubernetes/apps/ai/toolhive/ks.yaml` — две Kustomization: `toolhive-operator-crds` и `toolhive-operator` (вторая с `dependsOn` на первую). CRD ставятся отдельным релизом до оператора — так это делают все 34 home-ops репозитория, и это же структурно снимает нашу грабельку «CR раньше CRD».
- `kubernetes/apps/ai/toolhive/{app,crds}/` — по `kustomization.yaml`, `ocirepository.yaml`, `helmrelease.yaml`.
**Источники**
- `oci://ghcr.io/stacklok/toolhive/toolhive-operator` тег `0.49.0`
- `oci://ghcr.io/stacklok/toolhive/toolhive-operator-crds` тег `0.49.0`
- Версии и форма values сверены с рабочим репозиторием (drag0n141/home-ops, `kubernetes/apps/ai/toolhive`). Тег `0.49.0` — действующий: запрос списка тегов у ghcr отдаёт постранично и в первую страницу не попадает.
**Проверено**
- `kubectl kustomize kubernetes/apps/ai` собирается (Namespace + 2 Kustomization + Secret из sops-компонента).
- Компонент `sops` подключается так же, как в ns `security`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Одна задача = один MR: поднимается ТОЛЬКО оператор ToolHive со своими CRD. MCP-серверы (searxng-mcp и далее) поедут отдельными MR вместе с теми приложениями, которым служат.
Что сделано
kubernetes/apps/ai/namespace.yaml— nsaiсkustomize.toolkit.fluxcd.io/prune: disabled(в этом ns будет жить агент и его PVC, случайный prune не должен его сносить).kubernetes/apps/ai/kustomization.yaml— ns-каталог по образцуsecurity:namespace: ai, компонентsops, ресурсы.kubernetes/apps/ai/toolhive/ks.yaml— две Kustomization:toolhive-operator-crdsиtoolhive-operator(вторая сdependsOnна первую). CRD ставятся отдельным релизом до оператора — так это делают все 34 home-ops репозитория, и это же структурно снимает нашу грабельку «CR раньше CRD».kubernetes/apps/ai/toolhive/{app,crds}/— поkustomization.yaml,ocirepository.yaml,helmrelease.yaml.Источники
oci://ghcr.io/stacklok/toolhive/toolhive-operatorтег0.49.0oci://ghcr.io/stacklok/toolhive/toolhive-operator-crdsтег0.49.0kubernetes/apps/ai/toolhive). Тег0.49.0— действующий: запрос списка тегов у ghcr отдаёт постранично и в первую страницу не попадает.Проверено
kubectl kustomize kubernetes/apps/aiсобирается (Namespace + 2 Kustomization + Secret из sops-компонента).sopsподключается так же, как в nssecurity.