155 Commits
Author SHA1 Message Date
zeekayandHanzo Dev 472238ddb0 cd: the API is /v1, not /api/v1 — no /api prefix anywhere
House rule: /v1/ is the API prefix, everywhere, and /api/ is never added on
top of it. The api.* subdomain names the API; a path prefix restating it is
noise. This applies it to the whole route surface:

  /api/v1/*      -> /v1/*        106 proto annotations, 109 gateway patterns
  /api/version   -> /v1/version
  /api/badge     -> /v1/badge
  /api/webhook   -> /v1/webhook  (server + applicationset controller)
  /api/dex/*     -> /v1/dex/*    (constants; dex is built, not deployed)

The grpc-gateway .pb.gw.go files are generated, and the plugin toolchain is
not on this machine, so they were rewritten by a script that applies exactly
the transform codegen would: for /api/v1 paths, drop the leading "api"
literal-push opcode pair and decrement every LitPush(2,N)/Capture(5,N) pool
index; for /api/version, rename the segment. ConcatN(4,N) operands are
counts, not pool indexes, and are untouched. The .proto annotations moved in
the same commit, so the next real codegen run is a no-op against these files.

MustPattern panics at package init on a malformed pattern, so every rewritten
pattern is validated by any import of pkg/apiclient — those tests pass.

Also moved: assets/swagger.json (82 paths), the UI's two roots (apiRoot()
'/v1', version-service '/v1/version') and its two relative composers (app
logs download, badge panel), the five audit-pattern regexes in server.go, and
the tests that asserted the old paths. terminal_test's request URL claimed
/api/v1/terminal, a route that never existed — the handler is mounted at
/terminal; the fixture now says so.

NOT touched, deliberately: /api/v3 in GitHub Enterprise base-url examples
(GitHub's URL shape, not ours), util/vendored/kubeclientmetrics (parses the
KUBERNETES API server's /api/v1 paths), and util/http's cookie-path fixture
(arbitrary string exercising slash normalization).

go build ./... clean. Pre-existing failures in badge/session/webhook/account
tests reproduce identically on the parent commit (rebrand fallout — badge
colors, cookie name length, dex issuer) and are not made worse here.

External consumers checked: universe has zero references to cd.hanzo.ai/api;
the CLI speaks gRPC, not the REST gateway; UI and server ship in one image so
they move together.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-29 12:01:34 -07:00
zeekayandHanzo Dev 1ab6e799c1 cd: the module is github.com/hanzoai/cd, where it is actually hosted
go.mod still declared `module github.com/hanzoai/deploy` after the repo was
renamed. A Go module path is not cosmetic — it is the resolvable location. So
`go get github.com/hanzoai/cd` could not work, and anything importing this
module had to spell a name that no longer exists at that address. The build log
of v3.6.0 is where it surfaced: the compiler was still emitting
github.com/hanzoai/deploy/cmd/cd/commands.

3541 import paths across 690 .go, 19 .proto, 4 .yaml, 3 .sh, 2 .mod, Procfile
and Makefile. Plus the 62 ghcr.io/hanzoai/deploy image references, moved to
ghcr.io/hanzoai/cd to match hanzo.yml's build target — a distinct string from
the module path, replaced separately so neither could clobber the other.

go mod tidy clean, CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build ./... clean.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-28 21:16:24 -07:00
zeekayandHanzo Dev 446e343a3d cd: annotations are cd.hanzo.ai, API group is apps.hanzo.ai
Two corrections on top of the naming pass, both found by checking the live
cluster rather than the source.

The rename had silently changed the user-facing annotation key from
argocd.argoproj.io/sync-wave to cd.argoproj.io/sync-wave — 63 live
Applications carry the old key, so deploying that would have ignored every
sync-wave and broken fleet deploy ordering. The key is now cd.hanzo.ai/*,
and universe 575650286 moves the ApplicationSet template that stamps it, so
the controller regenerates all 63 consistently.

The API group in code said argoproj.io/v1alpha1 in 157 places while the
cluster has served apps.hanzo.ai/v1alpha1 since 2026-07-23 (the CRDs are
applications.apps.hanzo.ai). Code now matches what is actually served.

The legacy applications.argoproj.io/app-name label had ZERO live users, so it
went with the rest. foo.argoproj.io test fixtures became foo.example.com —
arbitrary test domains should not carry a vendor name.

go build ./... exit 0.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-28 16:32:14 -07:00
zeekayandHanzo Dev b726a55cab cd: internalize the five argoproj/pkg utilities, drop the dependency
github.com/argoproj/pkg/v2 was one of two live argoproj dependencies. It is
11 files and 176K total, and we used five packages from it: grpc/http,
kubeclientmetrics, stats, sync, time.

Vendored into util/vendored/ and the dependency dropped from go.mod, so the
gRPC surface (2 references, in grpc-http/forwarders.go) is now ours to remove
on our own schedule rather than upstream's. Kubernetes client-go pulls gRPC
transitively regardless, so this is isolation — a realistic first step — not
a claim that gRPC is gone.

Internalized rather than forked to a shared repo because the only other
consumer, hanzo/gitops, has zero live deployments and zero dependents. A
second repo would be a second thing to version for one caller.

NOTICE carries the Apache-2.0 attribution. go build ./... exit 0.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-28 16:08:34 -07:00
zeekayandHanzo Dev bc6d960ad4 cd: the credential store interface is DB, not ArgoDB
The last Argo in the core type surface. It is also the seam that matters for
going KMS-native: repo- and cluster- credentials are read through ONE
interface with ONE constructor (NewDB), so a KMS-backed store is a second
implementation, not a rewrite of the 26 files that touch Secrets.

go build ./... exit 0.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-28 16:04:24 -07:00
zeekayandHanzo Dev 84ee9fa0ce cd: kill the argo naming — binaries, packages, identifiers
Every command is cd-*: cd, cd-server, cd-repo-server,
cd-application-controller, cd-applicationset-controller, cd-cmp-server,
cd-commit-server, cd-dex, cd-git-ask-pass, cd-k8s-auth, cd-notification.
util/argo is util/cd; util/notification/argocd is util/notification/cd.

Preserved deliberately: github.com/argoproj/argocd-example-apps is an
EXTERNAL repo used as an e2e fixture, and notifications-engine + pkg/v2 are
real dependencies. Renaming a URL we do not own would break the tests.

Two bugs I made and caught, both from a careless sed:
- s/argo/cd/g turned 'argocd' into 'cdcd' in two directory names
- renaming the package declaration left every call site saying argo.X

go build ./... exit 0.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-28 16:00:25 -07:00
zeekayandHanzo Dev 14d5f97186 rebrand: white-label served surfaces Argo CD -> Hanzo CD
Sweep residual upstream brand from Hanzo-served surfaces (UI, CLI, API docs,
notifications). Imports, identifiers, env vars, and k8s object/command names
are left intact.

- UI: HelpIcon tooltips, help-page + cluster-management doc links ->
  docs.hanzo.ai, login + sidebar logos -> hanzo-logo-white.svg (alt text +
  broken Argo.svg / logo.png refs), rendered "Argo CD" -> "Hanzo CD"
- CLI (cmd/, server/): Short/Long/Example/flag help + "ArgoCD API Server"
  startup banner -> Hanzo CD
- API: .proto service-doc comments + generated assets/swagger.json -> Hanzo CD
- notification controller comment

Preserved (imports / identifiers / contracts): module github.com/hanzoai/deploy,
ARGOCD_* env vars, argocd-* binary/command names, ArgoCD* Go identifiers,
argoproj.io/argocd label values, argo-* CSS classes, k8s object names.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-22 17:56:24 -07:00
15d87b3e72 refactor(cd): hard-fork - rename CRD API group argoproj.io -> deploy.hanzo.ai (#1)
* feat(api): hard-fork CRD API group argoproj.io -> deploy.hanzo.ai

Hanzo CD hard-fork, phase 1.1. Single source of truth is
pkg/apis/application/register.go's Group constant (Application/AppProject/
ApplicationSet all derive their FullName from it); every other Go call-site
that hardcoded the literal group string is updated to match: the 3 generated
informer GVRs, the app-of-apps nested-Application detector in types.go, the
resource-tree Application-kind cache populator, the 3 NotFound error
constructors in server/application, and the applicationset-controller's
leader-election Lease name/ID (kept in lockstep across Go source + RBAC
resourceNames, or leader election would get RBAC-denied on startup).

CRD YAMLs (application/appproject/applicationset) and every RBAC apiGroups
rule that actually governs our 3 CRDs are repointed to deploy.hanzo.ai, across
both manifests/base/* (namespaced Roles) and manifests/cluster-rbac/* (cluster
scope). Two adjacent things that share the "argoproj.io" string but are NOT
ours are deliberately left untouched: gitops-engine's health-check dispatch
for Argo Workflows' `Workflow` kind, and argocd-server-clusterrole's second
apiGroups block granting read on Argo Workflows' `workflows` resource — both
belong to a separate, unrelated Argoproj-family project we are not forking.

Also untouched, per explicit scope: annotation/label keys (argocd.argoproj.io/*)
and finalizers (*.argoproj.io) that track already-applied live resources, and
argocd-cm.yaml's resource.customizations.ignoreResourceUpdates keys (a narrow
app-of-apps diffing nicety, not build- or RBAC-relevant).

CGO_ENABLED=0 go build ./... verified green.

* ci: wire canonical hanzo.yml + cicd.yml (Hanzo CD image build)

Phase 1.3. Follows the same one-way pattern every hanzo/lux/zoo repo uses:
hanzo.yml declares the image (root Dockerfile -> ghcr.io/hanzoai/deploy) and a
fast go-build sanity test (the multi-stage Dockerfile build is the slow, real
gate); cicd.yml is the ~10-line trigger shim importing hanzoai/ci's reusable
build workflow on the arc pool, secrets from KMS only.

No `deploy:` block yet, matching the hanzoai/cms build-only-first-cutover
pattern: this repo's own live hanzo-cd namespace runs the whole Hanzo fleet's
GitOps, so the prod image/CRD swap is a deliberate separate action (see the
[HELD] universe PR), never an automatic rollout on merge. Every PR/push still
builds and pushes an immutable ghcr.io/hanzoai/deploy:sha-<7>-amd64 image.

* feat(ui): rebrand Argo CD -> Hanzo CD (title, favicon, logo, sidebar)

Phase 1.2. User-facing "Argo CD"/"ArgoCD" text replaced with "Hanzo CD"
across the login page, help modal, settings screens, version-info panel,
sync-options warning, fullscreen-logs title, app.tsx page titles, and
index.html's <title>/noscript text (dropped the now-wrong upstream CLI
doc link rather than invent a hanzo.ai URL that doesn't exist).

Logo/favicon assets replaced with the canonical Hanzo mark (never
hand-drawn, copied from ~/work/hanzo/logo/dist): the two real usages of
Argo's logo collapse onto one Hanzo glyph (mono + white variants) at the
same 5 call sites (login icon + footer, login.scss $logoPath/
$logoNegativePath, sidebar text-logo), preserving the existing CSS
invert() filters so both the light login panel and dark sidebar still
render correctly. Old argologo.svg/argo_o.svg/argo.png deleted (no
longer referenced). favicon-{16x16,32x32}.png added at
ui/src/assets/favicon/ (index.html's links to that path were previously
dead - the directory didn't exist in this checkout). package.json name
argo-cd-ui -> hanzo-cd-ui.

Left alone, deliberately: the two Kubernetes resource-kind icon sets
under ui/src/assets/images/resources/ (unrelated to branding), and
upstream doc/project links (argoproj.io, argo-cd.readthedocs.io) since
we have no equivalent hanzo.ai docs to point to yet - except the login
footer logo's outbound link, which now points to hanzo.ai instead of
argoproj.io (a Hanzo-branded mark linking to the upstream project it
was forked from read as an obvious leftover).

* feat(module): rename Go module github.com/argoproj/argo-cd/v3 -> github.com/hanzoai/deploy

Phase 2. No version suffix on the new path (org policy: never publish our
own Go modules above v1.x.x / with a v2+ suffix) — this fork starts a fresh
v0/v1 module identity rather than carrying the v3 the upstream fork point
had reached.

Mechanical, symmetric rewrite: 704 .go files (import statements only; two
disjoint substitutions applied specific-first so the nested gitops-engine
module path never double-matches), plus go.mod (module line, the
gitops-engine require+replace pair, version reset to v0.0.0-... since a
suffix-less path can't carry a v3 semver), gitops-engine/go.mod, Makefile
(ldflags PACKAGE + 2 TEST_MODULE filters), .golangci.yaml, .goreleaser.yaml,
.mockery.yaml (+ gitops-engine's), Procfile, the codegen/proto generation
scripts (hack/generate-proto.sh, update-codegen.sh, update-openapi.sh), and
20 .proto files' go_package options. Also one OpenTelemetry tracer name
string in gitops-engine/pkg/sync/sync_context.go (a cosmestic label, not an
import, but worth keeping consistent).

CGO_ENABLED=0 go build ./... verified green for both the root module and
the nested gitops-engine module; go vet clean on both; go mod tidy run
(network available) to reconcile go.sum, dependency set unchanged.

Left alone, deliberately: doc-only mentions (docs/snyk/*.html scan reports,
gitops-engine/README.md), a comment-only reference in
.github/workflows/release.yaml, and one Renovate bot config line — none are
build- or codegen-load-bearing. Also left alone: comments citing upstream
GitHub issue URLs (github.com/argoproj/argo-cd/issues/NNNNN) and a handful
of test fixtures using "https://github.com/argoproj/argo-cd.git" as a
representative example repo URL — both are accurate historical/test-data
references, not stale self-references.

---------

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-19 11:27:06 -07:00
rumsteadandGitHub 32da51eb6b ci(gitops-engine): support tagged releases for gitops-engine (#27740)
Signed-off-by: rumstead <[email protected]>
2026-07-08 15:26:50 +00:00
Lohit KolluriandGitHub 679cee550c test: Add t.Parallel() to util/app tests (#28177)
Signed-off-by: Lohit Kolluri <[email protected]>
2026-06-10 16:37:18 -04:00
chansukeandGitHub e741a67ef3 feat(server): use typed Argo CD EventList for event-listing APIs (#25767) (#26322)
Signed-off-by: chansuke <[email protected]>
Signed-off-by: chansuke <[email protected]>
2026-05-28 09:29:21 +03:00
Papapetrou PatroklosandGitHub c3bc2016d0 fix: create events with argocd namespace (#26667)
Signed-off-by: Patroklos Papapetrou <[email protected]>
2026-03-04 15:51:48 +02:00
Leonardo Luz AlmeidaandGitHub 3795f840c3 chore: fix gitops-engine mod name so it can be referenced by external repos (#26407)
Signed-off-by: Leonardo Luz Almeida <[email protected]>
2026-02-12 09:29:40 -05:00
Matthieu MORELandGitHub 1a416658fe chore(server): Fix modernize linter (#26324)
Signed-off-by: Matthieu MOREL <[email protected]>
2026-02-09 00:47:03 -10:00
83a66413fa feat: allow limiting clusterResourceWhitelist by resource name (#12208) (#24674)
Signed-off-by: Michael Crenshaw <[email protected]>
Co-authored-by: Alexandre Gaudreault <[email protected]>
2025-12-03 20:55:28 +00:00
OpenGuidouandGitHub bdfed21178 fix(project): Do not block project update when a cluster referenced in an App doesn't exist (#23659)
Signed-off-by: OpenGuidou <[email protected]>
2025-09-06 15:09:04 -04:00
eebb171ad7 fix(security): repository.GetDetailedProject exposes repo secrets (#24387)
Signed-off-by: Alexander Matyushentsev <[email protected]>
Signed-off-by: Michael Crenshaw <[email protected]>
Co-authored-by: Alexander Matyushentsev <[email protected]>
2025-09-04 10:59:58 -04:00
Michael CrenshawandGitHub 8e380c63d5 chore: enable lint for unused private fields (#23242)
Signed-off-by: Michael Crenshaw <[email protected]>
2025-06-05 07:47:55 -04:00
Michael CrenshawandGitHub 787e0dbb54 chore(deps): bump github.com/argoproj/pkg to v2.0.1 (#22516)
Signed-off-by: Michael Crenshaw <[email protected]>
2025-04-16 13:15:42 -07:00
sivchariandGitHub b97525c11e chore: upgrade Go to 1.24 (#22242)
Signed-off-by: sivchari <[email protected]>
2025-03-10 10:14:41 -04:00
893abf6730 fix(ui, rbac): project-roles (#21829)
Signed-off-by: wyttime04 <[email protected]>
Signed-off-by: Blake Pettersson <[email protected]>
Co-authored-by: wyttime04 <[email protected]>
2025-02-20 11:40:15 +01:00
Matthieu MORELandGitHub be13c7b8a8 chore: enable var-naming from revive (#21861)
Signed-off-by: Matthieu MOREL <[email protected]>
2025-02-18 11:02:38 -05:00
Matthieu MORELandGitHub eeba57b115 chore: enable nolintlint (#21559)
Signed-off-by: Matthieu MOREL <[email protected]>
2025-01-21 13:49:14 -05:00
Michael CrenshawandGitHub e0f3b47846 chore(refactor): remove app destination inferrence logic (#21189)
* refactor: remove app destination inferrence logic

Signed-off-by: Michael Crenshaw <[email protected]>

* simplify

Signed-off-by: Michael Crenshaw <[email protected]>

* more fixes

Signed-off-by: Michael Crenshaw <[email protected]>

* more fixes

Signed-off-by: Michael Crenshaw <[email protected]>

* codegen

Signed-off-by: Michael Crenshaw <[email protected]>

* fix mocks

Signed-off-by: Michael Crenshaw <[email protected]>

* simplify

Signed-off-by: Michael Crenshaw <[email protected]>

* clusters all the way down

Signed-off-by: Michael Crenshaw <[email protected]>

* simplify

Signed-off-by: Michael Crenshaw <[email protected]>

* test

Signed-off-by: Michael Crenshaw <[email protected]>

* lint

Signed-off-by: Michael Crenshaw <[email protected]>

* tidy

Signed-off-by: Michael Crenshaw <[email protected]>

* be less radical

Signed-off-by: Michael Crenshaw <[email protected]>

---------

Signed-off-by: Michael Crenshaw <[email protected]>
2025-01-13 13:15:42 -05:00
8334da36f2 Bump major version to 3 (#21410)
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: crenshaw-dev <[email protected]>
2025-01-10 16:14:00 -05:00
Matthieu MORELandGitHub a0d38d653a chore: enable early-return from revive (#21423)
Signed-off-by: Matthieu MOREL <[email protected]>
2025-01-08 15:26:02 -05:00
Matthieu MORELandGitHub eec6f8526a chore: enable unused-parameter from revive (#21365)
* chore: enable unused-parameter from revive

Signed-off-by: Matthieu MOREL <[email protected]>

* apply recommandations

Signed-off-by: Matthieu MOREL <[email protected]>

---------

Signed-off-by: Matthieu MOREL <[email protected]>
2025-01-07 10:12:56 -05:00
Matthieu MORELandGitHub 3e3bcf0246 chore: enable context-as-argument from revive (#21371)
Signed-off-by: Matthieu MOREL <[email protected]>
2025-01-07 10:08:51 -05:00
Matthieu MORELandGitHub bc3c389196 chore: enable importas for k8s.io/apimachinery/pkg/api/errors (#21262)
Signed-off-by: Matthieu MOREL <[email protected]>
2025-01-03 17:09:37 +00:00
Matthieu MORELandGitHub 961e9bad5e chore: import k8s.io/api/core/v1 as corev1 (#21345)
Signed-off-by: Matthieu MOREL <[email protected]>
2025-01-03 11:10:00 -05:00
Matthieu MORELandGitHub 7a212a833c chore: enable use-any from revive (#21282)
Signed-off-by: Matthieu MOREL <[email protected]>
2025-01-02 18:26:59 -05:00
Matthieu MORELandGitHub fde63a265b chore: use github.com/golang-jwt/jwt/v5 (#21276)
Signed-off-by: Matthieu MOREL <[email protected]>
2025-01-02 18:23:28 -05:00
Matthieu MORELandGitHub 6a8208c4ca chore: enable importas for k8s.io/apimachinery/pkg/apis/meta/v1 (#21284)
Signed-off-by: Matthieu MOREL <[email protected]>
2024-12-31 10:34:11 +02:00
Michael CrenshawandGitHub 0d0435a5f6 chore(server): simplify project validation logic (#21191)
* chore(server): simplify project validation logic

Signed-off-by: Michael Crenshaw <[email protected]>

* improve tests

Signed-off-by: Michael Crenshaw <[email protected]>

---------

Signed-off-by: Michael Crenshaw <[email protected]>
2024-12-17 13:01:06 +05:30
Michael CrenshawandGitHub a2ea49ba1b chore: use new fake k8s client constructor (#21186)
Signed-off-by: Michael Crenshaw <[email protected]>
2024-12-16 14:49:30 +05:30
Matthieu MORELandGitHub 10937ea594 chore: use testify instead of testing.Fatal or testing.Error in server (#20755)
Signed-off-by: Matthieu MOREL <[email protected]>
2024-11-11 20:35:19 -05:00
Kunho LeeandGitHub e0c6797ffd fix: check err before use schedule and duration (#20043)
* fix: check err before use schedule and duration

Signed-off-by: daengdaengLee <[email protected]>

* test: add tests for invalid schedule and duration

Signed-off-by: daengdaengLee <[email protected]>

* feat: change to return error when sync window is invalid

Signed-off-by: daengdaengLee <[email protected]>

* fix: use assert.Error or assert.NoError

Signed-off-by: daengdaengLee <[email protected]>

* fix: use require instead of assert

Signed-off-by: daengdaengLee <[email protected]>

---------

Signed-off-by: daengdaengLee <[email protected]>
2024-10-12 13:32:46 -04:00
Matthieu MORELandGitHub 4f6f65afb1 fix: use ErrorContains(t, err instead of Contains(t, err.Error() (#20220)
Signed-off-by: Matthieu MOREL <[email protected]>
2024-10-04 09:36:05 -04:00
Cayde6andGitHub 5b7406de71 feat: option to disable writing k8s events(#18205) (#18441)
* feat: option to disable writing k8s events

optioned to write logs for k8s events.
Each is passed as an environment variable and defaults to true,
disabling it requires explicitly setting the option to false.

Signed-off-by: Jack-R-lantern <[email protected]>

* feat: option to disable writing k8s events

fix unit test
- application_test
- applicationset_test
- project_test
- appcontroller_tes
- audit_logger_test

Signed-off-by: Jack-R-lantern <[email protected]>

* rebase

Signed-off-by: Jack-R-lantern <[email protected]>

---------

Signed-off-by: Jack-R-lantern <[email protected]>
2024-09-23 08:32:17 +05:30
9e09f1a62b chore(lint): errors reported by golangci-lint: S1009: should omit nil check; printf: non-constant format string (#19773)
Signed-off-by: Cheng Fang <[email protected]>
Co-authored-by: pasha-codefresh <[email protected]>
2024-09-04 14:58:15 +00:00
Matthieu MORELandGitHub f0c7775765 chore: enable require-error rule from errorlint linter on server folder (#18687)
Signed-off-by: Matthieu MOREL <[email protected]>
2024-06-15 19:13:40 -04:00
Matthieu MORELandGitHub e1c8779ad8 chore: enable gocritic linter (#18633)
* chore: enable gocritic linter

Signed-off-by: Matthieu MOREL <[email protected]>

* Update settings.go

Signed-off-by: Matthieu MOREL <[email protected]>

* Update app.go

Signed-off-by: Matthieu MOREL <[email protected]>

* Update grpcproxy.go

Signed-off-by: Matthieu MOREL <[email protected]>

* Update grpcproxy.go

Signed-off-by: Matthieu MOREL <[email protected]>

* Update util.go

Signed-off-by: Matthieu MOREL <[email protected]>

* Update server.go

Signed-off-by: Matthieu MOREL <[email protected]>

* Update app_management_ns_test.go

Signed-off-by: Matthieu MOREL <[email protected]>

* Update app_management_test.go

Signed-off-by: Matthieu MOREL <[email protected]>

* Update path_traversal.go

Signed-off-by: Matthieu MOREL <[email protected]>

* Update sessionmanager.go

Signed-off-by: Matthieu MOREL <[email protected]>

* Update .golangci.yaml

Signed-off-by: Matthieu MOREL <[email protected]>

---------

Signed-off-by: Matthieu MOREL <[email protected]>
2024-06-13 15:10:00 -04:00
Matthieu MORELandGitHub 417ff7b19e chore: enable gofumpt and whitespace linters (#18567)
Signed-off-by: Matthieu MOREL <[email protected]>
2024-06-11 15:41:55 +00:00
Matthieu MORELandGitHub a30bf57308 chore: enable expected-actual rule from testifylint linter (#18575)
Signed-off-by: Matthieu MOREL <[email protected]>
2024-06-10 20:33:00 +00:00
Matthieu MORELandGitHub 6042442da4 chore: enable error-nil rule from testifylint linter (#18544)
Signed-off-by: Matthieu MOREL <[email protected]>
2024-06-10 10:38:55 -04:00
Matthieu MORELandGitHub 8421ddbc37 chore: enable len and empty rules from testifylint linter (#18516)
Signed-off-by: Matthieu MOREL <[email protected]>
2024-06-07 15:12:50 -04:00
92784b0be8 fix: jwtTokens are reset when creating new tokens for new role (#17298)
* fix: jwtTokens are reset when creating new tokens for new role

Signed-off-by: Bulat Saifullin <[email protected]>

* add back NormalizeJWTTokens

Signed-off-by: Bulat Saifullin <[email protected]>

* add tests

Signed-off-by: BulatSaif <[email protected]>

* add fix

Signed-off-by: BulatSaif <[email protected]>

---------

Signed-off-by: Bulat Saifullin <[email protected]>
Signed-off-by: BulatSaif <[email protected]>
Co-authored-by: Soumya Ghosh Dastidar <[email protected]>
2024-04-24 17:16:09 +05:30
Bryce LoweandGitHub 856ed15535 fix: update rbac validation to support applications in different namespaces (#17777)
* fix: policies in namespaces

The introduction of applications in any namespace doesn't appear to include support for specifying namespaces in rbac policy objects.  This causes valid rbac objects (like `some-project/some-namespace/some-application`) to fail when they are really valid.  Update the regex to include the ability to specify a namespace.

Signed-off-by: Bryce Lowe <[email protected]>

* fix: update verbiage of failing test

Signed-off-by: Bryce Lowe <[email protected]>

* feedback: test for policy and project

Signed-off-by: Bryce Lowe <[email protected]>

* fix: update test name

Signed-off-by: Bryce Lowe <[email protected]>

---------

Signed-off-by: Bryce Lowe <[email protected]>
2024-04-09 21:52:54 -04:00
Soumya Ghosh DastidarandGitHub 98ffaae77a feat: allow access to cluster and project resources in app/resource deep links (#12931)
* feat: allow access to cluster and project resources too in deep links

Signed-off-by: Soumya Ghosh Dastidar <[email protected]>

* feat: improve cluster data sanitization

Signed-off-by: Soumya Ghosh Dastidar <[email protected]>

* docs: updated docs for deeplinks improvements

Signed-off-by: Soumya Ghosh Dastidar <[email protected]>

* feat: resolved review comments

Signed-off-by: Soumya Ghosh Dastidar <[email protected]>

* feat: add rbac enforcement for cluster and project

Signed-off-by: Soumya Ghosh Dastidar <[email protected]>

---------

Signed-off-by: Soumya Ghosh Dastidar <[email protected]>
2023-03-22 16:37:52 -04:00
Michael CrenshawandGitHub 5d752908f9 feat: add 'user' field to audit logs (#12644)
Signed-off-by: Michael Crenshaw <[email protected]>
2023-03-16 22:20:10 +02:00