Quick Start
Non-HA:
kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/v2.9.0-rc1/manifests/install.yaml
HA:
kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/v2.9.0-rc1/manifests/ha/install.yaml
Release Signatures and Provenance
All Argo CD container images are signed by cosign. A Provenance is generated for container images and CLI binaries which meet the SLSA Level 3 specifications. See the documentation on how to verify.
Upgrading
If upgrading from a different minor version, be sure to read the upgrading documentation.
Changes
This release includes 230 contributions from 91 contributors with 32 features and 26 bug fixes.
Features (32)
- feat(appset): ignoreApplicationDifferences (#9101) (#14743)
- feat(health): add PushSecret health status and force-sync action (#14375)
- feat(health): Implement AnsibleJob CRD health checks (#14483)
- feat(kustomize): add patches field (#5114) (#14648)
- feat(appset): add Support for AzureDevops Webhooks (#15047)
- feat: dynamic rebalancing of clusters across shards (#15036)
- feat(cli): tree option in output flag for app sync, app wait and app rollback for tree view (#15572)
- feat(extensions): Automatically apply extension configs without restarting API-Server (#15574)
- feat: added patch_ms and setop_ms timings to reconciliation logs (#15595)
- feat(ui): Add button for wrapping lines in pod logs viewer (#15506)
- feat: add option in output flag for app get and app resources cli command for tree view(#13370) (#15386)
- feat: appset preserve labels and global preserve fields (#15445)
- feat: Enable haproxy metrics through helm Chart (#15459)
- feat: added shorthand flags for follow and conatainre in app logs (#15400)
- feat: Add ARGOCD_CLUSTER_CACHE_LIST_PAGE_BUFFER_SIZE environment variable (#15159)
- feat: auto respect rbac for discovery/sync (#14381)
- feat: add Dott to users (#15370)
- feat: upgrade notification engine (#15359)
- feat: support extra attributes for opentelemetry (#15071)
- feat: run refresh from UI in parallel (#15138)
- feat(appset): added topic filter for Gitlab SCM (#14965)
- feat: add timeout for update cluster info (#14511)
- feat(cli): support apply out of sync flag only (#14624)
- feat: Add Support for AzureDevops Webhooks (#14969)
- feat(appset): Add SCM Provider option for Gitlab generator to filter shared projects from subgroups projects (#14831)
- feat: provide short revision in ARGOCD_APP_REVISION_SHORT env variable (#14926)
- feat: Adding kubelogin capability to argocd-k8s-auth (#9460) (#10700)
- feat(deep-links): alias
application
asapps
for consistency with notifications engine (#14761) - feat(appset): Restrict scm provider urls (#14286)
- feat: adding a autosync_enabled field to the argocd_app_info gauge (#14424)
- feat(appset): Add support for self-signed TLS / Certificates for Gitlab Scm Provider (#14348)
- feat: respecting rbac for resource exclusions/inclusions proposal (#13479)
Bug fixes (26)
- fix: add a not found check for application controller deployment (#15678)
- fix(applicationset): cannot validate inherited project permissions (#9298) (#15026)
- fix(kustomize): no concurrent processing if Kustomize patches are used (#15654)
- fix(cli): get latest app state before printing tree (#15639)
- fix(repo-server): avoid fetching commit sha for multisource applications (#15037) (#15067)
- fix: reflect expected integers in swagger doc (#13046)
- fix: ApplicationSet deletes Application status (#15514)
- fix: Applicationset upsert for any namespaces (#15520)
- fix(cli): fix header in resource-overrides list-actions output (#15375)
- fix: Allow retrieving badges in other namespaces (#15468)
- fix: failed to add cluster when the cluster server address is ipv6 (#8204) (#15350)
- fix: Better enforcement of application namespace restrictions (#15431)
- fix(notifications-catalog): Add nil check for on-deployed trigger (#15363)
- fix: Cache control 404 asset requests (#15327)
- fix: make WatchResourceTree use namespaced cache key (#15258)
- fix(appset): Matrix Generator Override not Working for Booleans (#14498) (#14573)
- fix: Updated docs about using a slash in ignoreDifferences (#15144)
- fix(cli): add support for components with non-default names (#10200) (#14605)
- fix(#12862): Update FlinkDeployment health check to support Flink v1.x (#15065)
- fix(reposerver): loosen source not permitted helm errors (#14210)
- fix: correct the swagger ui link to support --rootpath (#14845)
- fix: api server fails to call dex with istio (#14995)
- fix: correct discrepancies in generated swagger file (#14813)
- fix(notifications-catalog): Add nil check for notifications_catalog triggers (#14795)
- fix: manifest generation error with null annotations (#14336) (#14680)
- fix(ui): Added rel="noopener noreferrer" to link (#13820) (#14268)
Documentation (22)
- docs: 'action' RBAC example for Kind without group (#15589)
- docs: Add documentation on how to specify shard number for a cluster in "high availibility" doc (#5348) (#13258)
- docs: better command reference titles (#15567) (#15568)
- docs: Fix docs for destinations in AppProjects (#15153) (#15182)
- docs: fix kubectl apply in apps-in-any-namespace doc (#15197)
- docs: Update Application Set Webhook Instructions (#13764, #11532) (#15527)
- docs: Add KPMG to users (#15323)
- docs: fix bullets (#15446)
- docs: Improve RBAC documentation (#15430)
- docs: Fixes a markdown typo in USERS.md (#15362)
- docs: Add Twilio Segment to USERS.md (#15267)
- docs: clarify argocd-repo-server repo-cache-expiration HA use case (#15239)
- docs: remove unnecessary version number (#15198)
- docs: Update link to KubeCon China 2021 talk in README.md (#14887)
- docs: Update bank vaults link to point to the new org (#15069)
- docs(github): comment out notational pieces of PR template (#14888)
- docs: Adding native OCI support proposal (#13516)
- docs: Feature bounty proposal (Experimental) (#14234)
- docs: use consistent password in plugin generator examples (#14837)
- docs: Add Documentation for Istio (#14197)
- docs(declarative/repo-ssh): url needs git suffix (#13894)
- docs: make argocd-cm appliable (#14215)
Other (142)
- [fix] sidebar style (#15652)
- chore(ci): free up disk space (#15674)
- chore(deps): bump semver from 5.7.1 to 5.7.2 in /ui-test (#14457)
- chore(deps): bump actions/setup-node from 3.8.0 to 3.8.1 (#15108)
- chore(deps): bump node version (#15616)
- doc: resource tracking custom label configuration (#15587)
- Update the supported version policy in Operator Manual Installation doc (#15619)
- chore(deps): bump library/golang from
cffaba7
to2270a40
(#15615) - chore(action): minor lua changes (#15580)
- chore: add gdsoumya to reviewers (#15596)
- chore(deps): bump library/node from 20.6.1 to 20.7.0 in /test/container (#15585)
- chore(deps): bump library/node from 20.6.1 to 20.7.0 in /ui-test (#15583)
- chore(deps): bump actions/cache from 3.3.1 to 3.3.2 (#15552)
- doc: adds vals-operator to secrets list (#11795)
- chore(deps): bump github.com/antonmedv/expr from 1.12.7 to 1.15.2 (#15548)
- chore(deps): bump oras.land/oras-go/v2 from 2.2.1 to 2.3.0 (#15549)
- chore: add CODEOWNERS (#14693)
- chore(deps): bump actions/checkout from 3.5.3 to 4.0.0 (#15348)
- chore(deps): bump goreleaser/goreleaser-action from 4.4.0 to 5.0.0 (#15496)
- chore(deps): bump github.com/ktrysmt/go-bitbucket from 0.9.63 to 0.9.67 (#15500)
- chore: Add 4data to users (#15531)
- chore(deps): bump github.com/go-playground/webhooks/v6 (#15516)
- chore: update ordering of support steps (#15508)
- chore: adding tests for apiclient package: clientset tests (#15193)
- chore(deps): bump actions/upload-artifact from 3.1.2 to 3.1.3 (#15497)
- chore(deps): bump github.com/casbin/casbin/v2 from 2.73.0 to 2.77.2 (#15501)
- chore(deps): bump library/golang in /test/container (#15502)
- Fix broken links for post selectors, fix ordering of args for dig example (#15346)
- chore(deps): bump github.com/xanzy/go-gitlab from 0.89.0 to 0.91.1 (#15331)
- chore(deps): bump sigstore/cosign-installer from 3.1.1 to 3.1.2 (#15330)
- (docs) Add clarification on migration for CMP plugins (#15405)
- chore(deps): bump github.com/cyphar/filepath-securejoin (#15401)
- chore(deps): bump library/node from 20.5.0 to 20.6.1 (#15454)
- chore(deps): bump library/golang from
970907c
to62e5883
(#15415) - chore(deps): bump library/golang in /test/remote (#15419)
- chore(deps): bump argo-ui from
13cea62
to002d01b
in /ui (#15440) - chore(deps): bump gitpod/workspace-full from
d578722
to511cecd
(#15453) - chore(deps): bump library/node from 20.6.0 to 20.6.1 in /ui-test (#15452)
- chore(deps): bump library/node from 20.6.0 to 20.6.1 in /test/container (#15451)
- chore(deps): bump docker/setup-buildx-action from 2.9.1 to 3.0.0 (#15476)
- Fix incorrect wording in ApplicationSet git generator docs (#15374)
- chore: add Factorial to USERS.md (#15473)
- Fix requeue after for Matrix/Merge with SCM or ClusterDecision generators (#15407)
- chore: Fix flaky cluster test (#15433)
- chore(deps): bump library/node from 20.5.0 to 20.6.0 in /ui-test (#15364)
- chore(deps): bump library/node from 20.4.0 to 20.6.0 in /test/container (#15366)
- chore(deps): bump library/golang from 1.21.0 to 1.21.1 in /test/remote (#15387)
- chore(deps): bump library/golang from 1.21.0 to 1.21.1 (#15391)
- chore: remove duplicate function (#15123)
- chore: add Kvist to USERS.md (#15240)
- chore: better logs for jq expression errors (#15226)
- chore: add upsider to USERS.md (#15228)
- chore: Add kustomization.yaml for server app RBAC (#15124)
- chore: update confusing variable name (#15106)
- chore: wrap error objects to include context (#10592) (#15055)
- chore: improve error logs (#10592) (#15059)
- chore(deps): bump actions/setup-node from 3.7.0 to 3.8.0 (#15054)
- chore(deps): bump golangci/golangci-lint-action from 3.6.0 to 3.7.0 (#15053)
- chore: add Carrefour Group to USERS.md (#15039)
- chore: give context to errors (#15019)
- chore: give context to errors (#10592) (#15022)
- chore(deps): bump goreleaser/goreleaser-action from 4.3.0 to 4.4.0 (#14996)
- chore: upgrade to go 1.21 (#14992)
- chore(deps): upgrade nhooyr.io/websocket dependency (#15000)
- chore: space in 'Argo CD' (#14987)
- chore(deps): bump actions/setup-go from 4.0.1 to 4.1.0 (#14970)
- chore: add Jellysmack in USERS.md (#14975)
- chore: give context to error logs (#10592) (#14915)
- chore(deps): bump golang.org/x/oauth2 from 0.10.0 to 0.11.0 (#14922)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.312 to 1.44.317 (#14925)
- chore: give context to error logs #10592 (#14851)
- chore: improve app destination docstrings (#14836)
- chore(deps): bump library/node from 20.4.0 to 20.5.0 in /ui-test (#14662)
- chore(deps): bump library/node from 20.4.0 to 20.5.0 (#14664)
- chore: make
helm template
errors less verbose (#14772) - chore: Add query-scoped cluster URL in Cluster Secret E2E tests (#14446)
- chore: add Autodesk to USERS.md (#14778)
- chore(deps): bump github.com/casbin/casbin/v2 from 2.72.1 to 2.73.0 (#14783)
- chore(deps): bump github.com/xanzy/go-gitlab from 0.88.0 to 0.89.0 (#14784)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.309 to 1.44.312 (#14782)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.305 to 1.44.309 (#14746)
- chore(deps): bump github.com/go-git/go-git/v5 from 5.8.0 to 5.8.1 (#14744)
- Clean up repeated package import (#13889)
- chore: Print in-cluster svr addr disabled warning when server starts (#14553)
- chore(deps): bump github.com/go-git/go-git/v5 from 5.7.0 to 5.8.0 (#14641)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.304 to 1.44.305 (#14632)
- chore(deps): bump pygments from 2.7.4 to 2.15.0 in /docs (#14615)
- chore(deps): bump github.com/xanzy/go-gitlab from 0.86.0 to 0.88.0 (#14616)
- chore(deps): bump github.com/antonmedv/expr from 1.12.6 to 1.12.7 (#14611)
- chore(deps): bump github.com/xanzy/go-gitlab from 0.86.0 to 0.87.0 (#14610)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.301 to 1.44.304 (#14609)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.300 to 1.44.301 (#14565)
- chore(deps): bump github.com/casbin/casbin/v2 from 2.71.1 to 2.72.1 (#14564)
- chore: Print in-cluster svr addr disabled warning during ArgoDB initialization (#14539)
- chore: Generate SLSA provenance for SBOM (#14438) (#14507)
- chore: Update log level to warn when in-cluster svr addr is disabled but internal addr is used (#14520)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.299 to 1.44.300 (#14510)
- chore(deps): bump sigs.k8s.io/structured-merge-diff/v4 (#14509)
- chore(deps): bump github.com/ktrysmt/go-bitbucket from 0.9.61 to 0.9.63 (#14503)
- chore(deps): bump github.com/antonmedv/expr from 1.12.5 to 1.12.6 (#14490)
- chore(deps): bump docker/setup-buildx-action from 2.9.0 to 2.9.1 (#14492)
- chore(deps): bump github.com/bradleyfalzon/ghinstallation/v2 (#14489)
- added instructions on how to delete a user (#14488)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.298 to 1.44.299 (#14468)
- chore(deps): bump library/golang from 1.20.5 to 1.20.6 (#14480)
- chore: Add VA.gov to USERS.md (#14401)
- chore(deps): bump library/node from 20.3.1 to 20.4.0 (#14450)
- chore: Replace
os.Getenv("HOME")
withos.UserHomeDir()
(#12850) (#14325) - chore: add more logging for when RBAC enforcement fails (#14406)
- chore(deps): bump tough-cookie from 4.0.0 to 4.1.3 in /ui (#14417)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.297 to 1.44.298 (#14425)
- chore(deps): bump docker/setup-buildx-action from 2.8.0 to 2.9.0 (#14423)
- chore(deps): bump google.golang.org/grpc from 1.56.1 to 1.56.2 (#14390)
- chore: Replace cacheSrc to cacheSource (#14393)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.296 to 1.44.297 (#14391)
- chore(deps): bump github.com/ktrysmt/go-bitbucket from 0.9.60 to 0.9.61 (#14389)
- chore: use
t.Setenv
to set env vars in tests (#14377) - chore(deps): bump golang.org/x/oauth2 from 0.9.0 to 0.10.0 (#14361)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.295 to 1.44.296 (#14359)
- chore(deps): bump oras.land/oras-go/v2 from 2.2.0 to 2.2.1 (#14357)
- chore(deps): bump golang.org/x/term from 0.9.0 to 0.10.0 (#14358)
- chore(deps): bump actions/setup-node from 3.6.0 to 3.7.0 (#14362)
- chore: add gofmt to golangci-lint in Makefile and .github/workflows/ci-build.yaml (#13729)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.294 to 1.44.295 (#14327)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.293 to 1.44.294 (#14313)
- chore: add more logging for failures to get label metadata (#14275)
- chore: Clean up repo server imports (#14218)
- chore: improve reposerver readability (#14112)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.292 to 1.44.293 (#14278)
- chore(deps-dev): bump codecov from 3.7.2 to 3.8.3 in /ui (#12745)
- chore: remove useless lines from argocd_repo_server.go (#14154)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.290 to 1.44.292 (#14265)
- chore(deps): bump github.com/alicebob/miniredis/v2 from 2.30.3 to 2.30.4 (#14264)
- chore(deps): bump library/busybox in /test/e2e/multiarch-container (#14263)
- chore(deps): bump docker/setup-buildx-action from 2.7.0 to 2.8.0 (#14262)
- Unified option format (#11258)
- chore: List Flexport as an ArgoCD user (#14260)
- chore: Add VietMoney are using ArgoCD (#14247)
- chore(deps): bump sigstore/cosign-installer from 3.1.0 to 3.1.1 (#14245)
- chore: just use strings.TrimSuffix (#14248)
- Unified option format (#11257)
- chore(deps): bump github.com/aws/aws-sdk-go from 1.44.289 to 1.44.290 (#14219)
Full Changelog: v2.8.4...v2.9.0-rc1