Cyril Jouve and GitHub
4e9e529cfd
fix(webhook): remove dead diff code block that panics on nil namespace metadata ( #1976 )
...
In userMetadataHandler.OnUpdate the per-request labels/annotations diff is computed twice. The inline block at the top clones oldNs metadata and diffs it against newNs, but its results are immediately shadowed by the `labels, annotations, err := userMetadataForValidation(...)` declaration in the `tnt.Spec.NamespaceOptions \!= nil` branch, which recomputes the same diff (via metadataForValidation) and is the only version actually passed to validateUserMetadata. The inline block is therefore dead code.
It is also a panic: `maps.Clone(oldNs.GetAnnotations())` returns nil for a namespace with no annotations, and the following `annotations[key] = value` then panics with "assignment to entry in nil map" (same with labels).
This happens when using features like NamespaceOptions.AdditionalMetadataList on a namespace that had none.
The dead block and panic was introduced in a6927c5 (#1947 ).
Signed-off-by: Cyril Jouve <jv.cyril@gmail.com >
2026-06-22 11:29:23 +02:00
Oliver Bähler and GitHub
0b11582e4a
feat: add scheduler enforcement rule ( #1971 )
...
* fix(controller): decode old object for delete requests
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: modernize golang
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: modernize golang
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: modernize golang
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* fix: preserve ca-bundles injected from external providers
Signed-off-by: Oliver Baehler <oliver@sudo-i.net >
* feat: abstract ruling
Signed-off-by: Oliver Baehler <oliver@sudo-i.net >
* feat: migrate events api
* feat: migrate events api
* feat: migrate events api
* feat: migrate events api
* feat: migrate events api
* feat: migrate events api
* feat: migrate events api
* feat: migrate events api
* feat: migrate events api
* feat: migrate events api
---------
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
Signed-off-by: Oliver Baehler <oliver@sudo-i.net >
2026-06-19 14:34:16 +02:00
Marc Brugger and GitHub
f5d2d7d67b
chore: allow args in deny and allow helper functions ( #1963 )
...
Signed-off-by: bakito <github@bakito.ch >
2026-06-10 19:09:06 +02:00
Oliver Bähler and GitHub
a6927c5777
fix: allow managed metadata defined per tenant ( #1947 )
...
* fix: allow managed metadata defined per tenant
Signed-off-by: Oliver Baehler <oliver@sudo-i.net >
* fix: allow managed metadata defined per tenant
Signed-off-by: Oliver Baehler <oliver@sudo-i.net >
---------
Signed-off-by: Oliver Baehler <oliver@sudo-i.net >
2026-06-03 17:29:18 +02:00
Oliver Bähler and GitHub
b783d03f44
fix: avoid rejection when users are classified as administrators ( #1941 )
...
* fix(controller): decode old object for delete requests
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: modernize golang
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: modernize golang
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: modernize golang
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* fix: avoid rejection when users are classified as administrators
Signed-off-by: Oliver Baehler <oliver@sudo-i.net >
---------
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
Signed-off-by: Oliver Baehler <oliver@sudo-i.net >
2026-06-02 14:17:27 +02:00
cc4fb45d70
feat: upstream enterprise preview ( #1841 )
...
feat: upstream enterprise preview
---------
Signed-off-by: Oliver Baehler <oliver@sudo-i.net >
Co-authored-by: CorentinPtrl <pitrel.corentin@gmail.com >
2026-05-28 00:58:58 +02:00
Oliver Bähler and GitHub
0abc77b56a
feat: diverse performance improvements ( #1861 )
...
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
2026-02-03 22:05:00 +01:00
Oliver Bähler and GitHub
a6b830b1af
feat: add ruleset api( #1844 )
...
* fix(controller): decode old object for delete requests
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: modernize golang
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: modernize golang
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: modernize golang
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* fix(config): remove usergroups default
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* fix(config): remove usergroups default
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* sec(ghsa-2ww6-hf35-mfjm): intercept namespace subresource
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* feat(api): add rulestatus api
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: conflicts
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: conflicts
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: conflicts
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: conflicts
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: conflicts
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: conflicts
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: conflicts
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: conflicts
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: conflicts
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: conflicts
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: conflicts
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* feat(api): add rulestatus api
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* feat(api): add rulestatus api
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* feat(api): add rulestatus api
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* feat(api): add rulestatus api
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* feat(api): add rulestatus api
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* feat(api): add rulestatus api
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
---------
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
2026-01-27 14:28:48 +01:00
eb8d2b6076
chore(deps): update dependency golangci/golangci-lint to v2.8.0 ( #1823 )
...
* chore(deps): update dependency golangci/golangci-lint to v2.8.0
* chore(deps): update dependency golangci/golangci-lint to v2.8.0
Signed-off-by: Hristo Hristov <me@hhristov.info >
* chore(deps): update dependency golangci/golangci-lint to v2.8.0
Signed-off-by: Hristo Hristov <me@hhristov.info >
* chore(deps): update dependency golangci/golangci-lint to v2.8.0
Signed-off-by: Hristo Hristov <me@hhristov.info >
---------
Signed-off-by: Hristo Hristov <me@hhristov.info >
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Hristo Hristov <me@hhristov.info >
2026-01-08 15:43:32 +02:00
Oliver Bähler and GitHub
c06f54a3a3
fix(controller): decode old object for delete requests ( #1787 )
...
* fix(controller): decode old object for delete requests
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: modernize golang
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: modernize golang
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: modernize golang
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
---------
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
2025-12-10 18:34:42 +01:00
Oliver Bähler and GitHub
d812a0c722
feat(tenant): add dedicated tenantowner crd ( #1764 )
...
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
2025-12-02 15:21:46 +01:00
Oliver Bähler and GitHub
a270d6797a
fix(admission): consistently inspect ownerreferences for namespace validations ( #1758 )
...
* fix(admission): consistently inspect ownerreferences for namespace validations
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore(ci): add internal changes as e2e trigger
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
---------
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
2025-11-27 14:46:34 +01:00
Oliver Bähler and GitHub
6e8405d5f0
feat: refactor core webhooks ( #1756 )
...
* feat(webhook): add watchdog webhook to core
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* fix(controller): ensure managed metadata for namespaces on update
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore(controller): refactor core webhooks to generics
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: fix helm plugin installation
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore: rename webhook to tenant-label
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
---------
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
2025-11-26 15:27:41 +01:00
Oliver Bähler and GitHub
581a8fe60e
feat(controller): administration persona ( #1739 )
...
* chore(refactor): project and api refactoring
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
* chore(refactor): project and api refactoring
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
---------
Signed-off-by: Oliver Bähler <oliverbaehler@hotmail.com >
2025-11-18 16:27:16 +01:00