Compare commits

..

1532 Commits

Author SHA1 Message Date
Michael Crenshaw
bd35d3dc23 set hydrator enabled key when using hydrator manifests
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

fix manifests

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-12-14 12:48:41 -05:00
Michael Crenshaw
fed8833669 feat(hydrator): enable controller
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Co-authored-by: Omer Azmon <omer_azmon@intuit.com>
Co-authored-by: daengdaengLee <gunho1020@gmail.com>
Co-authored-by: Juwon Hwang (Kevin) <juwon8891@gmail.com>
Co-authored-by: thisishwan2 <feel000617@gmail.com>
Co-authored-by: mirageoasis <kimhw0820@naver.com>
Co-authored-by: Robin Lieb <robin.j.lieb@gmail.com>
Co-authored-by: miiiinju1 <gms07073@ynu.ac.kr>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

feat(hydrator): enable controller

Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Co-authored-by: Omer Azmon <omer_azmon@intuit.com>
Co-authored-by: daengdaengLee <gunho1020@gmail.com>
Co-authored-by: Juwon Hwang (Kevin) <juwon8891@gmail.com>
Co-authored-by: thisishwan2 <feel000617@gmail.com>
Co-authored-by: mirageoasis <kimhw0820@naver.com>
Co-authored-by: Robin Lieb <robin.j.lieb@gmail.com>
Co-authored-by: miiiinju1 <gms07073@ynu.ac.kr>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

allow opt-in

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

separation between app controller and hydrator

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

simplify diff

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

todos

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

simplify

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

add dry sha to logs

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

add app name to logs

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

more logging, no caching

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

fix cluster install

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

don't interrupt an ongoing hydrate operation

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

revert hydrate loop fix

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

handle project-scoped repo creds

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

codegen

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

improve docs

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

fixes from comments

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-12-14 12:48:38 -05:00
Michael Crenshaw
1e71863944 feat(hydrator): add commit-server component
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Co-authored-by: Omer Azmon <omer_azmon@intuit.com>
Co-authored-by: daengdaengLee <gunho1020@gmail.com>
Co-authored-by: Juwon Hwang (Kevin) <juwon8891@gmail.com>
Co-authored-by: thisishwan2 <feel000617@gmail.com>
Co-authored-by: mirageoasis <kimhw0820@naver.com>
Co-authored-by: Robin Lieb <robin.j.lieb@gmail.com>
Co-authored-by: miiiinju1 <gms07073@ynu.ac.kr>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

go mod tidy

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

one test file for both implementations

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

simplify

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

fix test for linux

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

fix git client mock

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

fix git client mock

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

address comments

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

unit tests

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

lint

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

fix image, fix health checks, fix merge issue

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

fix lint issues

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

remove code that doesn't work for GHE

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

changes from comments

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-12-14 12:47:26 -05:00
Michael Crenshaw
cc1f9f53f1 feat(hydrator): add sourceHydrator types
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Co-authored-by: Omer Azmon <omer_azmon@intuit.com>
Co-authored-by: daengdaengLee <gunho1020@gmail.com>
Co-authored-by: Juwon Hwang (Kevin) <juwon8891@gmail.com>
Co-authored-by: thisishwan2 <feel000617@gmail.com>
Co-authored-by: mirageoasis <kimhw0820@naver.com>
Co-authored-by: Robin Lieb <robin.j.lieb@gmail.com>
Co-authored-by: miiiinju1 <gms07073@ynu.ac.kr>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

fix(codegen): use kube_codegen.sh deepcopy and client gen correctly

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

deepcopy gen

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-12-14 12:46:40 -05:00
adriananeci
030a7be7e2 fix: Populate destination name when destination server is specified (#21063)
* Populate destination name when destination server is specified

Signed-off-by: Adrian Aneci <aneci@adobe.com>

* Lint nit

Signed-off-by: Adrian Aneci <aneci@adobe.com>

* Trigger CI

Signed-off-by: Adrian Aneci <aneci@adobe.com>

---------

Signed-off-by: Adrian Aneci <aneci@adobe.com>
2024-12-14 10:40:48 +05:30
Dan Garfield
8dbddb101a Update golang test image to use 1.23.4 multiarch (#21174)
Seems to be an issue with the current sha but this one is working.

Signed-off-by: Dan Garfield <dan@codefresh.io>
2024-12-13 15:10:52 -05:00
Michael Crenshaw
72c711e7f0 chore: simplify sync status comparison (#21140)
* chore: simplify sync status comparison

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* add tests

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* more tests, some docs

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-12-13 17:52:21 +00:00
dependabot[bot]
be080a5319 chore(deps): bump actions/setup-go from 5.1.0 to 5.2.0 (#21123)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](41dfa10bad...3041bf56c9)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-13 15:28:16 +05:30
dependabot[bot]
4b229c0484 chore(deps): bump go.opentelemetry.io/otel from 1.32.0 to 1.33.0 (#21166)
Bumps [go.opentelemetry.io/otel](https://github.com/open-telemetry/opentelemetry-go) from 1.32.0 to 1.33.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.32.0...v1.33.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-13 15:26:04 +05:30
dependabot[bot]
87c853e872 chore(deps): bump chromedriver from 131.0.2 to 131.0.3 in /ui-test (#21144)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 131.0.2 to 131.0.3.
- [Commits](https://github.com/giggio/node-chromedriver/compare/131.0.2...131.0.3)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-12 11:35:38 +05:30
dependabot[bot]
cc68f018fe chore(deps): bump golang.org/x/crypto from 0.30.0 to 0.31.0 (#21147)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.30.0 to 0.31.0.
- [Commits](https://github.com/golang/crypto/compare/v0.30.0...v0.31.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-12 11:34:58 +05:30
Andrii Korotkov
d9be098d9c fix: Fix server side diff with fields removal (#20792) (#20842)
* fix: Fix server side diff with fields removal (#20792)

Fixes #20792

Use a new version of gitops engine with a fix.

This needs to be cherry-picked in v2.11-2.13.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Use newer versions of gitops-engine and structured-merge-diff

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

---------

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-12-11 21:08:30 +00:00
Minchao
6897c2e33f fix: incorrect expr for server stats in Grafana dashboard.json (#21098)
Signed-off-by: Minchao <minchao.220@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-12-11 15:50:17 +00:00
dependabot[bot]
6a3cdb6ea5 chore(deps): bump softprops/action-gh-release from 2.1.0 to 2.2.0 (#21124)
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](01570a1f39...7b4da11513)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-11 16:07:55 +05:30
Michael Crenshaw
deb4d2b01e chore: avoid unnecessary alloc (#21121)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-12-11 15:59:37 +05:30
Henry Liu
a78b6287b1 fix(ui): fix select destination cluster type in create app (#20970)
Signed-off-by: henry.liu <henry.liu@daocloud.io>
2024-12-11 15:58:10 +05:30
thecooldrop
bd322fe451 chore: Improve the documentation regarding the selection of Application by Sync Windows (#21093)
Signed-off-by: TheCoolDrop <vanio.begic123@gmail.com>
2024-12-11 15:26:51 +05:30
Grégoire Bellon-Gervais
f2e4739178 docs: Add keycloak PKCE and argo-cd cli method documentation (#20698)
* Add keycloak PKCE and argo-cd cli method

Signed-off-by: Grégoire Bellon-Gervais <gregoire.bellon-gervais@docaposte.fr>

* add company

Signed-off-by: Grégoire Bellon-Gervais <gregoire.bellon-gervais@docaposte.fr>

* Oups

Signed-off-by: Grégoire Bellon-Gervais <gregoire.bellon-gervais@docaposte.fr>

* Docaposte in a separated pr

Signed-off-by: Grégoire Bellon-Gervais <gregoire.bellon-gervais@docaposte.fr>

* Fix typo and improve doc

Signed-off-by: Grégoire Bellon-Gervais <gregoire.bellon-gervais@docaposte.fr>

* A good idea :)

Signed-off-by: Grégoire Bellon-Gervais <gregoire.bellon-gervais@docaposte.fr>

---------

Signed-off-by: Grégoire Bellon-Gervais <gregoire.bellon-gervais@docaposte.fr>
2024-12-11 15:18:44 +05:30
Blake Pettersson
2fe9a220dd fix: add missing fields in listrepositories (#20991)
This fixes a regression in 2.12. Before 2.12 githubAppInstallationID,
`githubAppID` and `gitHubAppEnterpriseBaseURL` were returned, but with
2.12 the repo is retrieved with getRepositories`, which does not
include those fields.

To fix this, add those missing fields to `ListRepositories`.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-12-11 15:17:44 +05:30
niv8
2f51067e75 psmdb.percona.com/PerconaServerMongoDB resource customization (#20628)
Signed-off-by: Niv Amitai <niv@connecteam.com>
2024-12-10 16:14:43 +05:30
Andrii Korotkov
9741c065d8 feat: Sync timeouts for applications (#6055) (#20816)
* feat: Sync timeouts for applications (#6055)

Helps with #6055

Introduces a controller-level configuration for terminating sync after timeout.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Fix env variable name

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

---------

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-12-10 13:59:04 +05:30
Pasha Kostohrys
90a148987d chore: reduce default max payload size in webhooks to 50MB (#21101)
* chore: reduce default max payload size in webhooks to 50MB

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* chore: reduce default max payload size in webhooks to 50MB

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* chore: reduce default max payload size in webhooks to 50MB

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* chore: reduce default max payload size in webhooks to 50MB

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-12-10 13:08:18 +05:30
rumstead
dfbfdbab11 feat(appset): reduce cluster secret logging (#21109)
* feat(appset): reduce cluster secret logging

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat(appset): reduce cluster secret logging

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat(appset): reduce cluster secret logging

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* e2e

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

---------

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
2024-12-09 16:19:35 -05:00
github-actions[bot]
eadc2a47dc [Bot] docs: Update Snyk reports (#21090)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-12-09 19:00:23 +00:00
Amine Benseddik
eb1bb831d4 docs: Fix argocd admin proj docs and examples (#21057)
Signed-off-by: Amine Benseddik <amine.benseddik@gmail.com>
2024-12-09 13:55:23 -05:00
dependabot[bot]
1bf56d8905 chore(deps): bump tj-actions/changed-files from 45.0.4 to 45.0.5 (#21095)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 45.0.4 to 45.0.5.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](4edd678ac3...bab30c2299)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-09 13:53:48 -05:00
dependabot[bot]
ed2fde1a8f chore(deps): bump github.com/cyphar/filepath-securejoin (#21096)
Bumps [github.com/cyphar/filepath-securejoin](https://github.com/cyphar/filepath-securejoin) from 0.3.4 to 0.3.5.
- [Release notes](https://github.com/cyphar/filepath-securejoin/releases)
- [Changelog](https://github.com/cyphar/filepath-securejoin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cyphar/filepath-securejoin/compare/v0.3.4...v0.3.5)

---
updated-dependencies:
- dependency-name: github.com/cyphar/filepath-securejoin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-09 13:53:20 -05:00
Joowon Lim
35c12d9486 chore: use %q to simplify fmt.Sprintf (#21108)
Signed-off-by: Joowon Lim <m4rinesnow34@gmail.com>
2024-12-09 13:52:32 -05:00
dependabot[bot]
96d0226a49 chore(deps): bump actions/cache from 4.1.2 to 4.2.0 (#21084)
Bumps [actions/cache](https://github.com/actions/cache) from 4.1.2 to 4.2.0.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](6849a64899...1bd1e32a3b)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-06 10:48:36 -05:00
Manuel Kieweg
8f0d3d0f6a feat: Timestamp for Health Status (#16972) (#18660)
* add lastTransitionTime to health status

Signed-off-by: Manuel Kieweg <mail@manuelkieweg.de>

* address first feedback

Signed-off-by: Manuel Kieweg <mail@manuelkieweg.de>

* set transition time if health status is unknown

Signed-off-by: Manuel Kieweg <mail@manuelkieweg.de>

* extend health improvement tests

Signed-off-by: Manuel Kieweg <mail@manuelkieweg.de>

* add apoplication controller test

Signed-off-by: Manuel Kieweg <mail@manuelkieweg.de>

* use require for NoError

Signed-off-by: Manuel Kieweg <mail@manuelkieweg.de>

* more extensive tests for health state changes

Signed-off-by: Manuel Kieweg <mail@manuelkieweg.de>

* Apply suggestions from code review

Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Manuel Kieweg <2939765+mkieweg@users.noreply.github.com>

* Code review suggestions

Signed-off-by: Manuel Kieweg <mail@manuelkieweg.de>

* remove obsolete assert

Signed-off-by: Manuel Kieweg <mail@manuelkieweg.de>

* Change LastTransitionTime field to pointer type

Due to implementation limitations, setting LastTransitionTime at the resource level is challenging.
Converting it to a pointer type allows it to be skipped at the resource level and prevents it from appearing
in .status.resources of the Application CR. Additionally, it doesn’t provide much value or have a known
use case right now.

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

* Resolve rebase conflicts

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

* Address review comment

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

* Trigger CI

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

---------

Signed-off-by: Manuel Kieweg <mail@manuelkieweg.de>
Signed-off-by: Manuel Kieweg <2939765+mkieweg@users.noreply.github.com>
Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Siddhesh Ghadi <sghadi1203@gmail.com>
2024-12-06 17:43:36 +05:30
JM (Jason Meridth)
4f6e4088ef chore(deps): bump gitops-engine to latest (#21056)
Related to https://github.com/argoproj/gitops-engine/pull/638

Signed-off-by: jmeridth <jmeridth@gmail.com>
2024-12-05 15:03:29 -05:00
Matt Finkel
71658c8897 chore: add ziprecruiter to users (#21076)
Signed-off-by: Matt Finkel <finkel.matt@gmail.com>
2024-12-05 10:05:55 -07:00
Ishita Sequeira
fa9023a006 fix: 20791 - sync multi-source application out of order source syncs (#21071)
Signed-off-by: Ishita Sequeira <ishiseq29@gmail.com>
2024-12-05 09:35:05 -07:00
dependabot[bot]
cdec7e2868 chore(deps): bump golang.org/x/net from 0.31.0 to 0.32.0 (#21069)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.31.0 to 0.32.0.
- [Commits](https://github.com/golang/net/compare/v0.31.0...v0.32.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 09:16:09 +00:00
dependabot[bot]
9f71ecbf5f chore(deps): bump google.golang.org/grpc from 1.67.1 to 1.68.1 (#21066)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.67.1 to 1.68.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.67.1...v1.68.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 14:00:40 +05:30
dependabot[bot]
6ace657e2a chore(deps): bump golang.org/x/crypto from 0.29.0 to 0.30.0 (#21068)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.29.0 to 0.30.0.
- [Commits](https://github.com/golang/crypto/compare/v0.29.0...v0.30.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 13:59:53 +05:30
dependabot[bot]
0a57d21c3d chore(deps): bump library/golang in /test/container (#21048)
Bumps library/golang from 1.23.3 to 1.23.4.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 13:08:16 +05:30
dependabot[bot]
955858eaad chore(deps): bump library/golang from 1.23.3 to 1.23.4 in /test/remote (#21049)
Bumps library/golang from 1.23.3 to 1.23.4.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 13:07:58 +05:30
dependabot[bot]
e28aa2eb54 chore(deps): bump chromedriver from 131.0.1 to 131.0.2 in /ui-test (#21050)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 131.0.1 to 131.0.2.
- [Commits](https://github.com/giggio/node-chromedriver/compare/131.0.1...131.0.2)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 13:03:38 +05:30
dependabot[bot]
89f222b6a2 chore(deps-dev): bump dotenv from 16.4.6 to 16.4.7 in /ui-test (#21051)
Bumps [dotenv](https://github.com/motdotla/dotenv) from 16.4.6 to 16.4.7.
- [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md)
- [Commits](https://github.com/motdotla/dotenv/compare/v16.4.6...v16.4.7)

---
updated-dependencies:
- dependency-name: dotenv
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 13:02:52 +05:30
dependabot[bot]
0fbbc0dda9 chore(deps): bump golang.org/x/term from 0.26.0 to 0.27.0 (#21070)
Bumps [golang.org/x/term](https://github.com/golang/term) from 0.26.0 to 0.27.0.
- [Commits](https://github.com/golang/term/compare/v0.26.0...v0.27.0)

---
updated-dependencies:
- dependency-name: golang.org/x/term
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 13:00:10 +05:30
Keith Chong
522d07a8d8 fix: UI: Nothing happens selecting cluster URL/Name dropdown (#13655) (#21028)
Signed-off-by: Keith Chong <kykchong@redhat.com>
2024-12-04 13:15:50 +05:30
Andrii Korotkov
730363f14b fix: Graceful shutdown for the API server (#18642) (#20981)
* fix: Graceful shutdown for the API server (#18642)

Closes #18642

Implements a graceful shutdown the the API server. Without this, ArgoCD API server will eventually return 502 during rolling update. However, healthcheck would return 503 if the server is terminating.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
Co-authored-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* Init server only once, but keep re-initializing listeners

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Check error for SetParamInSettingConfigMap as needed after fresh master

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Prevent a data race

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Remove unused variable, don't pass lock when not necessary

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Try overriding URL instead of additional URLs

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Use a more specific url

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

---------

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
Co-authored-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-12-03 15:32:26 -05:00
dependabot[bot]
523b0e6a78 chore(deps): bump SonarSource/sonarqube-scan-action from 3.1.0 to 4.1.0 (#21034)
* chore(deps): bump SonarSource/sonarqube-scan-action from 3.1.0 to 4.1.0

Bumps [SonarSource/sonarqube-scan-action](https://github.com/sonarsource/sonarqube-scan-action) from 3.1.0 to 4.1.0.
- [Release notes](https://github.com/sonarsource/sonarqube-scan-action/releases)
- [Commits](13990a6956...1b442ee39a)

---
updated-dependencies:
- dependency-name: SonarSource/sonarqube-scan-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Apply suggestions from code review

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-12-03 17:15:55 +00:00
Andrii Korotkov
975786629f chore: Add support for AdditionalURLs field in server settings query (#21045)
Helps with #18642

Needed for consistency and for future testing in another PR.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-12-03 16:20:01 +00:00
dependabot[bot]
52dbe514e0 chore(deps-dev): bump dotenv from 16.4.5 to 16.4.6 in /ui-test (#21031)
Bumps [dotenv](https://github.com/motdotla/dotenv) from 16.4.5 to 16.4.6.
- [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md)
- [Commits](https://github.com/motdotla/dotenv/compare/v16.4.5...v16.4.6)

---
updated-dependencies:
- dependency-name: dotenv
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-03 19:44:50 +05:30
dependabot[bot]
51a7966b92 chore(deps): bump sigs.k8s.io/controller-runtime from 0.19.2 to 0.19.3 (#21032)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.19.2 to 0.19.3.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.19.2...v0.19.3)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-03 19:44:25 +05:30
dudinea
0d7f1f7053 chore: fix tests failing with Kustomize based errors (#21037)
Signed-off-by: Eugene Doudine <eugene.d@trekflow.com>
2024-12-03 12:04:25 +02:00
Andrii Korotkov
b8e118ff7d fix: Bitbucket Cloud PR Author is processed correctly (#20769) (#20990)
Fixes #20769

Author there is a struct, not a string. Use nickname from that struct as an author name.

Let's cherry pick to 2.11-2.13

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-12-03 14:22:22 +05:30
dependabot[bot]
aef4c5a276 chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc (#20741)
Bumps [go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc](https://github.com/open-telemetry/opentelemetry-go) from 1.31.0 to 1.32.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.31.0...v1.32.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-03 06:54:12 +00:00
dependabot[bot]
79b05d62c3 chore(deps): bump softprops/action-gh-release from 2.0.9 to 2.1.0 (#20760)
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.0.9 to 2.1.0.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](e7a8f85e1c...01570a1f39)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-03 11:47:30 +05:30
dependabot[bot]
d6deaa96e1 chore(deps): bump selenium-webdriver from 4.26.0 to 4.27.0 in /ui-test (#20953)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.26.0 to 4.27.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.26.0...selenium-4.27.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-03 11:45:33 +05:30
dependabot[bot]
dd2b458c43 chore(deps): bump github.com/Azure/kubelogin from 0.1.4 to 0.1.5 (#21033)
Bumps [github.com/Azure/kubelogin](https://github.com/Azure/kubelogin) from 0.1.4 to 0.1.5.
- [Release notes](https://github.com/Azure/kubelogin/releases)
- [Changelog](https://github.com/Azure/kubelogin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/Azure/kubelogin/compare/v0.1.4...v0.1.5)

---
updated-dependencies:
- dependency-name: github.com/Azure/kubelogin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-03 11:44:55 +05:30
dmosesson
9b481b1907 feat: Adding skipSchemaValidation flag (#20771) (#20831)
* Adding skipSchemaValidation flag

Signed-off-by: Daniel Mosesson (soandos) <danielmosesson@gmail.com>

* Adding specific test for skip schema validation

Signed-off-by: Daniel Mosesson (soandos) <danielmosesson@gmail.com>

* Fix merge conflict

Signed-off-by: Daniel Mosesson (soandos) <danielmosesson@gmail.com>

* Fixing index.yaml to support helm 3.16

Signed-off-by: Daniel Mosesson (soandos) <danielmosesson@gmail.com>

---------

Signed-off-by: Daniel Mosesson (soandos) <danielmosesson@gmail.com>
Co-authored-by: Daniel Mosesson (soandos) <danielmosesson@gmail.com>
2024-12-03 11:43:42 +05:30
Jonathan West
9587ec9c92 chore: Fix to intermittent E2E test failures in deployment_test.go (#20974)
Signed-off-by: Jonathan West <jonwest@redhat.com>
2024-12-03 11:41:34 +05:30
Alexandre Gaudreault
205b3d38c7 docs(ingress): use GRPC instead of HTTP2 (#21029)
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-12-03 02:07:53 +00:00
Andrii Korotkov
bd5d76f254 chore: Parallelize EnsureCleanState for e2e tests, adding timing information (#20998)
* chore: Parallelize EnsureCleanState for e2e tests, adding timing information

Closes #20968
Closes #20967

A number of cleanup and create steps can be done in parallel, reducing the total runtime. Gather timing information as well and log it.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Add underscores to function map keys

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Have separate log statements for timing fields, since everything doesn't fit in Github logs and gets truncated

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Re-run tests

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Fix duplicate removal attempts, cleanup things in namespaces before removing namespaces

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Combine config map cleanups, since they seem to have some kind of locking based on timings

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Re-order some cleanups to not wait if something is already covered by no wait commands

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Move rm temp dir to be together with re-creation, since otherwise repo server watcher seems to fail

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Only update config maps and login as admin if there were any changes

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Also check for user being logged in

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Improve config maps equivalency check

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Remove timing information

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Improve loops with sleep

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Properly propagate and handle errors for parallel functions

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Add missing CheckError

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Fix import

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Fix imports linter error (try 2)

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Parallelize EnsureCleanState for application sets

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Fix errors.IsNotFound

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Use errgroup to run functions in parallel

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Remove name keys for functions as unused

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Use apierr directly

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

---------

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-12-02 23:26:46 +00:00
Andrii Korotkov
5fc306ed3a chore: Remove or reduce sleep in e2e tests (#21010)
Closes #21009

Some sleeps may no longer be necessary or be too long. Try removing or reducing duration.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-12-02 10:03:40 -05:00
dependabot[bot]
c06974f213 chore(deps): bump github.com/itchyny/gojq from 0.12.16 to 0.12.17 (#21018)
Bumps [github.com/itchyny/gojq](https://github.com/itchyny/gojq) from 0.12.16 to 0.12.17.
- [Release notes](https://github.com/itchyny/gojq/releases)
- [Changelog](https://github.com/itchyny/gojq/blob/main/CHANGELOG.md)
- [Commits](https://github.com/itchyny/gojq/compare/v0.12.16...v0.12.17)

---
updated-dependencies:
- dependency-name: github.com/itchyny/gojq
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-02 09:53:33 -05:00
Andrii Korotkov
155514e8ca fix: Allow to delete repos with invalid urls (#20921) (#20975)
* fix: Allow to delete repos with invalid urls (#20921)

Fixes #20921

Normalization of repo url is attempted during repo deletion before comparison with existing repos. Before this change, it'd fail on invalid urls and return "", resulting in permission denied. This ended up in a state where people can add repos with invalid urls but couldn't delete them. Return raw repo url if url parsing failed. Add a test to validate the deletion can be performed and make sure it fails without the main change.

This needs to be cherry-picked to v2.11-2.13

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* Don't modify the original NormalizeGitURL

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

---------

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-12-02 14:00:35 +02:00
Anthony Goddard
f4d1e0f9f6 clarify usage of ref for multiple sources doc (#21011)
Signed-off-by: Anthony Goddard <anthony@anthonygoddard.com>
2024-12-02 10:32:58 +01:00
dependabot[bot]
2d0a5e904a chore(deps): bump github.com/casbin/casbin/v2 from 2.101.0 to 2.102.0 (#21019)
Bumps [github.com/casbin/casbin/v2](https://github.com/casbin/casbin) from 2.101.0 to 2.102.0.
- [Release notes](https://github.com/casbin/casbin/releases)
- [Changelog](https://github.com/casbin/casbin/blob/master/.releaserc.json)
- [Commits](https://github.com/casbin/casbin/compare/v2.101.0...v2.102.0)

---
updated-dependencies:
- dependency-name: github.com/casbin/casbin/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-02 10:01:06 +02:00
jingkai.
91360648d3 docs: remove outdated ciphers (#21006)
Signed-off-by: jingkai. <contact@jingk.ai>
2024-11-30 21:30:45 +01:00
Cornelius Roemer
b4b6307cd2 doc: fix grammar (#21004)
Signed-off-by: Cornelius Roemer <cornelius.roemer@gmail.com>
2024-11-30 13:41:50 -05:00
Andrii Korotkov
8320f88fa2 chore: Remove sleep from when/then in e2e tests (#21008)
These sleeps might be unnecessary, remove them and check the e2e tests.

Closes #21007

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-11-30 13:20:46 -05:00
dependabot[bot]
02d6866f8a chore(deps): bump docker/build-push-action from 6.9.0 to 6.10.0 (#20966)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.9.0 to 6.10.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](4f58ea7922...48aba3b46d)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-28 14:25:33 -05:00
Andrii Korotkov
19bdbcaddb chore: Optimize e2e tests by improving EnsureCleanState (#20942)
Closes #20941

Batch some kubectl operations, create gpg using APIs instead of CLI.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-11-28 14:24:59 -05:00
Andrii Korotkov
97701f353a chore: Optimize e2e tests by removing redundant ensure clean state + some refactoring (#20939)
Closes #20938

There's no need to do multiple ensure clean state in tests, which `Given` does, so using `GivenWithSameState` in places not using it already. There were only a few, so I don't expect a big win, but it may help with test consistency as well.
Also, refactor to use `Given` and `GivenWithSameState` for repo fixture instead of `Given(t, <bool>)`.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-11-28 14:24:36 -05:00
Thomas Decaux
e31aebe14c fix(ui): update ui e2e tests (#14619)
Signed-off-by: ebuildy <tdecaux@petalmd.com>
2024-11-28 12:52:20 -05:00
Erik Sjölund
fc6105b2bd docs: Fix post selector example (#20969)
Signed-off-by: Erik Sjölund <erik.sjolund@gmail.com>
2024-11-27 01:10:54 -10:00
Atif Ali
36d189c133 feat(ui): Support filter for configured and unchanged on SYNC STATUS view (#20850) 2024-11-27 09:53:10 +05:30
dependabot[bot]
9a14d7f5dd chore(deps): bump thehanimo/pr-title-checker from 1.4.2 to 1.4.3 (#20951)
Bumps [thehanimo/pr-title-checker](https://github.com/thehanimo/pr-title-checker) from 1.4.2 to 1.4.3.
- [Release notes](https://github.com/thehanimo/pr-title-checker/releases)
- [Commits](1d8cd483a2...7fbfe05602)

---
updated-dependencies:
- dependency-name: thehanimo/pr-title-checker
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-26 13:45:05 -05:00
Alexander Matyushentsev
7f6340f653 fix: API server should not attempt to read secrets in all namespaces (#20950)
* fix: api server is trying to list cluster wide secrets while generating apps

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* Revert "fix: Fix argocd appset generate failure due to missing clusterrole (#20162)"

This reverts commit fad534bcfe.

---------

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-11-26 10:53:28 +05:30
renovate[bot]
98688e0686 chore(deps): update module github.com/golangci/golangci-lint to v1.62.2 (#20947)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-25 15:53:46 +00:00
dependabot[bot]
8bce61e330 chore(deps): bump github.com/stretchr/testify from 1.9.0 to 1.10.0 (#20930)
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-25 10:14:18 -05:00
Andrii Korotkov
4d306f1139 chore: Reduse e2e tests runtime by using better sleep intervals in Expect (#20926)
Closes #20923

Right now the condition is checked immediately and then only after 3 seconds and so on. But sometimes the need for a wait may be much smaller than 3 seconds. So, try using smaller intervals with exponential increase up to 3 seconds instead.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-11-25 09:41:51 -05:00
Tomas Dabašinskas
b546ea7b13 docs(applicationset): complete sentence about Application deletion (#20944)
Fixed an incomplete sentence in the Application Deletion documentation that describes what happens to Application resources when an ApplicationSet is deleted.

Signed-off-by: Tomas Dabašinskas <tomas@dabasinskas.net>
2024-11-25 03:09:10 -10:00
Andrii Korotkov
9009e57c32 chore: Graceful handling of panic in application set controller reconcile (#20935) (#20940)
Closes #20935

Recover from panic if it happens, similar to how application controller does it.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-11-25 07:36:37 -05:00
Andrii Korotkov
2d9d2fd4e8 docs: Update FAQ about known types (#6008) (#20929)
Closes #6008

Make more emphasis on the issue users may be searching for, update wording slightly and another example.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-11-25 00:04:32 -10:00
Shaw Ho
faa10098ba Add Alauda to USERS (#20936)
Signed-off-by: Shaw Ho <tossmilestone@gmail.com>
2024-11-24 23:57:48 -10:00
dependabot[bot]
e8d52650b1 chore(deps-dev): bump typescript from 5.6.3 to 5.7.2 in /ui-test (#20931)
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.6.3 to 5.7.2.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.6.3...v5.7.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-25 11:50:48 +05:30
dependabot[bot]
c92efcf130 chore(deps-dev): bump @types/node from 22.8.7 to 22.9.3 in /ui-test (#20932)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.8.7 to 22.9.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-25 11:49:51 +05:30
Michael Crenshaw
62a84d5747 chore: rename Rollout 'Restart' action to 'Restart Pods' (#20841)
* chore: rename Rollout 'Restart' action to 'Restart Pods'

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix tests

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-11-25 09:55:03 +05:30
Michael Crenshaw
6a09102389 chore: log panics in JSON (#20924) (#20925)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-11-24 20:05:39 -05:00
github-actions[bot]
8024407a13 [Bot] docs: Update Snyk reports (#20919)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-11-24 20:11:04 +00:00
Suraj yadav
1120a08653 feat(ui): Added timing info to container state UI (#20920)
Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
2024-11-24 15:08:19 -05:00
Revital Barletz
a849d41b6f docs: Proposal to add installation steps for local development using Kind (#20821)
* Update getting_started.md

Adding some steps for running Argo CD locally using Kind. 

Signed-off-by: Revital Barletz <revitalbarletz@gmail.com>

* Moved instructions to a different file

Signed-off-by: Revital Barletz <revitalbarletz@gmail.com>

* Update getting_started.md

Moved the instructions to a different file.

Signed-off-by: Revital Barletz <revitalbarletz@gmail.com>

* Update try_argo_cd_locally.md

Signed-off-by: Revital Barletz <revitalbarletz@gmail.com>

* Update try_argo_cd_locally.md

Signed-off-by: Revital Barletz <revitalbarletz@gmail.com>

* Update docs/try_argo_cd_locally.md

Signed-off-by: Dan Garfield <dan@codefresh.io>

* Update try_argo_cd_locally.md

Signed-off-by: Revital Barletz <revitalbarletz@gmail.com>

---------

Signed-off-by: Revital Barletz <revitalbarletz@gmail.com>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-11-24 08:51:09 -07:00
Nicholas Morey
ff08643186 docs(resource_actions): specify when mergeBuiltinActions was introduced (#20917)
The feature was made available in 2.13.0 onwards.

Signed-off-by: Nicholas Morey <nicholas@morey.tech>
2024-11-23 12:22:52 -07:00
Nitish Kumar
32cc6638f7 fix: show multisource details for an appset when using argocd appset get command (#20903)
* fix: show multisource details for an appset

Signed-off-by: nitishfy <justnitish06@gmail.com>

* remove extra comment

Signed-off-by: nitishfy <justnitish06@gmail.com>

* fix failing tests

Signed-off-by: nitishfy <justnitish06@gmail.com>

* fix lint issues

Signed-off-by: nitishfy <justnitish06@gmail.com>

---------

Signed-off-by: nitishfy <justnitish06@gmail.com>
2024-11-22 06:25:03 -05:00
dependabot[bot]
9f1431e1eb chore(deps): bump sigs.k8s.io/controller-runtime from 0.19.1 to 0.19.2 (#20906)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.19.1 to 0.19.2.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.19.1...v0.19.2)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-22 10:38:15 +05:30
Adam Chandler
c6804e9854 fix: Memory leak in repo-server (#20876)
Signed-off-by: Adam Chandler <adam_chandler@trimble.com>
2024-11-21 10:07:10 -05:00
ABBOUD Moncef
4a140515fe feat(app): add ignore-healthcheck annotation (#20462)
Signed-off-by: cef <moncef.abboud95@gmail.com>
2024-11-21 07:16:53 -05:00
jaehanbyun
b6cc0e6193 docs: Update orphaned resource number metric explanation in doc (#20702)
Signed-off-by: jaehanbyun <awbrg789@naver.com>
2024-11-21 17:33:22 +05:30
Michael Crenshaw
e34d86ff07 test: more destination check tests (#20617)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-11-21 17:31:11 +05:30
dependabot[bot]
3b81d3c072 chore(deps): bump go.opentelemetry.io/otel/sdk from 1.31.0 to 1.32.0 (#20745)
Bumps [go.opentelemetry.io/otel/sdk](https://github.com/open-telemetry/opentelemetry-go) from 1.31.0 to 1.32.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.31.0...v1.32.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel/sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-21 10:17:17 +05:30
rumstead
c8c22d3d5a fix(server): make a copy of secret objects when listing from the informers #19913 (#20805)
* fix(server): make a copy of secret objects when listing from the informers

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* fix(server): make a copy of secret objects when listing from the informers

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* fix(server): make a copy of secret objects when listing from the informers

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* fix(server): make a copy of secret objects when listing from the informers

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* fix(server): make a copy of secret objects when listing from the informers

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* fix(server): make a copy of secret objects when listing from the informers

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* e2e

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

---------

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
2024-11-21 04:43:53 +00:00
OpenGuidou
2c2e669247 fix(cli): Fix appset generate in --core mode (#20717)
Signed-off-by: OpenGuidou <guillaume.doussin@gmail.com>
2024-11-20 23:41:30 -05:00
dependabot[bot]
32c9e41248 chore(deps): bump github.com/bradleyfalzon/ghinstallation/v2 (#20778)
Bumps [github.com/bradleyfalzon/ghinstallation/v2](https://github.com/bradleyfalzon/ghinstallation) from 2.11.0 to 2.12.0.
- [Release notes](https://github.com/bradleyfalzon/ghinstallation/releases)
- [Commits](https://github.com/bradleyfalzon/ghinstallation/compare/v2.11.0...v2.12.0)

---
updated-dependencies:
- dependency-name: github.com/bradleyfalzon/ghinstallation/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-21 10:10:33 +05:30
dependabot[bot]
74b219a628 chore(deps): bump github.com/xanzy/go-gitlab from 0.113.0 to 0.114.0 (#20832)
Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.113.0 to 0.114.0.
- [Release notes](https://github.com/xanzy/go-gitlab/releases)
- [Changelog](https://github.com/xanzy/go-gitlab/blob/main/releases_test.go)
- [Commits](https://github.com/xanzy/go-gitlab/compare/v0.113.0...v0.114.0)

---
updated-dependencies:
- dependency-name: github.com/xanzy/go-gitlab
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-21 10:06:09 +05:30
dependabot[bot]
0ea189d5a2 chore(deps): bump chromedriver from 130.0.4 to 131.0.1 in /ui-test (#20855)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 130.0.4 to 131.0.1.
- [Commits](https://github.com/giggio/node-chromedriver/compare/130.0.4...131.0.1)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-21 10:05:38 +05:30
Leonardo Luz Almeida
fc9b33b325 chore: Fix get-previous-release test case (#20863)
Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
2024-11-20 19:57:31 +00:00
rumstead
6cf363c0fa chore: setting up 2.14 release champion and approver (#20870)
Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
2024-11-20 19:42:35 +00:00
dependabot[bot]
29ac23827a chore(deps): bump github.com/Masterminds/semver/v3 from 3.3.0 to 3.3.1 (#20852)
Bumps [github.com/Masterminds/semver/v3](https://github.com/Masterminds/semver) from 3.3.0 to 3.3.1.
- [Release notes](https://github.com/Masterminds/semver/releases)
- [Changelog](https://github.com/Masterminds/semver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Masterminds/semver/compare/v3.3.0...v3.3.1)

---
updated-dependencies:
- dependency-name: github.com/Masterminds/semver/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-20 10:49:52 -05:00
Matthieu MOREL
0ca1ddb88c fix: order conditions summary (#20759)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-11-20 10:46:01 -05:00
Andrii Korotkov
3da5a3de52 fix: Fix repeated 403 due to app namespace being undefined (#20699) (#20819)
Fixes #20699

Constructor may not get called every time the application changes, so previous this.appNamespace could be stale. But the update to use `this.props.match.params.appnamespace` could also fail if it's undefined.
As a fix, create and use a helper function `getAppNamespace` which has a special case handling for undefined.

Also, use a namespaced endpoint when namespace is not undefined.

It needs to be cherry-picked to v2.11-2.13.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-11-20 12:57:03 +02:00
ABBOUD Moncef
83953fe276 feat(app): Add optional 'name' to Source object (#20470)
Signed-off-by: cef <moncef.abboud95@gmail.com>
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-11-18 21:23:49 +00:00
Revital Barletz
be24ef4acc fix: remove broken link from code-contributions.md (#20795)
* Update code-contributions.md

Deleting the section that contains a broken link per this discussion: https://github.com/argoproj/argo-cd/issues/20728

Signed-off-by: Revital Barletz <revitalb@monada.co>

* Update code-contributions.md

Remove the part that talks about the enhancement proposal.

Signed-off-by: Revital Barletz <revitalb@monada.co>

---------

Signed-off-by: Revital Barletz <revitalb@monada.co>
2024-11-18 08:54:32 -07:00
Andrii Korotkov
b3916428c1 docs: Improve self-heal and auto-sync behaviors explanation for multi-source apps (#20809) (#20811)
Closes #20809

In single-source apps self-heal disabled guarantees that with no source changes the live changes won't get overridden. That's no longer the case for multi-source apps, since one of the sources changing can trigger a sync of everything. Add a note explaining this behavior.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-11-17 23:35:47 -05:00
dependabot[bot]
c4f51c0313 chore(deps): bump google.golang.org/protobuf from 1.35.1 to 1.35.2 (#20804)
Bumps google.golang.org/protobuf from 1.35.1 to 1.35.2.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-17 23:33:00 -05:00
Suraj yadav
d8dd2fc02c feat(ui): Added a warning popup before closing the application create panel (#20807)
* added-warning

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* removed?

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
2024-11-17 23:26:15 -05:00
dependabot[bot]
00d45ed74f chore(deps): bump github.com/casbin/casbin/v2 from 2.100.0 to 2.101.0 (#20817)
Bumps [github.com/casbin/casbin/v2](https://github.com/casbin/casbin) from 2.100.0 to 2.101.0.
- [Release notes](https://github.com/casbin/casbin/releases)
- [Changelog](https://github.com/casbin/casbin/blob/master/.releaserc.json)
- [Commits](https://github.com/casbin/casbin/compare/v2.100.0...v2.101.0)

---
updated-dependencies:
- dependency-name: github.com/casbin/casbin/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-17 23:17:25 -05:00
Daco
6d8d32f170 fix: ApplicationSet webhooks should use stricter comparison of repository URL (#20486)
Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>
2024-11-14 08:23:36 -05:00
SuminSSon
0f872f51be chore: improve error logs in server/cluster/cluser.go (#20711) 2024-11-13 08:04:38 -05:00
Matthieu MOREL
993d79ca27 chore: use testify instead of testing.Fatal or testing.Error in server (#20755)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-11-11 20:35:19 -05:00
dependabot[bot]
2a72df260d chore(deps): bump go.opentelemetry.io/otel from 1.31.0 to 1.32.0 (#20744)
Bumps [go.opentelemetry.io/otel](https://github.com/open-telemetry/opentelemetry-go) from 1.31.0 to 1.32.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.31.0...v1.32.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-11 20:29:03 -05:00
Pasha Kostohrys
76537ce557 chore: rename force-prompts-enabled to prompts-enabled flag name (#20752)
* chore: rename force-prompts-enabled to prompts-enabled flag name

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* chore: rename force-prompts-enabled to prompts-enabled flag name

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-11-11 13:42:25 -05:00
Matthieu MOREL
0da5744788 chore: use testify instead of testing.Fatal or testing.Error in test (#20754)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-11-11 17:55:52 +02:00
Matthieu MOREL
6b3e532194 chore: use testify instead of testing.Fatal or testing.Error in cmd (#20750)
* chore: use testify instead of testing.Fatal or testing.Error in cmd

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* chore: use testify instead of testing.Fatal or testing.Error in cmd

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

---------

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-11-11 17:55:30 +02:00
Matthieu MOREL
a6cce1d0b3 chore: use testify instead of testing.Fatal or testing.Error in util (#20751)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-11-11 17:55:11 +02:00
renovate[bot]
b39f3b15fb chore(deps): update module github.com/golangci/golangci-lint to v1.62.0 (#20737)
* chore(deps): update module github.com/golangci/golangci-lint to v1.62.0

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix lint issues

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-11-11 05:28:48 +00:00
dependabot[bot]
4a66a2a1ea chore(deps): bump golang.org/x/net from 0.30.0 to 0.31.0 (#20742)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.30.0 to 0.31.0.
- [Commits](https://github.com/golang/net/compare/v0.30.0...v0.31.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-11 04:58:08 +00:00
dependabot[bot]
0066b0ab9d chore(deps): bump tj-actions/changed-files from 45.0.3 to 45.0.4 (#20739)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 45.0.3 to 45.0.4.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](c3a1bb2c99...4edd678ac3)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-11 04:57:31 +00:00
dependabot[bot]
1fba4ea049 chore(deps): bump SonarSource/sonarqube-scan-action from 3.0.0 to 3.1.0 (#20740)
Bumps [SonarSource/sonarqube-scan-action](https://github.com/sonarsource/sonarqube-scan-action) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/sonarsource/sonarqube-scan-action/releases)
- [Commits](884b79409b...13990a6956)

---
updated-dependencies:
- dependency-name: SonarSource/sonarqube-scan-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-11 04:57:06 +00:00
dependabot[bot]
a8f95dcb0d chore(deps): bump github.com/fsnotify/fsnotify from 1.7.0 to 1.8.0 (#20629)
Bumps [github.com/fsnotify/fsnotify](https://github.com/fsnotify/fsnotify) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/fsnotify/fsnotify/releases)
- [Changelog](https://github.com/fsnotify/fsnotify/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fsnotify/fsnotify/compare/v1.7.0...v1.8.0)

---
updated-dependencies:
- dependency-name: github.com/fsnotify/fsnotify
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-10 21:02:20 -05:00
Matthieu MOREL
2998687416 chore: enable perfsprint linter (#20685)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-11-10 21:00:57 -05:00
github-actions[bot]
345d81ebf0 [Bot] docs: Update Snyk reports (#20734)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-11-11 02:00:51 +00:00
Matthieu MOREL
7cc5907be3 chore: use testify instead of testing.Fatal or testing.Error in applicationset (#20726)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-11-10 20:58:35 -05:00
Will Hu
5d0a3e6e9a add flaglerhealth.io to userlist (#20724) 2024-11-08 14:49:10 -08:00
renovate[bot]
aa1267aa8b chore(deps): update group golang to v1.23.3 (#20686)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-08 14:21:53 -08:00
dependabot[bot]
cc7c21ea1e chore(deps): bump library/golang in /test/container (#20700)
Bumps library/golang from 1.23.1 to 1.23.3.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 14:21:22 -08:00
dependabot[bot]
146c1bb9b0 chore(deps): bump golang.org/x/crypto from 0.28.0 to 0.29.0 (#20707)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.28.0 to 0.29.0.
- [Commits](https://github.com/golang/crypto/compare/v0.28.0...v0.29.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 14:20:36 -08:00
Edwin Smulders
acfc03e2c2 Fix minor grammatical error in operator manual overview (#20691)
Signed-off-by: Edwin Smulders <edwin@edwinsmulders.eu>
2024-11-08 21:46:40 +01:00
dependabot[bot]
b78f209716 chore(deps): bump golang.org/x/term from 0.25.0 to 0.26.0 (#20705)
Bumps [golang.org/x/term](https://github.com/golang/term) from 0.25.0 to 0.26.0.
- [Commits](https://github.com/golang/term/compare/v0.25.0...v0.26.0)

---
updated-dependencies:
- dependency-name: golang.org/x/term
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 17:49:06 +00:00
dependabot[bot]
556b8c6d5d chore(deps): bump golang.org/x/oauth2 from 0.23.0 to 0.24.0 (#20708)
Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from 0.23.0 to 0.24.0.
- [Commits](https://github.com/golang/oauth2/compare/v0.23.0...v0.24.0)

---
updated-dependencies:
- dependency-name: golang.org/x/oauth2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 17:48:32 +00:00
dependabot[bot]
c68776e32a chore(deps): bump goreleaser/goreleaser-action from 6.0.0 to 6.1.0 (#20701)
Bumps [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) from 6.0.0 to 6.1.0.
- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)
- [Commits](286f3b13b1...9ed2f89a66)

---
updated-dependencies:
- dependency-name: goreleaser/goreleaser-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 12:35:02 -05:00
dependabot[bot]
0eaa3d44d2 chore(deps): bump golang.org/x/sync from 0.8.0 to 0.9.0 (#20709)
Bumps [golang.org/x/sync](https://github.com/golang/sync) from 0.8.0 to 0.9.0.
- [Commits](https://github.com/golang/sync/compare/v0.8.0...v0.9.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sync
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 08:40:55 -08:00
Jason Hall
4776e486a3 chore: update azure/kubelogin to address CVE (#20578)
* update azure/kubelogin to address CVE

Signed-off-by: Jason Hall <jason@chainguard.dev>

* actually emit token

Signed-off-by: Jason Hall <jason@chainguard.dev>

* update deps, go mod tidy

Signed-off-by: Jason Hall <jason@chainguard.dev>

* fix go.sum

Signed-off-by: Jason Hall <jason@chainguard.dev>

* bcho's suggestion

Signed-off-by: Jason Hall <jason@chainguard.dev>

---------

Signed-off-by: Jason Hall <jason@chainguard.dev>
2024-11-08 10:34:52 -05:00
Pasha Kostohrys
e2bc96bb86 fix: Ability to disable Server Side Apply on individual resource level (#20697)
* fix: Ability to disable Server Side Apply on individual resource level

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix: Ability to disable Server Side Apply on individual resource level

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix: Ability to disable Server Side Apply on individual resource level

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* chore: improve doc

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-11-08 10:54:43 +02:00
dependabot[bot]
b652b6aacb chore(deps): bump chromedriver from 130.0.2 to 130.0.4 in /ui-test (#20687)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 130.0.2 to 130.0.4.
- [Commits](https://github.com/giggio/node-chromedriver/compare/130.0.2...130.0.4)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 10:35:32 +02:00
dependabot[bot]
21fa481495 chore(deps): bump library/golang from 1.23.1 to 1.23.3 in /test/remote (#20703)
Bumps library/golang from 1.23.1 to 1.23.3.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 10:35:18 +02:00
dependabot[bot]
aac69803ae chore(deps): bump golang.org/x/time from 0.7.0 to 0.8.0 (#20704)
Bumps [golang.org/x/time](https://github.com/golang/time) from 0.7.0 to 0.8.0.
- [Commits](https://github.com/golang/time/compare/v0.7.0...v0.8.0)

---
updated-dependencies:
- dependency-name: golang.org/x/time
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 10:35:07 +02:00
Andrii Korotkov
a7ff791ba5 chore: Don't degrade PDB on InsufficientPods (#20171) (#20665)
Closes #20171

There are valid use cases for InsufficientPods, e.g. running some jobs or tests that don't want to be terminated. See the discussion on the issue for more details. So don't degrade the PDB on InsufficientPods condition.

This needs to be cherry picked to 2.13, as many people may not upgrade otherwise.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-11-07 09:09:52 -08:00
Andrii Korotkov
3c366edc24 chore: Improve a sync with replace warning (#14161) (#20638)
Helps with #14161

Tell more about possible practical implications of sync with replace such as pods scaling down to min replicas.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-11-07 11:30:57 -05:00
Soumya Ghosh Dastidar
17c412e3f3 fix: check for source position when --show-params is set (#20682)
Signed-off-by: Soumya Ghosh Dastidar <gdsoumya@gmail.com>
2024-11-06 19:04:20 +00:00
dependabot[bot]
35b9158418 chore(deps): bump github.com/xanzy/go-gitlab from 0.112.0 to 0.113.0 (#20676)
Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.112.0 to 0.113.0.
- [Release notes](https://github.com/xanzy/go-gitlab/releases)
- [Changelog](https://github.com/xanzy/go-gitlab/blob/main/releases_test.go)
- [Commits](https://github.com/xanzy/go-gitlab/compare/v0.112.0...v0.113.0)

---
updated-dependencies:
- dependency-name: github.com/xanzy/go-gitlab
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-06 11:09:40 -05:00
Pasha Kostohrys
4a38442b99 feat: move appset delete confirmation to new prompt logic (#20677)
* feat: move appset delete confirmation to new prompt logic

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: move appset delete confirmation to new prompt logic

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: move appset delete confirmation to new prompt logic

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-11-06 17:11:07 +02:00
Pasha Kostohrys
881025b3ca chore: cover cli utils and prompts utils with tests (#20674) 2024-11-05 17:28:23 -05:00
Max Lancaster
b14f1d13a6 Add Alarm.com to users list. (#20672)
Signed-off-by: Max Lancaster <max.lancaster@gmail.com>
2024-11-05 23:22:36 +02:00
Pasha Kostohrys
b9d5387979 feat: adopt delete app confirmation to new prompt util (#20664)
* feat: adopt delete app confirmation to new prompt util

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: adopt delete app confirmation to new prompt util

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: adopt delete app confirmation to new prompt util

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: adopt delete app confirmation to new prompt util

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* chore: remove type where it is not needed

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-11-05 15:41:49 +00:00
Andrii Korotkov
d963b61350 chore: Add some empty dir volume mounts for the application controller (#19474) (#19480)
Closes #19474

Kube cache couldn't be used on read-only root file system leading to errors as revealed with `--gloglevel` equal to 6.
Create an empty dir mount for `/tmp` and override `KUBECACHEDIR` to be in `/tmp`.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-11-05 09:14:42 -05:00
변재한
5138dd5118 feat: add orphaned resource count metric (#20521)
Signed-off-by: jaehanbyun <awbrg789@naver.com>
2024-11-05 08:18:36 -05:00
Pasha Kostohrys
36ef5639da feat: add prompting to confirm application commands (#20658)
Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-11-04 22:10:29 +00:00
Pasha Kostohrys
262059346b feat: add prompting to confirm project window deletion (#20656)
* feat: add prompting to confirm project window deletion

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: add prompting to confirm project window deletion

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: add prompting to confirm project window deletion

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-11-04 16:37:16 -05:00
Pasha Kostohrys
621330c11b feat: add prompting to confirm account token deletion (#20654)
Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-11-04 16:10:26 -05:00
Keith Chong
8cf990bced fix: Rollback multi-source apps; 2nd follow-up to PR 14124 (#20566)
* fix: Rollback multi-source apps; 2nd follow-up to PR 14124

Signed-off-by: Keith Chong <kykchong@redhat.com>

* Pull out styles changes; Make arrows more pronounced

Signed-off-by: Keith Chong <kykchong@redhat.com>

* Lint issue again

Signed-off-by: Keith Chong <kykchong@redhat.com>

* More lint errors. (Need to update my linter)

Signed-off-by: Keith Chong <kykchong@redhat.com>

* Simplify code

Signed-off-by: Keith Chong <kykchong@redhat.com>

---------

Signed-off-by: Keith Chong <kykchong@redhat.com>
2024-11-04 16:53:17 +02:00
Alexandre Gaudreault
a68d057c9d fix(server): accept HTTP/1.1 for backward compatibility (#20639)
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-11-04 09:41:48 -05:00
dependabot[bot]
16649c64f8 chore(deps-dev): bump @types/node from 22.8.4 to 22.8.7 in /ui-test (#20647)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.8.4 to 22.8.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-04 07:56:14 -05:00
dependabot[bot]
df54a43e2e chore(deps): bump chromedriver from 130.0.1 to 130.0.2 in /ui-test (#20648)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 130.0.1 to 130.0.2.
- [Commits](https://github.com/giggio/node-chromedriver/compare/130.0.1...130.0.2)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-04 07:55:59 -05:00
dependabot[bot]
d7731790fd chore(deps): bump github.com/golang-jwt/jwt/v4 from 4.5.0 to 4.5.1 (#20649)
Bumps [github.com/golang-jwt/jwt/v4](https://github.com/golang-jwt/jwt) from 4.5.0 to 4.5.1.
- [Release notes](https://github.com/golang-jwt/jwt/releases)
- [Changelog](https://github.com/golang-jwt/jwt/blob/main/VERSION_HISTORY.md)
- [Commits](https://github.com/golang-jwt/jwt/compare/v4.5.0...v4.5.1)

---
updated-dependencies:
- dependency-name: github.com/golang-jwt/jwt/v4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-04 07:55:47 -05:00
Michael Crenshaw
438e01bc4f fix(codegen): use kube_codegen.sh deepcopy and client gen correctly (#20644) 2024-11-03 22:31:04 -05:00
Alexandre Gaudreault
b187fbbaf7 fix(redis): CPU stuck at 100% after rolling update (#20645)
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-11-03 14:25:59 -05:00
Ashu
d761c94b7d fix(ui): fix the slider tansition (#20641) 2024-11-01 16:50:24 -04:00
dependabot[bot]
11267b912b chore(deps): bump softprops/action-gh-release from 2.0.8 to 2.0.9 (#20631)
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.0.8 to 2.0.9.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](c062e08bd5...e7a8f85e1c)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-01 17:13:40 +02:00
dependabot[bot]
efd196407a chore(deps): bump selenium-webdriver from 4.25.0 to 4.26.0 in /ui-test (#20633)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.25.0 to 4.26.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-4.25.0...selenium-4.26.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-01 17:13:20 +02:00
Dillen Padhiar
59ea2a809e feat: support Suspended state for MonoVertexRollout (#20583)
Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>
2024-10-31 13:53:41 -04:00
James McShane
3988861edf feat(cmp): parameter to enable git creds to be shared from repo server to the plugin (#15107)
Signed-off-by: jmcshane <james.mcshane@superorbital.io>
2024-10-31 13:35:08 -04:00
Michael Crenshaw
f89e1cf80f docs(rbac): clarify glob pattern behavior for fine-grain RBAC (#20624)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-31 17:33:45 +00:00
Pasha Kostohrys
8a4e7e021f feat: add prompting to confirm project role deletion (#20613)
* Revert "fix(ui): Prevent versionId 0 Error on New Applications with No History (#20574)"

This reverts commit 33ecbbc4a8.

* feat: add prompting to confirm project role deletion

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* Revert "Revert "fix(ui): Prevent versionId 0 Error on New Applications with No History (#20574)""

This reverts commit cecf8f49fd.

* feat: add prompting to confirm project role deletion

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-10-31 14:14:29 +00:00
Nikolai Momot
79abbbe4ec chore: Add TextNow to USERS.md (#20602)
Signed-off-by: Nikolai.Momot <nikolai.momot@textnow.com>
2024-10-31 04:00:47 -10:00
Pasha Kostohrys
83b1b6c574 feat: add prompting to confirm project deletion (#20612)
* Revert "fix(ui): Prevent versionId 0 Error on New Applications with No History (#20574)"

This reverts commit 33ecbbc4a8.

* feat: add prompting to confirm project deletion

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* Revert "Revert "fix(ui): Prevent versionId 0 Error on New Applications with No History (#20574)""

This reverts commit cecf8f49fd.

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-10-31 08:58:11 -04:00
Pasha Kostohrys
d44d7ec043 feat: add prompting to confirm application resource deletion (#20611)
* Revert "fix(ui): Prevent versionId 0 Error on New Applications with No History (#20574)"

This reverts commit 33ecbbc4a8.

* feat: add prompting to confirm app resource deletion

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* Revert "Revert "fix(ui): Prevent versionId 0 Error on New Applications with No History (#20574)""

This reverts commit cecf8f49fd.

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-10-31 08:57:24 -04:00
Alexandre Gaudreault
a7637cd106 fix(server): missing selected ALPN property (#20579)
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-10-31 13:50:45 +02:00
dependabot[bot]
c90deaabd6 chore(deps): bump @types/selenium-webdriver in /ui-test (#20589)
Bumps [@types/selenium-webdriver](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/selenium-webdriver) from 4.1.26 to 4.1.27.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/selenium-webdriver)

---
updated-dependencies:
- dependency-name: "@types/selenium-webdriver"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-31 13:22:11 +02:00
dependabot[bot]
14ba2216d7 chore(deps-dev): bump @types/node from 22.7.9 to 22.8.4 in /ui-test (#20588)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.7.9 to 22.8.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-31 13:21:55 +02:00
Michael Crenshaw
e861b550e0 fix(diff): avoid cache miss in server-side diff (#20605)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-30 21:35:23 -04:00
Siddhesh Ghadi
eb10b70e8a feat: Add ability to hide certain annotations on secret resources (#18216)
Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>
2024-10-30 09:52:37 -07:00
Yiwei Gong
83eb0b1871 rerender when extensions update (#20559)
Signed-off-by: Yiwei Gong <imwithye@gmail.com>
2024-10-30 08:22:19 -07:00
q-yusufmahtab
38546a5e43 Fix docs/user-guide/diffing.md code block (#20596)
Signed-off-by: Yusuf Mahtab <yusufmahtab@quantexa.com>
2024-10-30 08:12:33 -06:00
austin5219
092bb7328c fix(pkce): 20111 PKCE auth flow does not return user to previous path like dex auth flow (#20202)
* Adding non-default basehref support for PKCE auth flow

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>

* Adding ; for linting

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>

* removing hook function

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>

* Moving unauthorized error handling to class component to access context for error handling within 401 error

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>

* Store the subsrition handle to close in unmount

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>

* reorder imports

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>

* Actually saving the subscriptions now

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>

* returning the 401 subscription from helper function

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>

* Handle the promise of a subscription

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>

* Removing then from non async subscribe

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>

* Linter fixes

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>

* Adding path caching to sessionStorage on pkceLogin and redirect step to cached path if available in pkceCallback to mirror Dex functionality

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>

---------

Signed-off-by: austin5219 <3936059+austin5219@users.noreply.github.com>
2024-10-30 12:37:18 +02:00
Preethi Sureshkumar
d408909df6 docs: Update Dex OIDC example (#20545)
* docs: Update Dex OIDC example

Type for using OIDC claim should be `oidc` instead of `OIDC`.

Signed-off-by: Preethi Sureshkumar <40830235+preethi-sv@users.noreply.github.com>

* docs: Update Dex OIDC example

Signed-off-by: Preethi Sureshkumar <40830235+preethi-sv@users.noreply.github.com>

---------

Signed-off-by: Preethi Sureshkumar <40830235+preethi-sv@users.noreply.github.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-10-30 04:29:52 +00:00
Shubham Zanzad
d8fe100278 Docs: Added prerequisites for argoCD, fork and clone repository, upstreaming, common make targets, steps before submitting a PR. (#20540)
Signed-off-by: Shubham Zanzad <shubhamzanzad25@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-10-30 04:28:23 +00:00
dependabot[bot]
bb1e75fe82 chore(deps): bump actions/setup-go from 5.0.2 to 5.1.0 (#20529)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 5.0.2 to 5.1.0.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](0a12ed9d6a...41dfa10bad)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-29 20:40:35 +00:00
dependabot[bot]
683d030843 chore(deps): bump actions/setup-node from 4.0.4 to 4.1.0 (#20528)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.4 to 4.1.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](0a44ba7841...39370e3970)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-29 20:37:38 +00:00
Chirag Jain
73fbcc9ce4 chore: add bajaj finserv health ltd. in list of users (#20555)
Signed-off-by: Chirag Jain <chirag.jain1@bajajfinserv.in>
2024-10-29 15:42:01 -04:00
Julie Vogelman
9687619541 fix: updates to health status for Numaplane resources (#20544)
* fix: updates to health status for Numaplane resources

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* health checks

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* fix testdata path

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* additional health check tests

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* temporary file removal

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* add file renamed

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* fix: empty commit

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* move check for no status

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* fix: empty commit

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* fix: empty commit

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

---------

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>
2024-10-29 15:32:01 -04:00
ABBOUD Moncef
76fbc1f0c9 fix(ci): ignore temporary files when checking for out of bound symlinks (#20527)
Signed-off-by: cef <moncef.abboud95@gmail.com>
2024-10-29 14:31:11 -04:00
renovate[bot]
3625689264 chore(deps): update dependency pymdown-extensions to v10.12 (#20567)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-29 11:54:17 -04:00
SuminSSon
4dcbbd7d24 docs: correct typos in documentation (#20569)
* docs: update Cluster Generator example for cluster name accuracy

Signed-off-by: SuminSSon <itoodo12@gmail.com>

* docs: standardized 'GitPod' to 'Gitpod' for consistency

Signed-off-by: SuminSSon <itoodo12@gmail.com>

---------

Signed-off-by: SuminSSon <itoodo12@gmail.com>
2024-10-29 17:25:30 +02:00
pasha-codefresh
33ecbbc4a8 fix(ui): Prevent versionId 0 Error on New Applications with No History (#20574) 2024-10-29 10:06:00 -04:00
pasha-codefresh
29d52299da feat: add prompting to confirm delete certificate (#20547)
* feat: add prompting to confirm delete certificate

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: add prompting to confirm delete certificate

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-10-28 15:01:30 +00:00
pasha-codefresh
9b6d3a9a95 feat: add prompting to confirm prune during backup import (#20546)
* feat: add prompting to confirm prune during backup import

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: add prompting to confirm prune during backup import

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: add prompting to confirm prune during backup import

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-10-28 08:11:09 -04:00
pasha-codefresh
eb6d2e635f feat: add prompting to confirm remove of repository credentials (#20541)
* feat: add prompting to confirm remove of repository credentials

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: add prompting to confirm remove of repository credentials

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-10-28 07:18:41 -04:00
Ramesh Gaikwad
5c01cf6ebf chore: improve error logs in commands/admin/app.go (#20549)
* chore: imporve error response, wrap context with error

Signed-off-by: Ramesh Gaikwad <rameshgkwd05@gmail.com>

* correct error messge

Signed-off-by: Ramesh Gaikwad <rameshgkwd05@gmail.com>

---------

Signed-off-by: Ramesh Gaikwad <rameshgkwd05@gmail.com>
2024-10-27 10:09:33 +00:00
github-actions[bot]
3bf226d709 [Bot] docs: Update Snyk reports (#20551)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-10-27 10:52:41 +02:00
pasha-codefresh
16e7517044 feat: add prompting to confirm deletion of gpg public key (#20539) 2024-10-26 09:26:55 +03:00
dependabot[bot]
745f1cc348 chore(deps): bump sigs.k8s.io/controller-runtime from 0.19.0 to 0.19.1 (#20530)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.19.0 to 0.19.1.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.19.0...v0.19.1)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 21:45:34 +03:00
dependabot[bot]
7eb2a198b1 chore(deps): bump chromedriver from 130.0.0 to 130.0.1 in /ui-test (#20515)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 130.0.0 to 130.0.1.
- [Commits](https://github.com/giggio/node-chromedriver/compare/130.0.0...130.0.1)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-10-25 21:45:17 +03:00
변재한
4e215234ad doc: Update Show Orphaned Button Screenshot in Orphaned Resources Monitoring Documentation (#20533)
Signed-off-by: jaehanbyun <awbrg789@naver.com>
2024-10-25 05:57:33 -10:00
dependabot[bot]
a0b694384c chore(deps): bump library/redis in /test/container (#20494)
Bumps library/redis from `00faee9` to `a06cea9`.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-10-25 14:50:10 +03:00
pasha-codefresh
604c75b00d chore: change invalid comment (#20500) 2024-10-25 07:19:59 -04:00
dependabot[bot]
adf08ed87f chore(deps-dev): bump @types/node from 22.7.6 to 22.7.9 in /ui-test (#20514)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.7.6 to 22.7.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 10:57:08 +03:00
dependabot[bot]
1a478a531b chore(deps): bump bitnami/kubectl in /test/container (#20516)
Bumps bitnami/kubectl from `b509ab6` to `4d757d9`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 10:56:53 +03:00
dependabot[bot]
e9ff075610 chore(deps): bump actions/cache from 4.1.1 to 4.1.2 (#20493)
Bumps [actions/cache](https://github.com/actions/cache) from 4.1.1 to 4.1.2.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](3624ceb22c...6849a64899)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 10:38:58 +03:00
renovate[bot]
229ac1bf9d chore(deps): update docker.io/library/golang:1.23.2 docker digest to ad5c126 (#20419)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-25 10:38:37 +03:00
david-wu-octopus
b5d8eddb82 feat: Add reusable interactive prompts and configure command (issue #19528) (#19637)
* Add `Prompt`, with `prompts.enabled` setting in `argocd-cm`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Make `SettingsOpts`, `SettingsOpts.ArgocdCMPath`, `SettingsOpts.CreateSettingsManager()`  and `commandContext.CreateSettingsManager()` exportable

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add `prompt_test.go`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Refactor `NewPrompt()` and move into new package `utils`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Update `NewPrompt()` to use local config

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add `NewConfigurationCommand()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Move `prompt_test.go`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Remove `prompt_test.go` for now

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add back and update `prompt_test.go`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add `configuration_test.go`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Fix linting issues

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Fix linting issues

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Reverse early-termination logic in `Confirm()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Rename `ArgocdCMPath` to `argocdCMPath`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Rename `SettingsOpts` to `settingsOpts`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Rename `CreateSettingsManager()` to `createSettingsManager()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Rename `configuration` to `configure`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Further rename `configuration` to `configure`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Remove redundant Argo CD ConfigMap logic

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Fix terminal output spacing

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Make `argocd configure` use local config value as the default value for `--prompts-enabled`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add global CLI flag `--force-prompts-enabled`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Update existing `prompt_test.go` test cases

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add test case for `(p *Prompt).Confirm()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add test cases for `GetBoolFlagWithFallback()` to `env_test.go`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Format imports

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Further format imports and remove unused variable

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Again format imports

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add fallback to `GetPromptsEnabled()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Fix bug in `GetPromptsEnabled()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Fix missing import

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add auto-generated docs for `argocd configure`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add auto-generated docs for new global CLI flag `--force-prompts-enabled`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Update `NewPrompt()` to receive a `bool` rather than `*apiclient.ClientOptions` arg

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Remove arg `fallback` from `GetPromptsEnabled()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add arg `useCLIOpts bool` to `GetPromptsEnabled()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Make `config.LoadFlags()` exportable

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add tests for `GetPromptsEnabled()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Fix linting errors in tests

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Run `make codegen-local`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

---------

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
2024-10-25 10:21:23 +03:00
dependabot[bot]
f4577e3b5a chore(deps): bump github.com/ktrysmt/go-bitbucket from 0.9.80 to 0.9.81 (#20397)
Bumps [github.com/ktrysmt/go-bitbucket](https://github.com/ktrysmt/go-bitbucket) from 0.9.80 to 0.9.81.
- [Release notes](https://github.com/ktrysmt/go-bitbucket/releases)
- [Commits](https://github.com/ktrysmt/go-bitbucket/compare/v0.9.80...v0.9.81)

---
updated-dependencies:
- dependency-name: github.com/ktrysmt/go-bitbucket
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 09:34:28 +03:00
Chris Fidao
21026dba43 fixed formatting issue + added a few tidbits (#20522)
Signed-off-by: Chris Fidao <fideloper@gmail.com>
2024-10-25 09:09:46 +03:00
Rohen
1675b0b2ae chore: Update USERS.md (#20513) 2024-10-24 09:24:40 -07:00
dependabot[bot]
8c00cf0ce1 chore(deps): bump http-proxy-middleware from 2.0.4 to 2.0.7 in /ui (#20518) 2024-10-24 08:00:40 -04:00
Chris Fidao
c4453999f2 docs: Declarative argo clusters docs update for EKS (#20503)
* first stab at updating argo cd declaritive docs for eks

Signed-off-by: Chris Fidao <fideloper@gmail.com>

* some refinements

Signed-off-by: Chris Fidao <fideloper@gmail.com>

* Update docs/operator-manual/declarative-setup.md

Co-authored-by: Nitish Kumar <justnitish06@gmail.com>
Signed-off-by: Chris Fidao <fideloper@gmail.com>

---------

Signed-off-by: Chris Fidao <fideloper@gmail.com>
Co-authored-by: Nitish Kumar <justnitish06@gmail.com>
2024-10-24 05:23:52 -06:00
Alexander Matyushentsev
7c9bd2d2d3 feat: application resource deletion protection (#20497)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-10-24 00:08:24 -07:00
Leonardo Luz Almeida
212efa4914 feat: allow individual extension configs (#20491)
* feat: allow individual extension configs

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* fix test

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* update ext docs

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* + docs

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* pr review

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* address review comments

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

---------

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
2024-10-23 12:33:53 -04:00
Yash Talele
5b25b281c8 Fixed incorrect pluralization on resources (#20468)
Extra s was being added to the resources. So, I am checking if the
resource is ending in 's' or not. If it is ending in 's' no change, but
if not then 's' is added at the end of the word.

Signed-off-by: Yash Talele <yashrtalele@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-10-23 14:40:06 +00:00
Michael Crenshaw
0b48670ebb docs: clarify priority of health statuses (#20490)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-23 08:32:34 -06:00
ABBOUD Moncef
e953a2de8b fix(appset): avoid panic when no steps in rollingSync (#20357)
Signed-off-by: cef <moncef.abboud95@gmail.com>
2024-10-22 21:37:58 -04:00
dependabot[bot]
ea46572326 chore(deps): bump library/redis in /test/container (#20442)
Bumps library/redis from `5412098` to `00faee9`.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-22 00:55:54 -04:00
Rune Antonsen
ac69f5223c docs(applicationset): explain how to add repo credentials (#20453)
* docs(applicationset): add section explaining how to set up repo credentials for git generator

Signed-off-by: Rune Antonsen <rune.antonsen@gmail.com>

* Update docs/operator-manual/applicationset/Generators-Git.md

Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Rune Antonsen <rune.antonsen@gmail.com>

* Update docs/operator-manual/applicationset/Generators-Git.md

Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Rune Antonsen <rune.antonsen@gmail.com>

* Update docs/operator-manual/applicationset/Generators-Git.md

Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Rune Antonsen <rune.antonsen@gmail.com>

* Update docs/operator-manual/applicationset/Generators-Git.md

Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Rune Antonsen <rune.antonsen@gmail.com>

---------

Signed-off-by: Rune Antonsen <rune.antonsen@gmail.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-10-21 22:05:02 +02:00
Alexandre Gaudreault
aff5e6132b docs: document all unstable configurations (#20336) (#20438)
* overview

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* 12

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* document fields

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* spec path wildcard

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* order

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* move links to bottom

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-10-21 00:14:45 -04:00
github-actions[bot]
fdf250309f [Bot] docs: Update Snyk reports (#20465)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-10-20 12:12:45 +00:00
Michael Crenshaw
ec499bb070 fix(diff): avoid cache miss in server-side diff (#20423) (#20424)
* fix(diff): avoid cache miss in server-side diff (#20423)

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix silly mistakes

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-18 09:36:42 -04:00
Blake Pettersson
76104dae21 fix: don't disable buttons for multi-source apps (#20446)
With #20381 multi-source apps were not taken into account 🤦

Fixes #20445.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-10-18 03:16:59 -10:00
dependabot[bot]
e7e6f5bae9 chore(deps): bump github.com/redis/go-redis/v9 from 9.6.2 to 9.7.0 (#20441)
Bumps [github.com/redis/go-redis/v9](https://github.com/redis/go-redis) from 9.6.2 to 9.7.0.
- [Release notes](https://github.com/redis/go-redis/releases)
- [Changelog](https://github.com/redis/go-redis/blob/master/CHANGELOG.md)
- [Commits](https://github.com/redis/go-redis/compare/v9.6.2...v9.7.0)

---
updated-dependencies:
- dependency-name: github.com/redis/go-redis/v9
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-18 07:32:39 -04:00
dependabot[bot]
1d12fcfecf chore(deps): bump chromedriver from 129.0.4 to 130.0.0 in /ui-test (#20415)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 129.0.4 to 130.0.0.
- [Commits](https://github.com/giggio/node-chromedriver/compare/129.0.4...130.0.0)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-18 13:17:40 +03:00
dependabot[bot]
4e92079c91 chore(deps-dev): bump @types/node from 22.7.5 to 22.7.6 in /ui-test (#20414)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.7.5 to 22.7.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-18 13:14:46 +03:00
renovate[bot]
8b06307500 chore(deps): update node.js to v23 (#20413)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-18 13:09:53 +03:00
Michael Crenshaw
79ba36026a fix(ci): handle new k3s test version matrix (#20223) (#20427)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-17 16:05:38 -04:00
변재한
d1ef0f85fa fix(docs): ensure version dropdown sorts correctly regardless of browser language #20289 (#20322)
Signed-off-by: jaehanbyun <awbrg789@naver.com>
2024-10-17 10:06:44 -04:00
Michael Crenshaw
c216ece3a4 chore(server): better error message for missing action (#20408) (#20409)
* chore(server): better error message for missing action

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* Update util/lua/lua_test.go

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-17 09:28:41 -04:00
Pan Luo
4faf8dd11c fix: the unmatching template issue introduced from #20237 (#20410)
* Fix the unmatching template error

The error in the notification controller shows unmatching "{{end}}"
```
error in 'app-health-degraded' teams.potentialAction: template:
app-health-degraded:14: unexpected {{end}}"
```

Signed-off-by: Pan Luo <pan.luo@ubc.ca>

* update templates to match the install.yaml

Signed-off-by: Pan Luo <pan.luo@ubc.ca>

* fix inconsistent yaml block style formating

Signed-off-by: Pan Luo <pan.luo@ubc.ca>

---------

Signed-off-by: Pan Luo <pan.luo@ubc.ca>
2024-10-17 08:17:10 -04:00
Michael Crenshaw
f6eaaea769 fix(ui): display correct init info in Pod UI (#20387)
* fix(controller): change pod status calculate with sidecar

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

* fix(controller): add restartable sidecar count in total container display

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

* test UI, fix bugs

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

oops

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

indent

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

fix accidental duplication

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* apply recommendation

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: linghaoSu <linghao.su@daocloud.io>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: linghaoSu <linghao.su@daocloud.io>
2024-10-17 08:16:51 -04:00
Michael Crenshaw
9b15589729 docs(cli): fix example command (#20402)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-10-17 08:14:39 -04:00
Michael Crenshaw
dff4152e8e docs: update note about timeout.reconciliation (#20407)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-17 10:05:13 +02:00
Blake Pettersson
ed4c0ee713 fix(ui): source can in fact be undefined (#20381)
* fix(ui): source can in fact be `undefined`

The assumption that a source is always there is not always true. To
repro, create an app-of-apps containing a single app without any `source`
present. In the UI this will crash, horribly. This PR fixes that so
that instead of crashing the user will get useful info indicating what
is wrong with the app.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* chore(ui): some cr tweaks

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* chore(ui): some cr tweaks

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-10-16 21:55:17 -04:00
Matthieu MOREL
cc989251ef chore: enable thelper linter (#20405)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-10-16 17:37:03 +00:00
dependabot[bot]
f031f490e6 chore(deps): bump github.com/prometheus/client_golang (#20398)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.4 to 1.20.5.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.4...v1.20.5)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-10-16 10:48:26 -04:00
Matthieu MOREL
e0ebb02443 chore: enable usestdlibvars linter (#20399) 2024-10-16 07:54:00 -04:00
Sujin Kim
049ba0aab3 docs: correct typos in authz-authn.md and proxy-extensions.md (#20391)
* docs : correct typo from "bellow" to "below" in authz-authn.md

Signed-off-by: Sujin Kim <108571492+cowboysj@users.noreply.github.com>

* docs : correct typo from "modifiying" to "modifying" in extensions.md

Signed-off-by: Sujin Kim <108571492+cowboysj@users.noreply.github.com>

---------

Signed-off-by: Sujin Kim <108571492+cowboysj@users.noreply.github.com>
2024-10-16 00:39:21 +02:00
Linghao Su
e80de49043 fix(controller/ui): fix pod with sidecar state (#19843)
* fix(controller): change pod status calculate with sidecar

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

* fix(controller): add restartable sidecar count in total container display

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

* fix(controller): update info test case conditions

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Linghao Su <slh001@live.cn>

* fix(controller): add more test case to cover more conditions

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

* fix(ui): check is condition exist before for of

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

---------

Signed-off-by: linghaoSu <linghao.su@daocloud.io>
Signed-off-by: Linghao Su <slh001@live.cn>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-15 15:05:34 -04:00
pasha-codefresh
d16df525d7 feat: manage clusters via proxy (#20374)
* feat: proxy support

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: proxy support

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: proxy support

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix linter

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* small improvements

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* add cluster test

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix linter

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* change error message

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* override always will change proxy url

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-10-15 09:47:52 -07:00
dependabot[bot]
b2e52de591 chore(deps): bump go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc (#20376)
Bumps [go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc](https://github.com/open-telemetry/opentelemetry-go-contrib) from 0.55.0 to 0.56.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go-contrib/compare/zpages/v0.55.0...zpages/v0.56.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-15 09:38:04 -07:00
pasha-codefresh
a25378f1ef feat: appset scm generators and PR generators should be able to access only secrets related to appset (#20309) 2024-10-15 08:28:13 -04:00
dependabot[bot]
195de1a7ab chore(deps): bump github.com/redis/go-redis/v9 from 9.6.1 to 9.6.2 (#20377)
Bumps [github.com/redis/go-redis/v9](https://github.com/redis/go-redis) from 9.6.1 to 9.6.2.
- [Release notes](https://github.com/redis/go-redis/releases)
- [Changelog](https://github.com/redis/go-redis/blob/master/CHANGELOG.md)
- [Commits](https://github.com/redis/go-redis/compare/v9.6.1...v9.6.2)

---
updated-dependencies:
- dependency-name: github.com/redis/go-redis/v9
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-15 01:58:39 -04:00
dependabot[bot]
81785b861c chore(deps): bump github.com/xanzy/go-gitlab from 0.111.0 to 0.112.0 (#20378)
Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.111.0 to 0.112.0.
- [Release notes](https://github.com/xanzy/go-gitlab/releases)
- [Changelog](https://github.com/xanzy/go-gitlab/blob/main/releases_test.go)
- [Commits](https://github.com/xanzy/go-gitlab/compare/v0.111.0...v0.112.0)

---
updated-dependencies:
- dependency-name: github.com/xanzy/go-gitlab
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-15 01:58:14 -04:00
Michael Crenshaw
e654ed59f8 fix(cli): add missing resources and actions to cani CLI (#20347)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-14 22:32:40 -04:00
Michael Crenshaw
7ab5015691 docs: feature maturity page for alpha and beta features (#20336) (#20337)
* docs: feature maturity page for alpha and beta features (#20336)

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* typos

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-14 04:11:50 -10:00
Michael Crenshaw
0cdbc3cb3e chore: simplify 'get repo' API implementation (#20348)
* chore: simplify 'get repo' API implementation

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* import order

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-14 09:01:55 -04:00
dependabot[bot]
898c2b5902 chore(deps): bump github.com/bmatcuk/doublestar/v4 from 4.6.1 to 4.7.1 (#20363)
Bumps [github.com/bmatcuk/doublestar/v4](https://github.com/bmatcuk/doublestar) from 4.6.1 to 4.7.1.
- [Release notes](https://github.com/bmatcuk/doublestar/releases)
- [Commits](https://github.com/bmatcuk/doublestar/compare/v4.6.1...v4.7.1)

---
updated-dependencies:
- dependency-name: github.com/bmatcuk/doublestar/v4
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-14 08:58:36 -04:00
dependabot[bot]
e2c4b23701 chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc (#20361) 2024-10-14 12:36:47 +00:00
dependabot[bot]
e03d609a1c chore(deps): bump codecov/test-results-action from 1.0.0 to 1.0.1 (#20359) 2024-10-14 07:44:25 -04:00
dependabot[bot]
ed9d18f4e6 chore(deps): bump go.opentelemetry.io/otel from 1.30.0 to 1.31.0 (#20360) 2024-10-14 07:39:37 -04:00
kswadi
439edd0ef0 docs: added Podman based set up in contributors quick-start (#20367) 2024-10-14 07:38:41 -04:00
github-actions[bot]
a5a31a9539 [Bot] docs: Update Snyk reports (#20354)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-10-13 12:37:50 +00:00
Kunho Lee
9b11b21f00 fix: check err before use schedule and duration (#20043)
* fix: check err before use schedule and duration

Signed-off-by: daengdaengLee <gunho1020@gmail.com>

* test: add tests for invalid schedule and duration

Signed-off-by: daengdaengLee <gunho1020@gmail.com>

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

Signed-off-by: daengdaengLee <gunho1020@gmail.com>

* fix: use assert.Error or assert.NoError

Signed-off-by: daengdaengLee <gunho1020@gmail.com>

* fix: use require instead of assert

Signed-off-by: daengdaengLee <gunho1020@gmail.com>

---------

Signed-off-by: daengdaengLee <gunho1020@gmail.com>
2024-10-12 13:32:46 -04:00
Anton Gilgur
cf498f674d chore(deps): upgrade argo-ui, including breaking changes (#19655)
* chore(deps): upgrade `argo-ui`, including one breaking change

- upgrade to a7b01f9f00

- `moment` is no longer used internally by `argo-ui`, so change `Ticker` usage to account for this
  - CD should also remove the deprecated `moment` library for the same reasons as downstream and Workflows

Signed-off-by: Anton Gilgur <agilgur5@gmail.com>

* type-check and format fixes

Signed-off-by: Anton Gilgur <agilgur5@gmail.com>

* set `durationMs={0}` instead of `null`

bc in JS `0 || null == null`, so the edge case of a `0` duration caused the component to render just an empty string

Signed-off-by: Anton Gilgur <agilgur5@gmail.com>

* update argo-ui once more for deprecated durationMs removal

Signed-off-by: Anton Gilgur <agilgur5@gmail.com>

---------

Signed-off-by: Anton Gilgur <agilgur5@gmail.com>
2024-10-11 18:58:08 -04:00
Ashley Manraj
86769fc4db docs: Update USERS.md (#20349)
Added Pvotal technologies to the official user list

Signed-off-by: Ashley Manraj <90852185+a-manraj-pvotal@users.noreply.github.com>
2024-10-11 16:24:19 -04:00
ABBOUD Moncef
27eebaa53c feat(appset): add 'project' to the Cluster Generator params (#20338)
Signed-off-by: cef <moncef.abboud95@gmail.com>
2024-10-11 17:02:27 +00:00
Dillen Padhiar
b05cafdfca feat: add custom actions for Numaflow CRDs (#20332)
* feat: add pause/unpause actions for Numaflow CRDs

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* fix: codegen

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

---------

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>
2024-10-11 16:14:58 +00:00
Michael Crenshaw
b8f85c9500 fix(ci): get correct previous release version for release notes (#19443) (#20315)
* better release notes

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* work on fork

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* don't do unnecessary stuff

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix path

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix path

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* help debug

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* refactor, clean up

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* use a workspace to avoid touching the main go.mod

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-11 11:50:31 -04:00
ALIHAMZA99
d542b023f2 docs: updating links to the directory and wording (#20335)
* docs: updating links to the directory and wording

Signed-off-by: alnoor <alihamzanoor99@gmail.com>

* Update docs/developer-guide/test-e2e.md

Co-authored-by: rumstead <37445536+rumstead@users.noreply.github.com>
Signed-off-by: ALIHAMZA99 <46565563+ALIHAMZA99@users.noreply.github.com>

* Update links

Signed-off-by: ALIHAMZA99 <46565563+ALIHAMZA99@users.noreply.github.com>

* Update links

Signed-off-by: ALIHAMZA99 <46565563+ALIHAMZA99@users.noreply.github.com>

* Update links

Signed-off-by: ALIHAMZA99 <46565563+ALIHAMZA99@users.noreply.github.com>

* Update links

Signed-off-by: ALIHAMZA99 <46565563+ALIHAMZA99@users.noreply.github.com>

---------

Signed-off-by: alnoor <alihamzanoor99@gmail.com>
Signed-off-by: ALIHAMZA99 <46565563+ALIHAMZA99@users.noreply.github.com>
Co-authored-by: rumstead <37445536+rumstead@users.noreply.github.com>
2024-10-11 11:09:20 -04:00
dependabot[bot]
47f63f0d14 chore(deps): bump chromedriver from 129.0.3 to 129.0.4 in /ui-test (#20340)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 129.0.3 to 129.0.4.
- [Commits](https://github.com/giggio/node-chromedriver/compare/129.0.3...129.0.4)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-11 09:47:23 -04:00
dependabot[bot]
94e81cdae5 chore(deps): bump github.com/xanzy/go-gitlab from 0.110.0 to 0.111.0 (#20339)
Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.110.0 to 0.111.0.
- [Release notes](https://github.com/xanzy/go-gitlab/releases)
- [Changelog](https://github.com/xanzy/go-gitlab/blob/main/releases_test.go)
- [Commits](https://github.com/xanzy/go-gitlab/compare/v0.110.0...v0.111.0)

---
updated-dependencies:
- dependency-name: github.com/xanzy/go-gitlab
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-11 08:46:23 -04:00
Nitish Kumar
ed311fea13 add docs to build site locally (#20342)
Signed-off-by: nitishfy <justnitish06@gmail.com>
2024-10-11 05:20:38 -07:00
Alexandre Gaudreault
29c59ab135 Revert "feat: exclude Endpoints and EndpointSlices Kubernetes resource by default" (#20334)
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-10-10 17:43:16 +00:00
변재한
8ebf4a8841 feat: Enable ignoreResourceUpdate by default #19992 (#20303)
Signed-off-by: jaehanbyun <awbrg789@naver.com>
2024-10-10 12:39:04 -04:00
Alexander Matyushentsev
6b5cdc764d docs: document server side pagination proposal (#17222)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-10-10 12:02:05 -04:00
yan xu
d85a1dee23 fix(#18495): Add Alternate color of resources in sync panel (#19250)
* add Alternate color of resources in sync panel

Co-authored-by: Xu Yan <Yan.Xu@fmr.com>
Co-authored-by: Jessie Teng <jessie.teng@fmr.com>
Signed-off-by: Xu, Yan <Yan.Xu@fmr.com>

* format code

Signed-off-by: Xu, Yan <Yan.Xu@fmr.com>

* update style based on maintainer's feedback

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>

* Add these styles to prevent overflow

Signed-off-by: Xu, Yan <Yan.Xu@fmr.com>

* add style base on maintainer feedback

Signed-off-by: Xu, Yan <Yan.Xu@fmr.com>

---------

Signed-off-by: Xu, Yan <Yan.Xu@fmr.com>
Signed-off-by: Jessie Teng <jessie.teng@fmr.com>
Co-authored-by: Jessie Teng <jessie.teng@fmr.com>
2024-10-10 16:46:29 +03:00
dependabot[bot]
e144d5c189 chore(deps): bump github.com/cyphar/filepath-securejoin (#20319)
Bumps [github.com/cyphar/filepath-securejoin](https://github.com/cyphar/filepath-securejoin) from 0.3.3 to 0.3.4.
- [Release notes](https://github.com/cyphar/filepath-securejoin/releases)
- [Changelog](https://github.com/cyphar/filepath-securejoin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cyphar/filepath-securejoin/compare/v0.3.3...v0.3.4)

---
updated-dependencies:
- dependency-name: github.com/cyphar/filepath-securejoin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-10 11:25:50 +03:00
dependabot[bot]
c4fb5d9b2a chore(deps): bump chromedriver from 129.0.2 to 129.0.3 in /ui-test (#20317)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 129.0.2 to 129.0.3.
- [Commits](https://github.com/giggio/node-chromedriver/compare/129.0.2...129.0.3)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-10 11:25:06 +03:00
renovate[bot]
77b57af230 chore(deps): update docker.io/library/golang:1.23.2 docker digest to a7f2fc9 (#20318)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-10 11:20:41 +03:00
dependabot[bot]
7031387b7f chore(deps): bump actions/upload-artifact from 4.4.2 to 4.4.3 (#20320)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.4.2 to 4.4.3.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](84480863f2...b4b15b8c7c)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-10 11:20:25 +03:00
Rungsikorn Rungsikavarnich
19613a20fb feat(controller): support Istio ServiceEntry network node #20270 (#20273)
add serviceentry node to network diagram and link to workload
by workloadSelector label reference

Signed-off-by: zapkub <rungsikorn@me.com>
2024-10-10 11:19:39 +03:00
Michael Crenshaw
45bbd46287 chore(ui): fix sonarcloud warning (#16496)
* chore(ui): fix sonarcloud warning

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* accept suggestion

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-10-10 11:14:40 +03:00
Linghao Su
24e67df099 feat(ui): support enable word wrap in live and desired manifest panel (#20299)
Signed-off-by: linghaoSu <linghao.su@daocloud.io>
2024-10-09 22:30:35 -04:00
Dillen Padhiar
951f749406 fix: remove hardcoded conditions from Numaflow CRD health checks (#20316)
Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>
2024-10-09 17:32:14 -04:00
Dillen Padhiar
82484ce758 feat: introduce health checks for Numaflow CRDs (#20297)
Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>
2024-10-09 16:36:21 +00:00
Julie Vogelman
4722a7f78f feat: add Actions for PipelineRollout to allow/disallow data loss (#20298)
* add Actions for PipelineRollout to allow/disallow data loss

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* fix: test, add codegen generated docs

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* fix name

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* fix: make actions more robust to handle empty metadata

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

* spacing

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>

---------

Signed-off-by: Julie Vogelman <julievogelman0@gmail.com>
2024-10-09 11:15:10 -04:00
rezellme
19d85aa9fb feat(health): Adding more health checks for Keycloak, Postgres, Grafana, SolrCloud (#20294)
* feat(health): Add healtchcheck for acid.zalan.do/postgresql

Signed-off-by: Remo Zellmer <rze@vizrt.com>

* feat(health): Add healthcheck for grafana.integreatly.org/Grafana and GrafanaDatasource

Signed-off-by: Remo Zellmer <rze@vizrt.com>

* feat(health): Add healthcheck for k8s.keycloak.org/Keycloak

Signed-off-by: Remo Zellmer <rze@vizrt.com>

* feat(health): Add healthcheck for solr.apache.org/SolrCloud

Signed-off-by: Remo Zellmer <rze@vizrt.com>

---------

Signed-off-by: Remo Zellmer <rze@vizrt.com>
2024-10-09 11:12:09 -04:00
Daan Verstraten
e1472f309a chore: replacing custom map util functions with golang std (#20311)
Signed-off-by: Daan Verstraten <daanverstraten@hotmail.com>
2024-10-09 10:34:03 -04:00
OpenGuidou
1bbeab7a03 feat(clusters) - Add disableCompression option in the cluster config (#20291)
Signed-off-by: OpenGuidou <guillaume.doussin@gmail.com>
2024-10-09 15:36:46 +03:00
Nitish Kumar
cfa1c89c43 fix: disable automaxprocs logging (#20069)
* disable automaxprocs logging

Signed-off-by: nitishfy <justnitish06@gmail.com>

fix lint checks

Signed-off-by: nitishfy <justnitish06@gmail.com>

move maxprocs to main.go

Signed-off-by: nitishfy <justnitish06@gmail.com>

move set auto max procs to a function

Signed-off-by: nitishfy <justnitish06@gmail.com>

add info log

Signed-off-by: nitishfy <justnitish06@gmail.com>

* add info log

Signed-off-by: nitishfy <justnitish06@gmail.com>

* fix lint checks

Signed-off-by: nitishfy <justnitish06@gmail.com>

* fix lint checks

Signed-off-by: nitishfy <justnitish06@gmail.com>

* add unit test

Signed-off-by: nitishfy <justnitish06@gmail.com>

* fix lint issues

Signed-off-by: nitishfy <justnitish06@gmail.com>

---------

Signed-off-by: nitishfy <justnitish06@gmail.com>
2024-10-09 11:21:24 +00:00
dependabot[bot]
f9845694d0 chore(deps): bump actions/cache from 4.1.0 to 4.1.1 (#20301)
Bumps [actions/cache](https://github.com/actions/cache) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](2cdf405574...3624ceb22c)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-09 14:14:54 +03:00
dependabot[bot]
78c85a2295 chore(deps-dev): bump @types/node from 22.7.2 to 22.7.5 in /ui-test (#20281)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.7.2 to 22.7.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-09 14:10:46 +03:00
dependabot[bot]
3da774bb0b chore(deps): bump actions/upload-artifact from 4.4.1 to 4.4.2 (#20300)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.4.1 to 4.4.2.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](604373da63...84480863f2)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-09 13:59:37 +03:00
Michael Crenshaw
8647db1157 chore(controller): remove unnecessary field (#20295)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-09 13:59:03 +03:00
dependabot[bot]
c6d45d8dcf chore(deps-dev): bump typescript from 5.6.2 to 5.6.3 in /ui-test (#20302)
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.6.2 to 5.6.3.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.6.2...v5.6.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-09 13:40:59 +03:00
Alexander Matyushentsev
dc27102cff feat: support using exponential backoff between self heal attempts (#20275)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-10-08 16:32:00 +00:00
Blake Pettersson
6002c7d8f3 fix: allow pipes to be present in git username (#20040)
* fix: [#15949] split git revision metadata by newline not pipe symbol

pipe symbol '|' could appear in username or commit message body

Signed-off-by: Petr Studeny <studenyp@gmail.com>

* test: add test

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* Update util/git/client_test.go

Co-authored-by: Petr Studeny <studenyp@gmail.com>
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* test: fix test

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Petr Studeny <studenyp@gmail.com>
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Petr Studeny <studenyp@gmail.com>
2024-10-08 08:10:46 -04:00
변재한
a288b4d8c9 feat: exclude Endpoints and EndpointSlices Kubernetes resource by default (#20251)
Signed-off-by: jaehanbyun <awbrg789@naver.com>
2024-10-08 17:32:00 +05:30
ayatk
3f249ffc8d chore: Update notification engine to 2fef5c9 (#20276)
* Update notification-engine to 2fef5c9049fd

Signed-off-by: ayatk <ayatk@users.noreply.github.com>

* make notification-docs

Signed-off-by: ayatk <ayatk@users.noreply.github.com>

---------

Signed-off-by: ayatk <ayatk@users.noreply.github.com>
Co-authored-by: ayatk <ayatk@users.noreply.github.com>
2024-10-08 09:38:27 +03:00
dependabot[bot]
8d9a3a743a chore(deps): bump library/redis from 7.4.0 to 7.4.1 in /test/container (#20282)
Bumps library/redis from 7.4.0 to 7.4.1.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-08 09:36:53 +03:00
dependabot[bot]
c641304b2a chore(deps-dev): bump @types/mocha from 10.0.8 to 10.0.9 in /ui-test (#20280)
Bumps [@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha) from 10.0.8 to 10.0.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha)

---
updated-dependencies:
- dependency-name: "@types/mocha"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-08 09:35:20 +03:00
dependabot[bot]
1e84af73df chore(deps): bump actions/upload-artifact from 4.4.0 to 4.4.1 (#20279)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.4.0 to 4.4.1.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](50769540e7...604373da63)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-08 09:34:26 +03:00
dependabot[bot]
419cf25f28 chore(deps): bump google.golang.org/protobuf from 1.34.2 to 1.35.1 (#20277)
Bumps google.golang.org/protobuf from 1.34.2 to 1.35.1.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-08 09:34:09 +03:00
dependabot[bot]
948aaf6f90 chore(deps): bump SonarSource/sonarqube-scan-action (#20278)
Bumps [SonarSource/sonarqube-scan-action](https://github.com/sonarsource/sonarqube-scan-action) from 0c0f3958d90fc466625f1d1af1f47bddd4cc6bd1 to 884b79409bbd464b2a59edc326a4b77dc56b2195.
- [Release notes](https://github.com/sonarsource/sonarqube-scan-action/releases)
- [Commits](0c0f3958d9...884b79409b)

---
updated-dependencies:
- dependency-name: SonarSource/sonarqube-scan-action
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-08 09:33:54 +03:00
youhonglian
20e2e78476 fix(ui): history error reported in the dev environment (#20133)
Signed-off-by: honglian.you <honglian.you@daocloud.io>
2024-10-07 17:52:24 +03:00
dcoppa
345c8a18a2 fix: GOLANGCI_LINT_VERSION (#20264)
* Fix GOLANGCI_LINT_VERSION

Signed-off-by: David Coppa <dcoppa@cocus.com>

* chore(deps): bump SonarSource/sonarqube-scan-action from 2.3.0 to 3.0.0 (#19524)

Bumps [SonarSource/sonarqube-scan-action](https://github.com/sonarsource/sonarqube-scan-action) from 2.3.0 to 3.0.0.
- [Release notes](https://github.com/sonarsource/sonarqube-scan-action/releases)
- [Commits](aecaf43ae5...0c0f3958d9)

---
updated-dependencies:
- dependency-name: SonarSource/sonarqube-scan-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: David Coppa <dcoppa@cocus.com>

* Update install-lint-tools.sh

Signed-off-by: dcoppa <dcoppa@gmail.com>

---------

Signed-off-by: David Coppa <dcoppa@cocus.com>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dcoppa <dcoppa@gmail.com>
Co-authored-by: David Coppa <dcoppa@cocus.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-07 11:47:17 +00:00
Pavel Soloviev
6a9fe45871 docs: Add 404 Not Found github notify error to troubleshooting docs (#20085)
* docs: Add `404 Not Found` github notification error to troubleshooting docs

Signed-off-by: Moleus <fafufuburr@gmail.com>

* Update docs/operator-manual/notifications/troubleshooting-errors.md

Signed-off-by: Dan Garfield <dan@codefresh.io>

Signed-off-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* Update docs/operator-manual/notifications/troubleshooting-errors.md

Signed-off-by: Dan Garfield <dan@codefresh.io>

Signed-off-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix: CVE-2024-45296 Backtracking regular expressions cause ReDoS by upgrading path-to-regexp from 1.8.0 to 1.9.0 (#20087)

Signed-off-by: Cheng Fang <cfang@redhat.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps-dev): bump @types/node from 22.5.5 to 22.7.2 in /ui-test (#20112)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.5.5 to 22.7.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix(extension): add header to support apps-in-any-namespace (#20123)

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* Fix typo (#20127)

Remove a redundant "is".

Signed-off-by: Symeon Meichanetzoglou <simosmeih@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix(ui): add optional check to avoid undefined reference in project detail (#20044)

Signed-off-by: linghaoSu <linghao.su@daocloud.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump Helm from 3.15.2 to 3.15.4 (#20135)

* sec: upgrade helm version in order to fix critical vulnerability

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* sec: upgrade helm version in order to fix critical vulnerability

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix: oras-go client should fallback to docker config if no credentials specified (#18133)

* oras-go client should fallback to docker config if no credentials specified

Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>

* Fix tests

Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>

* Fix lint

Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>

* gofumpt

Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>

* Validate auth header

Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>

---------

Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump docker/build-push-action from 6.7.0 to 6.8.0 (#20154)

Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.7.0 to 6.8.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](5cd11c3a4c...32945a3392)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix: Fix argocd appset generate failure due to missing clusterrole (#20162)

* fix: FIx argocd-server clusterrole to allow argocd appset generate using cluster generator

Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>

* fix: update generated code

Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>

---------

Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* [Bot] docs: Update Snyk reports (#20146)

Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix: repo generate paths value in namespace install is incorrectly formatted (#20139)

* Fix repo generate paths value in namespace install

Signed-off-by: todaywasawesome <dan@codefresh.io>

* Fix in base and regen

Signed-off-by: todaywasawesome <dan@codefresh.io>

---------

Signed-off-by: todaywasawesome <dan@codefresh.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* feat: introduce pause/unpause actions for Numaplane CRDs (#20128)

* feat: introduce pause/unpause actions for Numaplane CRDs

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* test: fixed incorrect file names

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* chore: codegen

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* fix: empty check for lifecycle

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* fix: nil check

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* fix: nil checks

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* test: testing different starting spec

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* feat: add nil checks for all possible nil fields

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* chore: rerun tests

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

---------

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* feat(appset): Add a cache layer for Argo Projects to speed-up application validation (#18703)

* feat(appset): Add a cache layer for Argo Projects to speed-up application validation

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Use local client rather than custom cache

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Clean go.mod

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Merge master

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Fix after merging master
Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Initialize appProject variable inside loop

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Remove unused ArgoAppClientset field
Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Fix linter issue
Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

---------

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* docs: added note re. arch of example application on getting_started.md (#20143)

added warning that example application may not run on all archs

Signed-off-by: Crumbs <44215646+Crumb5@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix(ui): hide resource actions menu if it's empty (#20051)

Signed-off-by: cef <moncef.abboud95@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* Fixes minor typo which lead to using the bearer token as api URL and was obviously not working. (#20169)

Signed-off-by: asjervanasten <asjer94@live.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore: Try to make CodeQL happy (#20094) (#20129)

* chore(common): Split const from unrelated util/clusterauth const

Signed-off-by: Josh Soref <jsoref@gmail.com>

* chore: Try to make CodeQL happy

Signed-off-by: Josh Soref <jsoref@gmail.com>

---------

Signed-off-by: Josh Soref <jsoref@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump docker/build-push-action from 6.8.0 to 6.9.0 (#20174)

Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.8.0 to 6.9.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](32945a3392...4f58ea7922)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* feat(ui): make name property for repos (#20077)

* name-option-added

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* lint

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* feat: basic e2e tests in order to verify notification service health (#20182)

* feat: basic e2e tests in order to verify notification service health

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: basic e2e tests in order to verify notification service health

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore: document credentials server (#20078)

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* feat: Add nodeSelector for Linux nodes (#20148)

* feat: Add nodeSelector for Linux nodes in application-controller, applicationset-controller, and repo-server

Signed-off-by: leehosu <hosu4549@gmail.com>

* refactor : Reversal the wrong part and correct it.

Signed-off-by: leehosu <hosu4549@gmail.com>

* Update argocd-application-controller-statefulset.yaml

Signed-off-by: l2h <hosu4549@gmail.com>

* feat: Add nodeSelector for Linux nodes in dex-server, argo-server

Signed-off-by: leehosu <hosu4549@gmail.com>

* refactor: update code to resolving for intergration test

Signed-off-by: leehosu <hosu4549@gmail.com>

* refactor: update code to resolving for codegen

Signed-off-by: leehosu <hosu4549@gmail.com>

* Run make manifests-local and then commit

Signed-off-by: leehosu <hosu4549@gmail.com>

---------

Signed-off-by: leehosu <hosu4549@gmail.com>
Signed-off-by: l2h <hosu4549@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump github.com/cyphar/filepath-securejoin (#20173)

Bumps [github.com/cyphar/filepath-securejoin](https://github.com/cyphar/filepath-securejoin) from 0.3.2 to 0.3.3.
- [Release notes](https://github.com/cyphar/filepath-securejoin/releases)
- [Changelog](https://github.com/cyphar/filepath-securejoin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cyphar/filepath-securejoin/compare/v0.3.2...v0.3.3)

---
updated-dependencies:
- dependency-name: github.com/cyphar/filepath-securejoin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* feat(appset): parameterize requeue time #20063 (#20064)

Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(ci): better handling of Go and Node dependency bumps (#20168)

* chore(ci): better handling of Go and Node dependency bumps

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

temporarily remove condition

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

quit early if there are no changes

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

use latest checkout action and actually test version change

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

use github token

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

workflow for node

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

clean up after changing node version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

revert temporary changes

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

more docs

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump linter version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump codecov/codecov-action from 4.5.0 to 4.6.0 (#20188)

Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](e28ff129e5...b9fd7d16f6)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* docs(ui): sorting version (#20181)

Signed-off-by: nueavv <nuguni@kakao.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* docs: add outpost24 to users.md (#20197)

Signed-off-by: Phong Do <dominhphong306@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* docs: Update argocd path for command in notifification in troubleshooting docs (#20120)

Co-authored-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump google.golang.org/grpc from 1.67.0 to 1.67.1 (#20190)

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.67.0 to 1.67.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.67.0...v1.67.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump chromedriver from 129.0.0 to 129.0.2 in /ui-test (#20189)

Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 129.0.0 to 129.0.2.
- [Commits](https://github.com/giggio/node-chromedriver/compare/129.0.0...129.0.2)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump bitnami/kubectl in /test/container (#20191)

Bumps bitnami/kubectl from `da4a986` to `b509ab6`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump library/busybox in /test/e2e/multiarch-container (#20193)

Bumps library/busybox from `c230832` to `768e5c6`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix(helm): escape consecutive commas in cleanSetParameters (#19269) (#20113)

Signed-off-by: KangManJoo <eogns47@konkuk.ac.kr>
Signed-off-by: daengdaengLee <gunho1020@gmail.com>
Co-authored-by: daengdaengLee <gunho1020@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* Update troubleshooting-errors.md (#20201)

Fixing some phrasing and adding more clarity.

Signed-off-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix: Rework git tag semver resolution (#20083) (#20096)

* Write initial tests

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* Improve git tag semver resolution

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* Add company to list of users

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* Fix broken error string check

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* Fix incorrect semver test assumption

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* switch to debug statement

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* Add more testcases for review

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* review comments

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

---------

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump golangci/golangci-lint-action from 6.1.0 to 6.1.1 (#20207)

Signed-off-by: Moleus <fafufuburr@gmail.com>

* feat(ui): support auto theme (#20080)

* feat(theme): support auto theme

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

* fix(ui): set default theme as light

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

* fix(ui): only register listener when theme is auto

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

---------

Signed-off-by: linghaoSu <linghao.su@daocloud.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump selenium-webdriver from 4.24.1 to 4.25.0 in /ui-test (#20058)

Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.24.1 to 4.25.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Commits](https://github.com/SeleniumHQ/selenium/commits/selenium-4.25.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix: refine deny destination checks (#20045)

* fix: refine server deny check

Fixes #19804. The deny destination check can be made more intuitive by
doing the following:

* short-circuit any deny destination
* first, for any deny server destination, _also_ check if the namespace matches
* for any deny namespace destination, reject as before

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* fix: also assert that server matches on ns deny

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore: Added unit tests and fix e2e tests for application sync decoupling feature (#19966)

* fixed doc comments and added unit tests

Signed-off-by: anandf <anjoseph@redhat.com>

* Added comments for the newly added unit tests

Signed-off-by: anandf <anjoseph@redhat.com>

* Refactored method name to deriveServiceAccountToImpersonate

Signed-off-by: anandf <anjoseph@redhat.com>

* Using const name in return value

Signed-off-by: anandf <anjoseph@redhat.com>

* Added unit tests for argocd proj add-destination-service-accounts

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed failing e2e tests

Signed-off-by: anandf <anjoseph@redhat.com>

* Fix linting errors

Signed-off-by: anandf <anjoseph@redhat.com>

* Using require package instead of assert and fixed code generation

Signed-off-by: anandf <anjoseph@redhat.com>

* Removed parallel execution of tests for sync with impersonate

Signed-off-by: anandf <anjoseph@redhat.com>

* Added err checks for glob validations

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed e2e tests for sync impersonation

Signed-off-by: anandf <anjoseph@redhat.com>

* Using consistently based expects in E2E tests

Signed-off-by: anandf <anjoseph@redhat.com>

* Added more unit tests and fixed go generate

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed failed lint errors, unit and e2e test failures

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed goimports linter issue

Signed-off-by: anandf <anjoseph@redhat.com>

* Added code comments and added few missing unit tests

Signed-off-by: anandf <anjoseph@redhat.com>

* Added missing unit test for GetDestinationServiceAccounts method

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed goimports formatting with local for project_test.go

Signed-off-by: anandf <anjoseph@redhat.com>

* Corrected typo in a field name additionalObjs

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed failing unit tests

Signed-off-by: anandf <anjoseph@redhat.com>

---------

Signed-off-by: anandf <anjoseph@redhat.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix: Fix false positive in plugin application discovery (#20196)

* fix: fix false positive in plugin application discovery

Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>

* fix: apply suggestion to return immediately if discovery is not configured for unnamed plugin

Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>

---------

Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix: update health check to support modelmesh (#20142)

Signed-off-by: Trevor Royer <troyer@redhat.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore: rename protobuf field according to convention (#20221)

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* docs: add TBC Bank to USERS.md (#20227)

* docs: add TBC Bank to USERS.md

Signed-off-by: Mate Gogiberidze <gogiberidzemate9@gmail.com>

* docs: reorder TBC Bank by alphabetical

Signed-off-by: Mate Gogiberidze <gogiberidzemate9@gmail.com>

---------

Signed-off-by: Mate Gogiberidze <gogiberidzemate9@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump docker/setup-buildx-action from 3.6.1 to 3.7.0 (#20224)

Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.6.1 to 3.7.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](988b5a0280...8026d2bc36)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump tj-actions/changed-files from 45.0.2 to 45.0.3 (#20225)

Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 45.0.2 to 45.0.3.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](48d8f15b2a...c3a1bb2c99)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix: use `ErrorContains(t, err` instead of `Contains(t, err.Error()` (#20220)

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* docs: Correct ApplicationSet (spec.preservedFields) (#20206)

* Fix docs

Signed-off-by: jyoungs <jyoungs@bluenightmare.com>

* Remove another errant block; improved comments

Signed-off-by: jyoungs <jyoungs@bluenightmare.com>

* Actually removed the errant block

Signed-off-by: jyoungs <jyoungs@bluenightmare.com>

* More doc fixes

Signed-off-by: jyoungs <jyoungs@bluenightmare.com>

* More spec fixes + USERS

Signed-off-by: jyoungs <jyoungs@bluenightmare.com>

---------

Signed-off-by: jyoungs <jyoungs@bluenightmare.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix(health): only consider non-empty health checks (#20232)

* fix(health): only consider non-empty health checks

For wildcard health checks, only consider wildcards with a non-empty
health check. Fixes #16905 (at least partially).

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* test: renaming test case for clarity

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* refactor: add clarity as to what the function is supposed to do

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* Update docs/operator-manual/health.md

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* test: add test case for `*/*` override with empty healthcheck

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix: support managing cluster with multiple argocd instances and annotation based tracking (#20222)

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix notification-catlog issue (#20237)

Signed-off-by: ajinkyak423 <ajinkyakumbhar423@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(ci): add renovate for golangci-lint, go and node version (#20236)

Signed-off-by: ggjulio <juligonz@student.42.fr>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump actions/cache from 4.0.2 to 4.1.0 (#20240)

Bumps [actions/cache](https://github.com/actions/cache) from 4.0.2 to 4.1.0.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](0c45773b62...2cdf405574)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump docker/setup-buildx-action from 3.7.0 to 3.7.1 (#20241)

Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.7.0 to 3.7.1.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](8026d2bc36...c47758b77c)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump golang.org/x/time from 0.6.0 to 0.7.0 (#20244)

Bumps [golang.org/x/time](https://github.com/golang/time) from 0.6.0 to 0.7.0.
- [Commits](https://github.com/golang/time/compare/v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/time
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* feat(cli): Add app diff option to specify exit code when diff (#20144)

The argocd app diff command returns 1 if a difference is found. In related issues,
they want to return an error code that is distinguishable from common errors.
However, changing the existing behavior is likely to break user's automation code.
So we want to provide an explicit option(--diff-exit-code) to specify an error code.

Related: #3588

Signed-off-by: Eugene Kim <eugene70kim@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* feat: add support for helm skipTests flag (#20118)

Signed-off-by: jaehanbyun <awbrg789@naver.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump sigstore/cosign-installer from 3.6.0 to 3.7.0 (#20242)

Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/sigstore/cosign-installer/releases)
- [Commits](4959ce089c...dc72c7d5c4)

---
updated-dependencies:
- dependency-name: sigstore/cosign-installer
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump golang.org/x/term from 0.24.0 to 0.25.0 (#20245)

Bumps [golang.org/x/term](https://github.com/golang/term) from 0.24.0 to 0.25.0.
- [Commits](https://github.com/golang/term/compare/v0.24.0...v0.25.0)

---
updated-dependencies:
- dependency-name: golang.org/x/term
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump golang.org/x/crypto from 0.27.0 to 0.28.0 (#20243)

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.27.0 to 0.28.0.
- [Commits](https://github.com/golang/crypto/compare/v0.27.0...v0.28.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): bump golang.org/x/net from 0.29.0 to 0.30.0 (#20246)

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.29.0 to 0.30.0.
- [Commits](https://github.com/golang/net/compare/v0.29.0...v0.30.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore: update notifications-engine to 22ccfe0caf45 (#20239)

* Update notifications-engine

Signed-off-by: SLASHLogin <loginmlgxd@gmail.com>

* Update docs for Opsgenie notifications

Signed-off-by: SLASHLogin <loginmlgxd@gmail.com>

* docs: Fix outdated slack notification configuration readme

Signed-off-by: SLASHLogin <loginmlgxd@gmail.com>

---------

Signed-off-by: SLASHLogin <loginmlgxd@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* [Bot] docs: Update Snyk reports (#20250)

Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix: handle incorrect cluster RESTconfig without panic (#20150)

Signed-off-by: cef <moncef.abboud95@gmail.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): update node version (#20248)

* chore(deps): update node version

* Update ui/.nvmrc

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* sec: update alpine/helm to 3.16.1 (#20253)

Signed-off-by: pashakostohrys <pavel@codefresh.io>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(ci): update renovate config (#20254)

Signed-off-by: ggjulio <juligonz@student.42.fr>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* fix: Policy/policy.open-cluster-management.io health check is broken (#20108) (#20109)

Tried using the health check as listed here but it gave error:

| error setting app health: failed to get resource health for "Policy" with name "XXXX" in namespace "local-cluster": <string>:35: invalid value (nil) at index 1 in table for concat stack traceback: [G]: in function 'concat' <string>:35: in main chunk [G]: ?

This change fixes the error by updating how the noncompliant clusters are tracked and counted to use latest Lua recommendations.

Signed-off-by: Ian Tewksbury <itewk@redhat.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* feat(applicationset): Add FlatList option to cluster generator - Fixes #20212 (#20231)

* (feat) - Add FlatList option to cluster generator

Signed-off-by: OpenGuidou <guillaume.doussin@gmail.com>

* Update docs/operator-manual/applicationset/Generators-Cluster.md

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: OpenGuidou <guillaume.doussin@gmail.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): update docs dependencies (#20257)

* chore(deps): update docs dependencies

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* bump rtd python version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore(deps): update group golang to v1.23.2 (#20256)

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Signed-off-by: Moleus <fafufuburr@gmail.com>

* chore: bump k8s versions in e2e tests (#19669)

Signed-off-by: Moleus <fafufuburr@gmail.com>

---------

Signed-off-by: Moleus <fafufuburr@gmail.com>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Cheng Fang <cfang@redhat.com>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Signed-off-by: Symeon Meichanetzoglou <simosmeih@gmail.com>
Signed-off-by: linghaoSu <linghao.su@daocloud.io>
Signed-off-by: pashakostohrys <pavel@codefresh.io>
Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>
Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>
Signed-off-by: CI <ci@argoproj.com>
Signed-off-by: todaywasawesome <dan@codefresh.io>
Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>
Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>
Signed-off-by: Crumbs <44215646+Crumb5@users.noreply.github.com>
Signed-off-by: cef <moncef.abboud95@gmail.com>
Signed-off-by: asjervanasten <asjer94@live.com>
Signed-off-by: Josh Soref <jsoref@gmail.com>
Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: leehosu <hosu4549@gmail.com>
Signed-off-by: l2h <hosu4549@gmail.com>
Signed-off-by: nueavv <nuguni@kakao.com>
Signed-off-by: Phong Do <dominhphong306@gmail.com>
Signed-off-by: KangManJoo <eogns47@konkuk.ac.kr>
Signed-off-by: daengdaengLee <gunho1020@gmail.com>
Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: anandf <anjoseph@redhat.com>
Signed-off-by: Trevor Royer <troyer@redhat.com>
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
Signed-off-by: Mate Gogiberidze <gogiberidzemate9@gmail.com>
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
Signed-off-by: jyoungs <jyoungs@bluenightmare.com>
Signed-off-by: ajinkyak423 <ajinkyakumbhar423@gmail.com>
Signed-off-by: ggjulio <juligonz@student.42.fr>
Signed-off-by: Eugene Kim <eugene70kim@gmail.com>
Signed-off-by: jaehanbyun <awbrg789@naver.com>
Signed-off-by: SLASHLogin <loginmlgxd@gmail.com>
Signed-off-by: Ian Tewksbury <itewk@redhat.com>
Signed-off-by: OpenGuidou <guillaume.doussin@gmail.com>
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Cheng Fang <cfang@redhat.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Co-authored-by: Symeon Meichanetzoglou <sym@open.ch>
Co-authored-by: Linghao Su <linghao.su@daocloud.io>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
Co-authored-by: Tony Au-Yeung <tonyay163@gmail.com>
Co-authored-by: aria <pradithya.pura@gojek.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: CI <ci@argoproj.com>
Co-authored-by: Dillen Padhiar <38965141+dpadhiar@users.noreply.github.com>
Co-authored-by: Daco <dacofr@users.noreply.github.com>
Co-authored-by: Crumbs <44215646+Crumb5@users.noreply.github.com>
Co-authored-by: ABBOUD Moncef <moncef.abboud95@gmail.com>
Co-authored-by: appiepollo14 <asjer94@live.com>
Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Co-authored-by: Suraj yadav <harrypotter1108@gmail.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: l2h <hosu4549@gmail.com>
Co-authored-by: rumstead <37445536+rumstead@users.noreply.github.com>
Co-authored-by: 1102 <90682513+nueavv@users.noreply.github.com>
Co-authored-by: Phong Do <dominhphong306@gmail.com>
Co-authored-by: Olivier Wenger <14903492+owngr@users.noreply.github.com>
Co-authored-by: KangManJoo <eogns47@konkuk.ac.kr>
Co-authored-by: daengdaengLee <gunho1020@gmail.com>
Co-authored-by: Paul Larsen <pnvlarsen@gmail.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Anand Francis Joseph <anjoseph@redhat.com>
Co-authored-by: Trevor Royer <troyer@redhat.com>
Co-authored-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
Co-authored-by: Mate Gogiberidze <101423812+mategogiberidze@users.noreply.github.com>
Co-authored-by: Matthieu MOREL <matthieu.morel35@gmail.com>
Co-authored-by: Jeff Youngs <jyoungs@bluenightmare.com>
Co-authored-by: Ajinkya Ganesh Kumbhar <ajinkyakumbhar423@gmail.com>
Co-authored-by: Julio <juligonz@student.42.fr>
Co-authored-by: Eugene Kim <eugene70kim@gmail.com>
Co-authored-by: 변재한 <awbrg789@naver.com>
Co-authored-by: SLASHLogin <loginmlgxd@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ian Tewksbury <itewk@redhat.com>
Co-authored-by: OpenGuidou <73480729+OpenGuidou@users.noreply.github.com>
2024-10-07 17:13:26 +05:30
srikanth597
7718af14a1 fix(ui): adjust transform origin in application resource tree (#20180)
Signed-off-by: srikanth597 <alapatisrikanth597@gmail.com>
2024-10-07 17:08:11 +05:30
dependabot[bot]
ae183ad245 chore(deps): bump SonarSource/sonarqube-scan-action from 2.3.0 to 3.0.0 (#19524)
Bumps [SonarSource/sonarqube-scan-action](https://github.com/sonarsource/sonarqube-scan-action) from 2.3.0 to 3.0.0.
- [Release notes](https://github.com/sonarsource/sonarqube-scan-action/releases)
- [Commits](aecaf43ae5...0c0f3958d9)

---
updated-dependencies:
- dependency-name: SonarSource/sonarqube-scan-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-07 12:36:25 +03:00
dependabot[bot]
1e359c8c0d chore(deps): bump github.com/xanzy/go-gitlab from 0.109.0 to 0.110.0 (#20260)
Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.109.0 to 0.110.0.
- [Release notes](https://github.com/xanzy/go-gitlab/releases)
- [Changelog](https://github.com/xanzy/go-gitlab/blob/main/releases_test.go)
- [Commits](https://github.com/xanzy/go-gitlab/compare/v0.109.0...v0.110.0)

---
updated-dependencies:
- dependency-name: github.com/xanzy/go-gitlab
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-07 10:25:46 +03:00
Michael Crenshaw
9a76d9f40b chore: bump k8s versions in e2e tests (#19669) 2024-10-06 20:30:32 -04:00
renovate[bot]
14c50bd50d chore(deps): update group golang to v1.23.2 (#20256)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-06 17:49:24 -04:00
renovate[bot]
95922502c7 chore(deps): update docs dependencies (#20257)
* chore(deps): update docs dependencies

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* bump rtd python version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-06 21:20:46 +00:00
OpenGuidou
5543900345 feat(applicationset): Add FlatList option to cluster generator - Fixes #20212 (#20231)
* (feat) - Add FlatList option to cluster generator

Signed-off-by: OpenGuidou <guillaume.doussin@gmail.com>

* Update docs/operator-manual/applicationset/Generators-Cluster.md

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: OpenGuidou <guillaume.doussin@gmail.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-06 20:31:32 +00:00
Ian Tewksbury
e1258ccb9d fix: Policy/policy.open-cluster-management.io health check is broken (#20108) (#20109)
Tried using the health check as listed here but it gave error:

| error setting app health: failed to get resource health for "Policy" with name "XXXX" in namespace "local-cluster": <string>:35: invalid value (nil) at index 1 in table for concat stack traceback: [G]: in function 'concat' <string>:35: in main chunk [G]: ?

This change fixes the error by updating how the noncompliant clusters are tracked and counted to use latest Lua recommendations.

Signed-off-by: Ian Tewksbury <itewk@redhat.com>
2024-10-06 15:33:32 -04:00
Julio
7b1c076148 chore(ci): update renovate config (#20254)
Signed-off-by: ggjulio <juligonz@student.42.fr>
2024-10-06 15:30:53 -04:00
pasha-codefresh
3570d7de14 sec: update alpine/helm to 3.16.1 (#20253)
Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-10-06 17:40:06 +00:00
renovate[bot]
e0863d9e33 chore(deps): update node version (#20248)
* chore(deps): update node version

* Update ui/.nvmrc

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-06 17:15:41 +00:00
ABBOUD Moncef
fe7771cc83 fix: handle incorrect cluster RESTconfig without panic (#20150)
Signed-off-by: cef <moncef.abboud95@gmail.com>
2024-10-06 17:55:26 +03:00
github-actions[bot]
b0a3c5407c [Bot] docs: Update Snyk reports (#20250)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-10-06 12:29:37 +03:00
SLASHLogin
5583ebdcb8 chore: update notifications-engine to 22ccfe0caf45 (#20239)
* Update notifications-engine

Signed-off-by: SLASHLogin <loginmlgxd@gmail.com>

* Update docs for Opsgenie notifications

Signed-off-by: SLASHLogin <loginmlgxd@gmail.com>

* docs: Fix outdated slack notification configuration readme

Signed-off-by: SLASHLogin <loginmlgxd@gmail.com>

---------

Signed-off-by: SLASHLogin <loginmlgxd@gmail.com>
2024-10-06 12:28:02 +03:00
dependabot[bot]
d063e6087f chore(deps): bump golang.org/x/net from 0.29.0 to 0.30.0 (#20246)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.29.0 to 0.30.0.
- [Commits](https://github.com/golang/net/compare/v0.29.0...v0.30.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-06 02:40:24 +00:00
dependabot[bot]
3b2de54b66 chore(deps): bump golang.org/x/crypto from 0.27.0 to 0.28.0 (#20243)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.27.0 to 0.28.0.
- [Commits](https://github.com/golang/crypto/compare/v0.27.0...v0.28.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-06 01:43:42 +00:00
dependabot[bot]
3a666dd400 chore(deps): bump golang.org/x/term from 0.24.0 to 0.25.0 (#20245)
Bumps [golang.org/x/term](https://github.com/golang/term) from 0.24.0 to 0.25.0.
- [Commits](https://github.com/golang/term/compare/v0.24.0...v0.25.0)

---
updated-dependencies:
- dependency-name: golang.org/x/term
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-06 00:46:29 +00:00
dependabot[bot]
0014b2505b chore(deps): bump sigstore/cosign-installer from 3.6.0 to 3.7.0 (#20242)
Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/sigstore/cosign-installer/releases)
- [Commits](4959ce089c...dc72c7d5c4)

---
updated-dependencies:
- dependency-name: sigstore/cosign-installer
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-06 00:43:32 +00:00
변재한
0aa6c49465 feat: add support for helm skipTests flag (#20118)
Signed-off-by: jaehanbyun <awbrg789@naver.com>
2024-10-05 19:55:46 -04:00
Eugene Kim
4c29c33f02 feat(cli): Add app diff option to specify exit code when diff (#20144)
The argocd app diff command returns 1 if a difference is found. In related issues,
they want to return an error code that is distinguishable from common errors.
However, changing the existing behavior is likely to break user's automation code.
So we want to provide an explicit option(--diff-exit-code) to specify an error code.

Related: #3588

Signed-off-by: Eugene Kim <eugene70kim@gmail.com>
2024-10-05 19:53:29 -04:00
dependabot[bot]
853c6b4935 chore(deps): bump golang.org/x/time from 0.6.0 to 0.7.0 (#20244)
Bumps [golang.org/x/time](https://github.com/golang/time) from 0.6.0 to 0.7.0.
- [Commits](https://github.com/golang/time/compare/v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/time
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-05 23:31:46 +00:00
dependabot[bot]
5ebb61b519 chore(deps): bump docker/setup-buildx-action from 3.7.0 to 3.7.1 (#20241)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.7.0 to 3.7.1.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](8026d2bc36...c47758b77c)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-05 23:30:27 +00:00
dependabot[bot]
4272b03b33 chore(deps): bump actions/cache from 4.0.2 to 4.1.0 (#20240)
Bumps [actions/cache](https://github.com/actions/cache) from 4.0.2 to 4.1.0.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](0c45773b62...2cdf405574)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-05 23:30:14 +00:00
Julio
d17aafd19a chore(ci): add renovate for golangci-lint, go and node version (#20236)
Signed-off-by: ggjulio <juligonz@student.42.fr>
2024-10-05 21:33:30 +00:00
Ajinkya Ganesh Kumbhar
52d5653c86 fix notification-catlog issue (#20237)
Signed-off-by: ajinkyak423 <ajinkyakumbhar423@gmail.com>
2024-10-05 21:46:43 +03:00
Alexander Matyushentsev
03a16099b0 fix: support managing cluster with multiple argocd instances and annotation based tracking (#20222)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-10-04 17:54:37 -07:00
Blake Pettersson
5ba2405fa9 fix(health): only consider non-empty health checks (#20232)
* fix(health): only consider non-empty health checks

For wildcard health checks, only consider wildcards with a non-empty
health check. Fixes #16905 (at least partially).

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* test: renaming test case for clarity

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* refactor: add clarity as to what the function is supposed to do

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* Update docs/operator-manual/health.md

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* test: add test case for `*/*` override with empty healthcheck

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-04 15:34:58 -04:00
Jeff Youngs
2f6b6adb1c docs: Correct ApplicationSet (spec.preservedFields) (#20206)
* Fix docs

Signed-off-by: jyoungs <jyoungs@bluenightmare.com>

* Remove another errant block; improved comments

Signed-off-by: jyoungs <jyoungs@bluenightmare.com>

* Actually removed the errant block

Signed-off-by: jyoungs <jyoungs@bluenightmare.com>

* More doc fixes

Signed-off-by: jyoungs <jyoungs@bluenightmare.com>

* More spec fixes + USERS

Signed-off-by: jyoungs <jyoungs@bluenightmare.com>

---------

Signed-off-by: jyoungs <jyoungs@bluenightmare.com>
2024-10-04 10:44:39 -06:00
Matthieu MOREL
1c6ec19a86 fix: use ErrorContains(t, err instead of Contains(t, err.Error() (#20220)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-10-04 09:36:05 -04:00
dependabot[bot]
ba0683c4d4 chore(deps): bump tj-actions/changed-files from 45.0.2 to 45.0.3 (#20225)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 45.0.2 to 45.0.3.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](48d8f15b2a...c3a1bb2c99)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-04 09:27:20 -04:00
dependabot[bot]
8ea78a1bc1 chore(deps): bump docker/setup-buildx-action from 3.6.1 to 3.7.0 (#20224)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.6.1 to 3.7.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](988b5a0280...8026d2bc36)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-04 09:27:00 -04:00
Mate Gogiberidze
3b623a6663 docs: add TBC Bank to USERS.md (#20227)
* docs: add TBC Bank to USERS.md

Signed-off-by: Mate Gogiberidze <gogiberidzemate9@gmail.com>

* docs: reorder TBC Bank by alphabetical

Signed-off-by: Mate Gogiberidze <gogiberidzemate9@gmail.com>

---------

Signed-off-by: Mate Gogiberidze <gogiberidzemate9@gmail.com>
2024-10-04 14:26:49 +02:00
Alexander Matyushentsev
f5061272b8 chore: rename protobuf field according to convention (#20221)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-10-03 21:58:39 +00:00
Trevor Royer
49431b9add fix: update health check to support modelmesh (#20142)
Signed-off-by: Trevor Royer <troyer@redhat.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-10-03 14:07:34 -04:00
aria
b2091e3984 fix: Fix false positive in plugin application discovery (#20196)
* fix: fix false positive in plugin application discovery

Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>

* fix: apply suggestion to return immediately if discovery is not configured for unnamed plugin

Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>

---------

Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>
2024-10-03 13:15:49 -04:00
Anand Francis Joseph
5f8de971c6 chore: Added unit tests and fix e2e tests for application sync decoupling feature (#19966)
* fixed doc comments and added unit tests

Signed-off-by: anandf <anjoseph@redhat.com>

* Added comments for the newly added unit tests

Signed-off-by: anandf <anjoseph@redhat.com>

* Refactored method name to deriveServiceAccountToImpersonate

Signed-off-by: anandf <anjoseph@redhat.com>

* Using const name in return value

Signed-off-by: anandf <anjoseph@redhat.com>

* Added unit tests for argocd proj add-destination-service-accounts

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed failing e2e tests

Signed-off-by: anandf <anjoseph@redhat.com>

* Fix linting errors

Signed-off-by: anandf <anjoseph@redhat.com>

* Using require package instead of assert and fixed code generation

Signed-off-by: anandf <anjoseph@redhat.com>

* Removed parallel execution of tests for sync with impersonate

Signed-off-by: anandf <anjoseph@redhat.com>

* Added err checks for glob validations

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed e2e tests for sync impersonation

Signed-off-by: anandf <anjoseph@redhat.com>

* Using consistently based expects in E2E tests

Signed-off-by: anandf <anjoseph@redhat.com>

* Added more unit tests and fixed go generate

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed failed lint errors, unit and e2e test failures

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed goimports linter issue

Signed-off-by: anandf <anjoseph@redhat.com>

* Added code comments and added few missing unit tests

Signed-off-by: anandf <anjoseph@redhat.com>

* Added missing unit test for GetDestinationServiceAccounts method

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed goimports formatting with local for project_test.go

Signed-off-by: anandf <anjoseph@redhat.com>

* Corrected typo in a field name additionalObjs

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed failing unit tests

Signed-off-by: anandf <anjoseph@redhat.com>

---------

Signed-off-by: anandf <anjoseph@redhat.com>
2024-10-03 07:37:50 -07:00
Blake Pettersson
be880add20 fix: refine deny destination checks (#20045)
* fix: refine server deny check

Fixes #19804. The deny destination check can be made more intuitive by
doing the following:

* short-circuit any deny destination
* first, for any deny server destination, _also_ check if the namespace matches
* for any deny namespace destination, reject as before

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* fix: also assert that server matches on ns deny

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-10-03 07:37:19 -07:00
dependabot[bot]
86519ca690 chore(deps): bump selenium-webdriver from 4.24.1 to 4.25.0 in /ui-test (#20058)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 4.24.1 to 4.25.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Commits](https://github.com/SeleniumHQ/selenium/commits/selenium-4.25.0)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-03 07:35:50 -07:00
Linghao Su
308890661b feat(ui): support auto theme (#20080)
* feat(theme): support auto theme

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

* fix(ui): set default theme as light

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

* fix(ui): only register listener when theme is auto

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

---------

Signed-off-by: linghaoSu <linghao.su@daocloud.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-10-03 16:58:40 +03:00
dependabot[bot]
8d268e78c7 chore(deps): bump golangci/golangci-lint-action from 6.1.0 to 6.1.1 (#20207) 2024-10-03 08:07:53 -04:00
Paul Larsen
7de5d27dc0 fix: Rework git tag semver resolution (#20083) (#20096)
* Write initial tests

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* Improve git tag semver resolution

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* Add company to list of users

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* Fix broken error string check

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* Fix incorrect semver test assumption

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* switch to debug statement

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* Add more testcases for review

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

* review comments

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>

---------

Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>
2024-10-03 15:52:01 +05:30
Dan Garfield
99560fbbba Update troubleshooting-errors.md (#20201)
Fixing some phrasing and adding more clarity.

Signed-off-by: Dan Garfield <dan@codefresh.io>
2024-10-03 11:01:18 +02:00
KangManJoo
3070297d6b fix(helm): escape consecutive commas in cleanSetParameters (#19269) (#20113)
Signed-off-by: KangManJoo <eogns47@konkuk.ac.kr>
Signed-off-by: daengdaengLee <gunho1020@gmail.com>
Co-authored-by: daengdaengLee <gunho1020@gmail.com>
2024-10-02 15:04:22 -04:00
dependabot[bot]
1a84db5dad chore(deps): bump library/busybox in /test/e2e/multiarch-container (#20193)
Bumps library/busybox from `c230832` to `768e5c6`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-02 16:38:27 +00:00
dependabot[bot]
109473fca4 chore(deps): bump bitnami/kubectl in /test/container (#20191)
Bumps bitnami/kubectl from `da4a986` to `b509ab6`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-10-02 16:37:40 +00:00
dependabot[bot]
54bd69463b chore(deps): bump chromedriver from 129.0.0 to 129.0.2 in /ui-test (#20189)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 129.0.0 to 129.0.2.
- [Commits](https://github.com/giggio/node-chromedriver/compare/129.0.0...129.0.2)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-02 18:35:47 +03:00
dependabot[bot]
2e9532d79b chore(deps): bump google.golang.org/grpc from 1.67.0 to 1.67.1 (#20190)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.67.0 to 1.67.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.67.0...v1.67.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-02 18:35:27 +03:00
Olivier Wenger
807b6fb472 docs: Update argocd path for command in notifification in troubleshooting docs (#20120)
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-10-02 14:58:57 +00:00
Phong Do
1dcf3a5665 docs: add outpost24 to users.md (#20197)
Signed-off-by: Phong Do <dominhphong306@gmail.com>
2024-10-02 15:01:37 +02:00
1102
6b19f10e7f docs(ui): sorting version (#20181)
Signed-off-by: nueavv <nuguni@kakao.com>
2024-10-02 08:59:48 -04:00
dependabot[bot]
48551b3746 chore(deps): bump codecov/codecov-action from 4.5.0 to 4.6.0 (#20188)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](e28ff129e5...b9fd7d16f6)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-02 04:17:08 +00:00
Michael Crenshaw
d3a3fe5e68 chore(ci): better handling of Go and Node dependency bumps (#20168)
* chore(ci): better handling of Go and Node dependency bumps

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

temporarily remove condition

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

quit early if there are no changes

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

use latest checkout action and actually test version change

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

use github token

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

workflow for node

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

clean up after changing node version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

revert temporary changes

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

more docs

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump linter version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-02 00:02:07 -04:00
rumstead
9e9c9a9aca feat(appset): parameterize requeue time #20063 (#20064) 2024-10-01 21:26:08 -04:00
dependabot[bot]
f78e741220 chore(deps): bump github.com/cyphar/filepath-securejoin (#20173)
Bumps [github.com/cyphar/filepath-securejoin](https://github.com/cyphar/filepath-securejoin) from 0.3.2 to 0.3.3.
- [Release notes](https://github.com/cyphar/filepath-securejoin/releases)
- [Changelog](https://github.com/cyphar/filepath-securejoin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cyphar/filepath-securejoin/compare/v0.3.2...v0.3.3)

---
updated-dependencies:
- dependency-name: github.com/cyphar/filepath-securejoin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-01 13:08:33 -04:00
l2h
ab8fdb8a6d feat: Add nodeSelector for Linux nodes (#20148)
* feat: Add nodeSelector for Linux nodes in application-controller, applicationset-controller, and repo-server

Signed-off-by: leehosu <hosu4549@gmail.com>

* refactor : Reversal the wrong part and correct it.

Signed-off-by: leehosu <hosu4549@gmail.com>

* Update argocd-application-controller-statefulset.yaml

Signed-off-by: l2h <hosu4549@gmail.com>

* feat: Add nodeSelector for Linux nodes in dex-server, argo-server

Signed-off-by: leehosu <hosu4549@gmail.com>

* refactor: update code to resolving for intergration test

Signed-off-by: leehosu <hosu4549@gmail.com>

* refactor: update code to resolving for codegen

Signed-off-by: leehosu <hosu4549@gmail.com>

* Run make manifests-local and then commit

Signed-off-by: leehosu <hosu4549@gmail.com>

---------

Signed-off-by: leehosu <hosu4549@gmail.com>
Signed-off-by: l2h <hosu4549@gmail.com>
2024-10-01 12:13:05 -04:00
Michael Crenshaw
f869d235cb chore: document credentials server (#20078)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-10-01 10:51:29 -04:00
pasha-codefresh
2d8659b466 feat: basic e2e tests in order to verify notification service health (#20182)
* feat: basic e2e tests in order to verify notification service health

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: basic e2e tests in order to verify notification service health

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-10-01 14:20:01 +00:00
Suraj yadav
5796a7c22d feat(ui): make name property for repos (#20077)
* name-option-added

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* lint

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
2024-10-01 16:58:29 +05:30
dependabot[bot]
afcc71be23 chore(deps): bump docker/build-push-action from 6.8.0 to 6.9.0 (#20174)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.8.0 to 6.9.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](32945a3392...4f58ea7922)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-01 04:50:35 -04:00
Josh Soref
fc1986e3e5 chore: Try to make CodeQL happy (#20094) (#20129)
* chore(common): Split const from unrelated util/clusterauth const

Signed-off-by: Josh Soref <jsoref@gmail.com>

* chore: Try to make CodeQL happy

Signed-off-by: Josh Soref <jsoref@gmail.com>

---------

Signed-off-by: Josh Soref <jsoref@gmail.com>
2024-09-30 19:37:51 -04:00
appiepollo14
04e47cd5d4 Fixes minor typo which lead to using the bearer token as api URL and was obviously not working. (#20169)
Signed-off-by: asjervanasten <asjer94@live.com>
2024-09-30 20:39:23 +00:00
ABBOUD Moncef
0681098299 fix(ui): hide resource actions menu if it's empty (#20051)
Signed-off-by: cef <moncef.abboud95@gmail.com>
2024-09-30 11:28:05 -04:00
Crumbs
0cd5ac473c docs: added note re. arch of example application on getting_started.md (#20143)
added warning that example application may not run on all archs

Signed-off-by: Crumbs <44215646+Crumb5@users.noreply.github.com>
2024-09-30 10:26:04 -04:00
Daco
92e0b553a7 feat(appset): Add a cache layer for Argo Projects to speed-up application validation (#18703)
* feat(appset): Add a cache layer for Argo Projects to speed-up application validation

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Use local client rather than custom cache

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Clean go.mod

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Merge master

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Fix after merging master
Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Initialize appProject variable inside loop

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Remove unused ArgoAppClientset field
Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

* Fix linter issue
Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>

---------

Signed-off-by: Philippe Da Costa <pdacosta@gmail.com>
2024-09-30 10:22:49 -04:00
Dillen Padhiar
5d89339c14 feat: introduce pause/unpause actions for Numaplane CRDs (#20128)
* feat: introduce pause/unpause actions for Numaplane CRDs

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* test: fixed incorrect file names

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* chore: codegen

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* fix: empty check for lifecycle

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* fix: nil check

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* fix: nil checks

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* test: testing different starting spec

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* feat: add nil checks for all possible nil fields

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* chore: rerun tests

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

---------

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>
2024-09-30 10:01:17 -04:00
Dan Garfield
52c3f93010 fix: repo generate paths value in namespace install is incorrectly formatted (#20139)
* Fix repo generate paths value in namespace install

Signed-off-by: todaywasawesome <dan@codefresh.io>

* Fix in base and regen

Signed-off-by: todaywasawesome <dan@codefresh.io>

---------

Signed-off-by: todaywasawesome <dan@codefresh.io>
2024-09-30 09:54:58 -04:00
github-actions[bot]
8e070ce05a [Bot] docs: Update Snyk reports (#20146)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-09-30 13:45:23 +00:00
aria
fad534bcfe fix: Fix argocd appset generate failure due to missing clusterrole (#20162)
* fix: FIx argocd-server clusterrole to allow argocd appset generate using cluster generator

Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>

* fix: update generated code

Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>

---------

Signed-off-by: Pradithya Aria <pradithya.pura@gojek.com>
2024-09-30 09:42:12 -04:00
dependabot[bot]
7d3661cb21 chore(deps): bump docker/build-push-action from 6.7.0 to 6.8.0 (#20154)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.7.0 to 6.8.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](5cd11c3a4c...32945a3392)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-30 09:39:58 -04:00
Tony Au-Yeung
fa54ce221e fix: oras-go client should fallback to docker config if no credentials specified (#18133)
* oras-go client should fallback to docker config if no credentials specified

Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>

* Fix tests

Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>

* Fix lint

Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>

* gofumpt

Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>

* Validate auth header

Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>

---------

Signed-off-by: Tony Au-Yeung <tony@elevenlabs.io>
2024-09-27 21:33:42 +05:30
pasha-codefresh
ea71067059 chore(deps): bump Helm from 3.15.2 to 3.15.4 (#20135)
* sec: upgrade helm version in order to fix critical vulnerability

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* sec: upgrade helm version in order to fix critical vulnerability

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-09-27 09:45:58 -04:00
Linghao Su
159eeecd17 fix(ui): add optional check to avoid undefined reference in project detail (#20044)
Signed-off-by: linghaoSu <linghao.su@daocloud.io>
2024-09-27 09:15:49 -04:00
Symeon Meichanetzoglou
bc15ae89d8 Fix typo (#20127)
Remove a redundant "is".

Signed-off-by: Symeon Meichanetzoglou <simosmeih@gmail.com>
2024-09-26 23:14:50 +02:00
Alexandre Gaudreault
ca91dd9d6b fix(extension): add header to support apps-in-any-namespace (#20123)
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-09-26 15:12:21 -04:00
dependabot[bot]
e28a05f5c0 chore(deps-dev): bump @types/node from 22.5.5 to 22.7.2 in /ui-test (#20112)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.5.5 to 22.7.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-26 10:24:44 +03:00
Cheng Fang
f03146d3a0 fix: CVE-2024-45296 Backtracking regular expressions cause ReDoS by upgrading path-to-regexp from 1.8.0 to 1.9.0 (#20087)
Signed-off-by: Cheng Fang <cfang@redhat.com>
2024-09-24 22:27:52 -04:00
Javier Solana
b8249567ae feat: transmit manifest-generate-path resources to the cmp-server for plugin-based applications (#19209)
* chore: transmit manifest-generate-path resources to the cmp-server for plugin-based applications
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* use SecureJoin
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* make cmp manifests generation using manifest generate path annotation configurable by environment variable
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* fix missing doc running codegen-local
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* set reposerver.plugin.enable.manifests.generation.using.annotations false by default
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* define ARGOCD_REPO_SERVER_PLUGIN_ENABLE_GENERATE_MANIFESTS_USING_MANIFEST_GENERATE_PATHS_ANNOTATION properly
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* define ARGOCD_REPO_SERVER_PLUGIN_ENABLE_GENERATE_MANIFESTS_USING_MANIFEST_GENERATE_PATHS_ANNOTATION properly
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* Fix conflict
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* autogenerate install manifests
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* add note about common root path calculation for manifest paths annotation
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* log common root path calculated
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* app path must be the lower common path
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* tweaks

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Javier Solana <javier.solana@cabify.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-09-24 12:14:02 -04:00
github-actions[bot]
e1429f8ea6 [Bot] docs: Update Snyk reports (#20052)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-09-24 14:42:31 +00:00
dependabot[bot]
0710ff9103 chore(deps): bump go.uber.org/automaxprocs from 1.5.3 to 1.6.0 (#20068) 2024-09-24 14:51:58 +03:00
Nitish Kumar
dbc94ba13f fix: fix broken link (#20070)
* fix broken link

Signed-off-by: nitishfy <justnitish06@gmail.com>

* fix broken link

Signed-off-by: nitishfy <justnitish06@gmail.com>

---------

Signed-off-by: nitishfy <justnitish06@gmail.com>
2024-09-24 09:36:19 +02:00
1102
fe67cd54eb fix: corrected --roleARN to --role-arn as per updated CLI option (#20065)
Signed-off-by: nueavv <nuguni@kakao.com>
2024-09-23 17:24:47 -07:00
dependabot[bot]
864917b7cc chore(deps): bump google.golang.org/grpc from 1.66.2 to 1.67.0 (#20059)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.66.2 to 1.67.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.66.2...v1.67.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-23 09:53:29 -04:00
Linghao Su
fb825f705a feat(ui): move graphs by dragging mouse in app resource tree view (#18025) (#20009)
Signed-off-by: linghaoSu <linghao.su@daocloud.io>
2024-09-23 09:41:50 -04:00
Cayde6
eba559a449 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 <tjdfkr2421@gmail.com>

* 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 <tjdfkr2421@gmail.com>

* rebase

Signed-off-by: Jack-R-lantern <tjdfkr2421@gmail.com>

---------

Signed-off-by: Jack-R-lantern <tjdfkr2421@gmail.com>
2024-09-23 08:32:17 +05:30
Josh Soref
ddb79fe2e3 ci: Allow forks to opt-in for codeql (#19996)
Signed-off-by: Josh Soref <jsoref@gmail.com>
2024-09-22 19:25:06 -04:00
Allan M. de Azevedo
e77727cf12 docs: fix paragraph in "User Guide/Kustomize" (#20053)
Without the extra line break, the paragraph was rendered as part of the Kustomize application manifest.

Signed-off-by: Allan M. de Azevedo <4llan@users.noreply.github.com>
2024-09-22 19:22:28 -04:00
Nicholas Morey
602665feed docs: add project to repo creds examples (#20057)
* docs: add link to example repo creds yaml

Signed-off-by: Nicholas Morey <nicholas@morey.tech>

* docs: add project to repo creds examples

Signed-off-by: Nicholas Morey <nicholas@morey.tech>

---------

Signed-off-by: Nicholas Morey <nicholas@morey.tech>
2024-09-23 00:02:11 +02:00
Jungho
555854c3e9 fix(ui): add state parameter in the pkce flow (#17235)
* Add state to pkce flow

Signed-off-by: Jungho Son <js3692@users.noreply.github.com>

* Call unset

Signed-off-by: Jungho Son <js3692@users.noreply.github.com>

---------

Signed-off-by: Jungho Son <js3692@users.noreply.github.com>
2024-09-22 23:30:50 +05:30
Ajinkya Ganesh Kumbhar
0573ed79c1 chore: improve error logs (#20050)
Signed-off-by: ajinkyak423 <ajinkyakumbhar423@gmail.com>
2024-09-21 20:13:13 -04:00
1102
5f23bb6097 docs: add user to users.md (#20042)
Signed-off-by: nueavv <nuguni@kakao.com>
2024-09-21 15:33:40 -04:00
Linghao Su
40c60775bb fix(ui): carry over state when using full screen mode button (#20022) 2024-09-20 17:50:54 -04:00
Josh Soref
9ac1670c91 fix(ui): Sync Health Statuses for Applications and everything else (#20020)
Signed-off-by: Josh Soref <jsoref@gmail.com>
2024-09-20 20:49:23 +05:30
Josh Soref
de06f7716c docs: Remove FOSSA badge (#20038)
Signed-off-by: Josh Soref <jsoref@gmail.com>
2024-09-20 11:14:53 -04:00
dependabot[bot]
6b6d23bdf5 chore(deps): bump actions/setup-node from 4.0.3 to 4.0.4 (#20025)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.3 to 4.0.4.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](1e60f620b9...0a44ba7841)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-20 04:21:36 +00:00
dependabot[bot]
9b01c46e48 chore(deps): bump bitnami/kubectl in /test/container (#20024)
Bumps bitnami/kubectl from `27e5f50` to `da4a986`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-20 04:18:51 +00:00
Josh Soref
b0e3160ccf fix(ui): Change tab title to Sync Windows (#20018)
Signed-off-by: Josh Soref <jsoref@gmail.com>
2024-09-19 20:47:40 -07:00
dependabot[bot]
2b64c71e4d chore(deps): bump selenium-webdriver and @types/selenium-webdriver (#19959)
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) and [@types/selenium-webdriver](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/selenium-webdriver). These dependencies needed to be updated together.

Updates `selenium-webdriver` from 4.21.0 to 4.24.1
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Commits](https://github.com/SeleniumHQ/selenium/commits)

Updates `@types/selenium-webdriver` from 4.1.23 to 4.1.26
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/selenium-webdriver)

---
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/selenium-webdriver"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-19 20:45:02 -07:00
Justin Marquis
f460bf4573 docs: Update Okta OIDC CLI instructions (#20021)
Signed-off-by: Justin Marquis <justin@akuity.io>
2024-09-19 16:19:31 -07:00
dependabot[bot]
2c206a51d1 chore(deps): bump dompurify from 2.3.6 to 2.5.6 in /ui (#19955)
Bumps [dompurify](https://github.com/cure53/DOMPurify) from 2.3.6 to 2.5.6.
- [Release notes](https://github.com/cure53/DOMPurify/releases)
- [Commits](https://github.com/cure53/DOMPurify/compare/2.3.6...2.5.6)

---
updated-dependencies:
- dependency-name: dompurify
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-19 15:17:00 -04:00
Alexandre Gaudreault
a78594beb1 docs: Endpoints not excluded by default (#16023) (#20014)
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-09-19 18:59:15 +00:00
rumstead
735d090061 docs(reconcile): adding optional condition when ignoring json (#20010)
Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
2024-09-19 11:47:02 -04:00
dependabot[bot]
229826eb68 chore(deps): bump peter-evans/create-pull-request from 7.0.3 to 7.0.5 (#20000)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 7.0.3 to 7.0.5.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](6cd32fd936...5e914681df)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-19 09:03:07 -04:00
Henry Liu
1fcbcc1c23 fix(ui): fix open application detail in new tab when basehref is set (#20004) 2024-09-19 08:23:27 -04:00
dependabot[bot]
9e6d78effa chore(deps): bump library/node from 22.8.0 to 22.9.0 in /test/container (#20001)
Bumps library/node from 22.8.0 to 22.9.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-19 08:19:09 -04:00
Tchoupinax
f4c519ade5 feat(ui): display sha's revision in every history release (#19963)
Signed-off-by: Tchoupinax <corentinfiloche@hotmail.fr>
2024-09-19 13:15:02 +05:30
dependabot[bot]
02a4d9f2c0 chore(deps): bump chromedriver from 128.0.3 to 129.0.0 in /ui-test (#19998)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 128.0.3 to 129.0.0.
- [Commits](https://github.com/giggio/node-chromedriver/compare/128.0.3...129.0.0)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-19 10:41:26 +03:00
dependabot[bot]
c8eb5b5443 chore(deps): bump library/node from 22.8.0 to 22.9.0 (#19999)
Bumps library/node from 22.8.0 to 22.9.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-19 09:43:04 +03:00
dependabot[bot]
97d110bf27 chore(deps): bump library/node from fa4b468 to cbe2d5f in /ui-test (#19997)
Bumps library/node from `fa4b468` to `cbe2d5f`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-19 09:42:37 +03:00
dependabot[bot]
f64db6dba7 chore(deps): bump github.com/prometheus/client_golang (#19974)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.3 to 1.20.4.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.3...v1.20.4)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-18 17:24:26 -04:00
dependabot[bot]
04919f0a6f chore(deps): bump library/node from 22.8.0 to 22.9.0 in /ui-test (#19975)
Bumps library/node from 22.8.0 to 22.9.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-18 17:23:39 -04:00
Linghao Su
e09ff60d75 feat(ui): add token diff support in diff view (#19983)
Signed-off-by: linghaoSu <linghao.su@daocloud.io>
2024-09-18 13:17:15 -07:00
Ilya Gorban
2a199bc7ae feat(health): add healthchecks for Gloo resources (#11379)
* feat(custom healthchecks): add healthchecks for Gloo resources

Signed-off-by: Ilya Gorban <zelig81@users.noreply.github.com>

* fix(gloo custom healthchecks): fix healthcheck and add older cases

Signed-off-by: Ilya Gorban <zelig81@users.noreply.github.com>

* feat(custom healthchecks): fix tabulation in Gloo resources lua files

Signed-off-by: Ilya Gorban <zelig81@users.noreply.github.com>

---------

Signed-off-by: Ilya Gorban <zelig81@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-09-18 19:01:33 +00:00
Álvaro Aguilar-Tablada Espinosa
7d28c89f36 feat(health): resource customization for RabbitMQCluster (#15286)
Signed-off-by: Álvaro Aguilar <alvaro.aguilar@scrm.lidl>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-09-18 18:57:28 +00:00
pasha-codefresh
7f417e2be4 fix notificaion controller crash loop (#19984)
Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-09-18 18:56:05 +00:00
Michael Crenshaw
ae028c2322 chore: bump gitops-engine for performance improvement (#19954)
* chore: bump gitops-engine for performance improvement

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump gitops-engine version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix merge mistake

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-09-18 08:06:38 -04:00
itaynvn-runai
fd4cc93a30 feat: Change the file name convention when downloading pod logs (#19938)
* changed log file name convention

Signed-off-by: itaynvn-runai <itay.anavian@run.ai>

* fixed condition

Signed-off-by: itaynvn-runai <itay.anavian@run.ai>

* Update forwarder_overwrite.go

changed `appNamespace` to `namespace`.
as `appNamespace` will always be "argocd", and `namespace` is based on the actual k8s namespace, and will be unique.
so each log file name will always be unique, and descriptive.

Signed-off-by: itaynvn-runai <165032271+itaynvn-runai@users.noreply.github.com>

* Update forwarder_overwrite.go

added `container` to the file name

Signed-off-by: itaynvn-runai <165032271+itaynvn-runai@users.noreply.github.com>

---------

Signed-off-by: itaynvn-runai <itay.anavian@run.ai>
Signed-off-by: itaynvn-runai <165032271+itaynvn-runai@users.noreply.github.com>
2024-09-18 13:44:36 +05:30
Netanel Kadosh
fcc186bdd5 fix: Add redis password to forwardCacheClient struct (#19599)
Signed-off-by: Netanel Kadosh <kadoshnetanel@gmail.com>
2024-09-17 19:18:40 +03:00
Max Gautier
21d1f88106 docs: include cluster-management.md in TOC (#19964)
While it is searchable in the docs UI, the Cluster Management page is
not included in the Table of contents of https://argo-cd.readthedocs.io

Add it to increase it's discoverability.
We put it just before cluster-bootstrapping since an user would be
expected to add a cluster to argocd just before "bootstrapping"

Signed-off-by: Max Gautier <mg@max.gautier.name>
2024-09-17 08:33:46 -07:00
Regina Voloshin
a8e70e43ac chore: Make dev env redis password protected (#19863)
* create pr

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

* create pr

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

* create pr

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

* initial

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

* initial

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

* initial

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

* checking Redis is installed locally per Nitish's suggestion

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

* Update hack/start-redis-with-password.sh

Co-authored-by: Nitish Kumar <justnitish06@gmail.com>
Signed-off-by: Regina Voloshin <19544836+reggie-k@users.noreply.github.com>

* Update hack/start-redis-with-password.sh

Co-authored-by: Nitish Kumar <justnitish06@gmail.com>
Signed-off-by: Regina Voloshin <19544836+reggie-k@users.noreply.github.com>

* fixed unreachable code

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

---------

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>
Signed-off-by: Regina Voloshin <19544836+reggie-k@users.noreply.github.com>
Co-authored-by: Nitish Kumar <justnitish06@gmail.com>
2024-09-17 19:19:01 +05:30
ilia-medvedev-codefresh
20f9719001 fix: cleanup tempdir when errors occur in Helm chart extraction (#19861)
Fixed merge conflicts. 

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-09-17 15:15:32 +05:30
Dmytro Bondar
dce41c430e fix: Get pull request target branch for Azure DevOps (#19869) (#19871)
Signed-off-by: Dmytro Bondar <git@bonddim.com>
2024-09-17 15:10:49 +05:30
Nathan Shaaban
4e13b7f36c feat: allow auth token to be passed in via env (#19898)
* feat: allow auth token to be passed in via env

Allows the authentication token to come from environment if it's not found in cli args.

Signed-off-by: Nathan Shaaban <86252985+ctrlaltf24@users.noreply.github.com>

* chore: generate cli docs

Signed-off-by: Nathan Shaaban <86252985+ctrlaltf24@users.noreply.github.com>

---------

Signed-off-by: Nathan Shaaban <86252985+ctrlaltf24@users.noreply.github.com>
Co-authored-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-09-17 15:04:25 +05:30
morapet
bcc224b32c prevent crash during timer expiration after stream is closed (#19917)
Reorder ticker stop and close merge to prevent send(true) happens after merge is closed, in rare situation when the timer expires exactly at the point between close(merge) and ticker.Stop()

Signed-off-by: morapet <peter@moran.sk>
2024-09-17 15:02:38 +05:30
dependabot[bot]
308c6cb526 chore(deps): bump github.com/casbin/casbin/v2 from 2.99.0 to 2.100.0 (#19960)
Bumps [github.com/casbin/casbin/v2](https://github.com/casbin/casbin) from 2.99.0 to 2.100.0.
- [Release notes](https://github.com/casbin/casbin/releases)
- [Changelog](https://github.com/casbin/casbin/blob/master/.releaserc.json)
- [Commits](https://github.com/casbin/casbin/compare/v2.99.0...v2.100.0)

---
updated-dependencies:
- dependency-name: github.com/casbin/casbin/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-17 11:37:10 +03:00
Pavel Soloviev
4b478ef2c8 docs: Add empty GitHub.repoURL error to troubleshooting docs (#19926)
Signed-off-by: Moleus <fafufuburr@gmail.com>
2024-09-17 11:34:21 +03:00
Falanty
c8dcd83f88 feat: add ARGOCD_APP_REVISION_SHORT_8 variable in build environment (#19931)
Signed-off-by: Adam, Patrick <p.adam@mail.de>
Co-authored-by: Adam, Patrick <p.adam@mail.de>
2024-09-17 11:20:02 +03:00
github-actions[bot]
94e02101c6 Bump version in master (#19947)
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <39732895+pasha-codefresh@users.noreply.github.com>
2024-09-17 05:37:40 +00:00
dependabot[bot]
d636e53665 chore(deps): bump peter-evans/create-pull-request from 7.0.2 to 7.0.3 (#19957)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 7.0.2 to 7.0.3.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](d121e62763...6cd32fd936)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-17 00:38:25 -04:00
dependabot[bot]
8f65594ca9 chore(deps): bump tj-actions/changed-files from 45.0.1 to 45.0.2 (#19958)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 45.0.1 to 45.0.2.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](e9772d1404...48d8f15b2a)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-17 00:36:49 -04:00
Michael Crenshaw
14a1a552dc chore: bump gitops-engine for performance improvements (#19953)
* chore: bump gitops-engine for performance improvement

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump gitops-engine version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-09-16 21:40:25 +00:00
github-actions[bot]
bb1123ad7f [Bot] docs: Update Snyk reports (#19936)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-09-16 21:06:38 +00:00
Frederic MARTIN
757c395e64 docs: fix typo in upgrading section of operator manual (#19950)
Signed-off-by: Frederic MARTIN <frederic@martin.lc>
2024-09-16 03:26:55 -10:00
kswadi
038a83276c docs: fix typo in ingress section of operator manual (#19946)
Signed-off-by: kswadi <kswadi01@gmail.com>
2024-09-16 01:39:42 -10:00
dependabot[bot]
e67a7b6674 chore(deps-dev): bump @types/node from 22.5.4 to 22.5.5 in /ui-test (#19941)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.5.4 to 22.5.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-16 04:53:11 +00:00
dependabot[bot]
ddf337e893 chore(deps): bump bitnami/kubectl in /test/container (#19939)
Bumps bitnami/kubectl from `7779e58` to `27e5f50`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-16 00:37:53 -04:00
dependabot[bot]
5540c37f3a chore(deps): bump github.com/cyphar/filepath-securejoin (#19940)
Bumps [github.com/cyphar/filepath-securejoin](https://github.com/cyphar/filepath-securejoin) from 0.3.1 to 0.3.2.
- [Release notes](https://github.com/cyphar/filepath-securejoin/releases)
- [Changelog](https://github.com/cyphar/filepath-securejoin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cyphar/filepath-securejoin/compare/v0.3.1...v0.3.2)

---
updated-dependencies:
- dependency-name: github.com/cyphar/filepath-securejoin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-16 00:37:35 -04:00
dependabot[bot]
60df9eb384 chore(deps-dev): bump mocha and @types/mocha in /ui-test (#19923)
Bumps [mocha](https://github.com/mochajs/mocha) and [@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha). These dependencies needed to be updated together.

Updates `mocha` from 10.4.0 to 10.7.3
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v10.4.0...v10.7.3)

Updates `@types/mocha` from 10.0.6 to 10.0.8
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha)

---
updated-dependencies:
- dependency-name: mocha
  dependency-type: direct:development
  update-type: version-update:semver-minor
- dependency-name: "@types/mocha"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-13 12:26:46 -07:00
dependabot[bot]
c6a414c7db chore(deps): bump chromedriver from 128.0.1 to 128.0.3 in /ui-test (#19924)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 128.0.1 to 128.0.3.
- [Commits](https://github.com/giggio/node-chromedriver/compare/128.0.1...128.0.3)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-13 12:26:06 -07:00
dependabot[bot]
d49e175c53 chore(deps): bump library/busybox in /test/e2e/multiarch-container (#19925)
Bumps library/busybox from `34b191d` to `c230832`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-13 12:25:55 -07:00
Thibault Jamet
42c001dd14 fix(appset): Fix perpetual appset reconciliation (#19822)
Golang maps do not guarantee the order of the application resources
from the applicationset which causes rapid sync activity for the applicationset
as the objects and hence their resourceVersions are updated after each reconcile loop.

This then triggers reconciliation of all objects watching the
ApplicationSet.

In order to prevent this behaviour, ensure that the ApplicationSet
reconciler provides an idempotent list of resources, ensuring objects
are not updated.

Fixes: #19757

Signed-off-by: Thibault Jamet <thibault.jamet@adevinta.com>
Signed-off-by: Fabián Sellés <fabian.selles@adevinta.com>
Co-authored-by: Fabian Selles <fabian.sellesrosa@gmail.com>
Co-authored-by: Ariadna Rouco <ariadna.rouco@adevinta.com>
2024-09-13 13:43:53 -04:00
dependabot[bot]
ccc66cc54d chore(deps): bump peter-evans/create-pull-request from 7.0.1 to 7.0.2 (#19922)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 7.0.1 to 7.0.2.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](8867c4aba1...d121e62763)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-13 16:30:20 +01:00
Vikram Sethi
f22c332d92 Add Adobe to USERS.md (#19927)
Adobe is actively using all four Argo projects

Signed-off-by: Vikram Sethi <vsethi@adobe.com>
2024-09-12 23:49:17 -10:00
rumstead
cb6fbbfdea fix(docs): adding links for appset matrix example (#19914)
* fix(docs): adding links for appset matrix example

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* fix(docs): adding links for appset matrix example

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

---------

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
2024-09-12 22:55:41 -06:00
Kostis (Codefresh)
81de487cf6 docs: Application sets metrics documentation (#19892)
* docs: fixed wrong formatting of yaml

Signed-off-by: Kostis (Codefresh) <39800303+kostis-codefresh@users.noreply.github.com>

* docs: metrics for application sets

Signed-off-by: Kostis (Codefresh) <39800303+kostis-codefresh@users.noreply.github.com>

* docs: applicationset metrics suggestions from code review

Co-authored-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Kostis (Codefresh) <39800303+kostis-codefresh@users.noreply.github.com>

* docs: minor formatting fix

Co-authored-by: Nitish Kumar <justnitish06@gmail.com>
Signed-off-by: Kostis (Codefresh) <39800303+kostis-codefresh@users.noreply.github.com>

---------

Signed-off-by: Kostis (Codefresh) <39800303+kostis-codefresh@users.noreply.github.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
Co-authored-by: Nitish Kumar <justnitish06@gmail.com>
2024-09-12 15:02:13 +00:00
dependabot[bot]
28f424f8f9 chore(deps): bump library/golang from 4a3c2bc to 2fe82a3 (#19905)
Bumps library/golang from `4a3c2bc` to `2fe82a3`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-12 06:25:54 +00:00
dependabot[bot]
bf02881374 chore(deps): bump library/redis in /test/container (#19900)
Bumps library/redis from `fbff2d8` to `eadf354`.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-12 01:47:33 -04:00
dependabot[bot]
393f7fc7c1 chore(deps): bump library/golang in /test/container (#19901)
Bumps library/golang from `4a3c2bc` to `2fe82a3`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-12 01:47:19 -04:00
dependabot[bot]
48a03a9884 chore(deps): bump google.golang.org/grpc from 1.66.1 to 1.66.2 (#19902)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.66.1 to 1.66.2.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.66.1...v1.66.2)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-12 01:47:05 -04:00
dependabot[bot]
7abdd88d81 chore(deps): bump go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc (#19903)
Bumps [go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc](https://github.com/open-telemetry/opentelemetry-go-contrib) from 0.54.0 to 0.55.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go-contrib/compare/zpages/v0.54.0...zpages/v0.55.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-12 01:46:50 -04:00
dependabot[bot]
c20734df37 chore(deps): bump gitpod/workspace-full from fbff2dc to 230285e (#19904)
Bumps gitpod/workspace-full from `fbff2dc` to `230285e`.

---
updated-dependencies:
- dependency-name: gitpod/workspace-full
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-12 05:27:18 +00:00
dependabot[bot]
f5a202abb3 chore(deps): bump library/golang in /test/remote (#19899)
Bumps library/golang from `4a3c2bc` to `2fe82a3`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-09-12 04:53:03 +00:00
Linghao Su
20e7f8edca feat(ui): add health status and message in sync status list (#19875)
Signed-off-by: linghaoSu <linghao.su@daocloud.io>
Co-authored-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-09-11 20:26:44 -07:00
dependabot[bot]
ddab959958 chore(deps): bump library/redis from 7.2.5 to 7.4.0 in /test/container (#19294)
Bumps library/redis from 7.2.5 to 7.4.0.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 20:25:17 -07:00
Suraj yadav
aeb8b55fc0 fix(ui): Re-fix help-icon in the summary section (#19833)
* refix-icon

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* lint

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
2024-09-11 22:10:27 -04:00
Seolhui Lee
c4709fbf5f feat: Add graceful shutdown handling in notification (#19368)
Signed-off-by: LeeSeolHui <lsh81550@gmail.com>
2024-09-11 22:08:25 -04:00
Thiago Perrotta
022c4fd061 docs(sync windows): rename Sunday-Saturday (#19885) (#19886)
* fix(sync windows): rename Sunday-Saturday

Sunday-Saturday is ambiguous. It could mean:

- sunday and saturday ONLY
- from sunday to saturday (=every day of the week)

In order to disambiguate, we could change the label to one of the
following:

- Every Day of the Week
- Sunday to Saturday
- From Sunday to Saturday

Signed-off-by: Thiago Perrotta <tbperrotta@gmail.com>

* Update ui/src/app/settings/components/project-sync-windows-edit/project-sync-windows-edit.tsx

Co-authored-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Thiago Perrotta <tbperrotta@gmail.com>

---------

Signed-off-by: Thiago Perrotta <tbperrotta@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-09-11 21:37:35 -04:00
1102
02df74192f docs: Clarify AWS profile mounting locations for EKS cluster addition (#19853)
Signed-off-by: nueavv <nuguni@kakao.com>
2024-09-11 20:28:39 -04:00
1102
ad399c0a88 docs: Add Installation Warning and Kustomize Guide (#19874)
* Update installation docs: Add warning for ClusterRoleBinding and custom namespace

Signed-off-by: nueavv <nuguni@kakao.com>

* Add support for installing Argo CD in custom namespace using Kustomize

Signed-off-by: nueavv <nuguni@kakao.com>

* remove clusterrolebinding name

Signed-off-by: nueavv <nuguni@kakao.com>

---------

Signed-off-by: nueavv <nuguni@kakao.com>
2024-09-11 16:54:44 -06:00
Jingchao
f980187f17 fix: openkruise health check npe error #19545 (#19660)
* test: add broken unit test data

Signed-off-by: Jingchao <alswlx@gmail.com>

* fix: npe error in kruise ds health-check

Signed-off-by: Jingchao <alswlx@gmail.com>

---------

Signed-off-by: Jingchao <alswlx@gmail.com>
2024-09-11 15:32:37 -07:00
dependabot[bot]
da118ad6aa chore(deps): bump express from 4.19.2 to 4.20.0 in /ui (#19883)
Bumps [express](https://github.com/expressjs/express) from 4.19.2 to 4.20.0.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.19.2...4.20.0)

---
updated-dependencies:
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 15:27:59 -07:00
dependabot[bot]
44d56954b7 chore(deps): bump library/golang from 1.22.6 to 1.23.1 (#19838)
Bumps library/golang from 1.22.6 to 1.23.1.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 15:27:08 -07:00
afarbos
e86258d8a5 feat: Implement PodDisruptionBudget CRD health checks (#19826)
Signed-off-by: Arnaud Farbos <farbos.arnaud@gmail.com>
2024-09-11 15:24:59 -07:00
dependabot[bot]
8487a93931 chore(deps): bump library/golang from 1.22.0 to 1.23.1 in /test/remote (#19840)
Bumps library/golang from 1.22.0 to 1.23.1.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 15:20:21 -07:00
dependabot[bot]
76870db199 chore(deps): bump library/golang in /test/container (#19841)
Bumps library/golang from `80cf6f9` to `4a3c2bc`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 15:19:51 -07:00
dependabot[bot]
d60f8d8ba2 chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc (#19877)
Bumps [go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc](https://github.com/open-telemetry/opentelemetry-go) from 1.27.0 to 1.30.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.27.0...v1.30.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 15:18:46 -07:00
Nitish Kumar
5e55d1d502 docs: mention information about where to set the ARGOCD_SYNC_WAVE_DELAY environment variable (#19879)
* Update sync-waves.md

Signed-off-by: Nitish Kumar <justnitish06@gmail.com>

* Update docs/user-guide/sync-waves.md

Co-authored-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Nitish Kumar <justnitish06@gmail.com>

---------

Signed-off-by: Nitish Kumar <justnitish06@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-09-11 16:11:26 -06:00
Nitish Kumar
ebbd3d1321 feat: add --source-position flag to argocd get app command to show parameter changes for multi-source application (#19887)
Signed-off-by: nitishfy <justnitish06@gmail.com>
2024-09-11 22:47:31 +05:30
KangManJoo
b098f2152e chore: improve error logs (#10592) (#19743)
Signed-off-by: KangManJoo <eogns47@konkuk.ac.kr>
2024-09-11 13:14:47 -04:00
dependabot[bot]
a7bc623fef chore(deps): bump go.opentelemetry.io/otel/sdk from 1.29.0 to 1.30.0 (#19878)
Bumps [go.opentelemetry.io/otel/sdk](https://github.com/open-telemetry/opentelemetry-go) from 1.29.0 to 1.30.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.29.0...v1.30.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel/sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 13:06:56 -04:00
mmuzh
1de5f3b7fc Add Augury as part of argocd users (#19890)
Signed-off-by: mmuzh <96480964+MaxMuzh@users.noreply.github.com>
2024-09-11 13:53:33 +02:00
dependabot[bot]
14c1da6e40 chore(deps): bump github.com/xanzy/go-gitlab from 0.108.0 to 0.109.0 (#19839)
Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.108.0 to 0.109.0.
- [Release notes](https://github.com/xanzy/go-gitlab/releases)
- [Changelog](https://github.com/xanzy/go-gitlab/blob/main/releases_test.go)
- [Commits](https://github.com/xanzy/go-gitlab/compare/v0.108.0...v0.109.0)

---
updated-dependencies:
- dependency-name: github.com/xanzy/go-gitlab
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 12:11:26 +03:00
mhaoda
bc4c4757fd fix: proxy url arg for repocreds command. (#19805)
* Add proxy url arg for repocreds command.

Co-authored-by: Li Wang <li.wang3@fmr.com>
Signed-off-by: Miao Haoda <Haoda.Miao@fmr.com>

* commit the results of clidocsgen

Signed-off-by: Miao Haoda <Haoda.Miao@fmr.com>

---------

Signed-off-by: Miao Haoda <Haoda.Miao@fmr.com>
Co-authored-by: Li Wang <li.wang3@fmr.com>
2024-09-11 10:11:30 +02:00
Alexandre Gaudreault
ca7a08eb95 fix(deeplinks): do not evaluate template when condition is false (#19625) (#19868)
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-09-10 16:34:51 -04:00
Ashu
5776554819 feat(lua actions): add a flag to Include builtin actions with resource overrides (#19708)
* feat: include prebuilt action with overrides

Signed-off-by: ashutosh16 <11219262+ashutosh16@users.noreply.github.com>


Signed-off-by: ashutosh16 <11219262+ashutosh16@users.noreply.github.com>
Signed-off-by: Ashu <11219262+ashutosh16@users.noreply.github.com>
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-09-10 11:57:29 -07:00
Leonardo Luz Almeida
878494f037 feat: Send user groups to proxy extensions (#19855)
* feat: Send user groups to proxy extensions

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* address review comments

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

---------

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
2024-09-10 15:37:00 +00:00
Marios Andreopoulos
d8c773dd3d docs: fix Helm --set-file example (#19864)
Signed-off-by: Marios Andreopoulos <opensource@andmarios.com>
2024-09-10 09:08:39 -04:00
dependabot[bot]
d2d9a37a0c chore(deps): bump google.golang.org/grpc from 1.66.0 to 1.66.1 (#19860)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.66.0 to 1.66.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.66.0...v1.66.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-10 11:15:41 +03:00
dependabot[bot]
ccc528aa9a chore(deps-dev): bump typescript from 5.5.4 to 5.6.2 in /ui-test (#19857)
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.5.4 to 5.6.2.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.5.4...v5.6.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-10 11:13:00 +03:00
Rafal
031fb88fbb fix(ui): Container Selector in Pods doesn't work (#19856)
Signed-off-by: Rafal Pelczar <rafal@akuity.io>
2024-09-10 09:22:11 +05:30
Alexandre Gaudreault
21a364158e feat(cli): ignore tracking annotation on backup restore (#18960)
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-09-09 15:50:00 -04:00
Andrea Cervesato
47c7e46405 Missing close ``` in kustomize documentation (#19850)
As per title: ```  is missing in the first object.

Signed-off-by: Andrea Cervesato <andrea.cervesato@gmail.com>
2024-09-09 12:42:09 +02:00
Gergely Fábián
cb926d004d chore: bump go version to 1.22.7 (#19845)
Signed-off-by: Gergely Fábián <gergo.fb@gmail.com>
2024-09-09 12:33:16 +03:00
dependabot[bot]
a2aaf7fd1d chore(deps): bump library/node from c6add15 to bd00c03 in /ui-test (#19844)
Bumps library/node from `c6add15` to `bd00c03`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-09 12:30:04 +03:00
dependabot[bot]
06237b3fee chore(deps): bump library/registry in /test/container (#19842)
Bumps library/registry from `1212042` to `ac0192b`.

---
updated-dependencies:
- dependency-name: library/registry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-09 12:29:48 +03:00
Tchoupinax
be90cc04fb feat: add a button to show parameter details (#12183) (#16871) 2024-09-08 17:20:48 +03:00
github-actions[bot]
5af95b1350 [Bot] docs: Update Snyk reports (#19831) 2024-09-08 13:54:17 +03:00
pasha-codefresh
aa990d6696 always execute sync if at least for one revision we identify if it was changed or no (#19828)
Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-09-07 12:12:33 -04:00
carlosrejano
71bbdccacf fix(appset): Retry on conflict when updating status (#19663)
* fix(appset): Retry on conflict when updating status

  # Context:
  When updating the status of the applicationset object it can happen
  that it fails due to a conflict since the resourceVersion has changed
  due to a different update. This makes the reconcile fails and we need
  to wait until the following reconcile loop until it updates the
  relevant status fields and hope that the update calls don't fail again
  due a conflict. It can even happen that it gets stuck constantly due
  to this erriors.

  A better approach I would say is retrying when there is a conflict
  error with the newest version of the object, so we make sure we update
  the object with the latest version always.

  This has been raised in issue #19535 that failing due to conflicts can
  make the reconcile not able to proceed.

  # What does this PR?
  - Wraps all the `Update().Status` calls inside a retry function that
    will retry when the update fails due a conflict.
  - Adds appset to fake client subresources, if not the client can not
    correctly determine the status subresource. Refer to:
    https://github.com/kubernetes-sigs/controller-runtime/issues/2386,
    and
    https://github.com/kubernetes-sigs/controller-runtime/issues/2362.

Signed-off-by: Carlos Rejano <carlos.rejano@adevinta.com>

* fixup! fix(appset): Retry on conflict when updating status

---------

Signed-off-by: Carlos Rejano <carlos.rejano@adevinta.com>
Signed-off-by: carlosrejano <59321132+carlosrejano@users.noreply.github.com>
Co-authored-by: Carlos Rejano <carlos.rejano@adevinta.com>
2024-09-07 20:55:39 +05:30
pasha-codefresh
473665795c fix: manifest-generate-paths with autosync causes an undesirable refresh sync (#19799)
Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-09-06 11:40:48 -04:00
dependabot[bot]
3661f09456 chore(deps): bump library/node from 8ec0232 to c6add15 in /ui-test (#19807)
Bumps library/node from `8ec0232` to `c6add15`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 16:59:48 +03:00
dependabot[bot]
1759a4406b chore(deps): bump github.com/prometheus/client_golang (#19810)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.2 to 1.20.3.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/v1.20.3/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.2...v1.20.3)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 16:59:35 +03:00
dependabot[bot]
cc42d5f92d chore(deps): bump library/golang in /test/container (#19811)
Bumps library/golang from `1a6db32` to `80cf6f9`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 16:58:40 +03:00
dependabot[bot]
3136d08f44 chore(deps): bump bitnami/kubectl in /test/container (#19812)
Bumps bitnami/kubectl from `664bf2a` to `7779e58`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 16:58:26 +03:00
dependabot[bot]
6533a6f686 chore(deps): bump library/node in /test/container (#19813)
Bumps library/node from `8ec0232` to `bd00c03`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 16:58:12 +03:00
dependabot[bot]
3f5b80f626 chore(deps): bump library/node from 8ec0232 to bd00c03 (#19814)
Bumps library/node from `8ec0232` to `bd00c03`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 16:55:47 +03:00
dependabot[bot]
3d66b05899 chore(deps): bump tj-actions/changed-files from 44.5.7 to 45.0.1 (#19750)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 44.5.7 to 45.0.1.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](c65cd88342...e9772d1404)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 09:24:00 +02:00
dependabot[bot]
b84f01eb3d chore(deps): bump peter-evans/create-pull-request from 7.0.0 to 7.0.1 (#19806)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 7.0.0 to 7.0.1.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](4320041ed3...8867c4aba1)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 09:23:07 +02:00
dependabot[bot]
09fdec4c6b chore(deps): bump golang.org/x/oauth2 from 0.22.0 to 0.23.0 (#19790)
Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from 0.22.0 to 0.23.0.
- [Commits](https://github.com/golang/oauth2/compare/v0.22.0...v0.23.0)

---
updated-dependencies:
- dependency-name: golang.org/x/oauth2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 09:22:14 +02:00
dependabot[bot]
01bbd91c9d chore(deps): bump golang.org/x/net from 0.28.0 to 0.29.0 (#19808)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.28.0 to 0.29.0.
- [Commits](https://github.com/golang/net/compare/v0.28.0...v0.29.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 04:57:18 +00:00
Dan Garfield
d28229dc1c Fix broken link from overview, previous merge conflict (#19801)
Signed-off-by: todaywasawesome <dan@codefresh.io>
2024-09-05 14:54:50 -04:00
Dustin Lactin
9d3409f7d5 docs: Add Mozilla to USERS.md (#19802)
Signed-off-by: Dustin Lactin <dlactin@mozilla.com>
2024-09-05 06:44:58 -10:00
Alexander Matyushentsev
ba67abed40 docs: proposal to introduce 'Prune/Delete=confirm' sync option value (#19520)
* docs: proposal to introduce 'Prune/Delete=confirm' sync option value

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* add clarifications

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

---------

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-09-05 19:10:39 +03:00
Keith Chong
6dc7405cf9 fix: Delete button should be disabled when one source remains (#18804) 2024-09-05 05:37:59 -04:00
dependabot[bot]
c27091cb4f chore(deps): bump golang.org/x/term from 0.23.0 to 0.24.0 (#19789)
Bumps [golang.org/x/term](https://github.com/golang/term) from 0.23.0 to 0.24.0.
- [Commits](https://github.com/golang/term/compare/v0.23.0...v0.24.0)

---
updated-dependencies:
- dependency-name: golang.org/x/term
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-05 10:47:25 +03:00
dependabot[bot]
bd93902325 chore(deps): bump library/busybox in /test/e2e/multiarch-container (#19791)
Bumps library/busybox from `8274294` to `34b191d`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-05 09:42:53 +03:00
dependabot[bot]
d9bda34605 chore(deps): bump bitnami/kubectl in /test/container (#19792)
Bumps bitnami/kubectl from `96ef4d3` to `664bf2a`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-05 09:42:29 +03:00
dependabot[bot]
ece68bd143 chore(deps): bump library/golang in /test/container (#19793)
Bumps library/golang from `613a108` to `1a6db32`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-05 09:42:09 +03:00
foyerunix
de35745fc0 feat: Add metric to expose Applications conditions (#19438)
Closes #13096

Implement a new metric exposing Applications conditions.
This is particularly useful for SRE teams to be able
to setup alerts on issues that aren't displayed via
"health_status" and "sync_status" in the metric "argocd_app_info".

Signed-off-by: Foyer Unix <foyerunix@foyer.lu>
Co-authored-by: Foyer Unix <foyerunix@foyer.lu>
2024-09-05 09:41:35 +03:00
dependabot[bot]
bb43c5a83d chore(deps-dev): bump @types/node from 22.5.3 to 22.5.4 in /ui-test (#19794) 2024-09-05 09:12:41 +03:00
rumstead
01874d64de fix(appset): allow for shorthand git refs in git generators #15427 (#19783)
* fix(appset): allow for shorthand git refs in git generators

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* Retrigger CI pipeline

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* attempt to fix goimports

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* attempt to fix goimports

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* remove redundant test

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

---------

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
2024-09-05 10:13:30 +05:30
Xiaopeng Han
aa2bafd812 fix(cli): admin settings rbac can has inconsistency among project resources (#17805)
* fix admin can inconsistency among resources

Signed-off-by: xiaopeng <hanxiaop8@outlook.com>

* revise logic and fix lint

Signed-off-by: xiaopeng <hanxiaop8@outlook.com>

---------

Signed-off-by: xiaopeng <hanxiaop8@outlook.com>
2024-09-05 10:07:13 +05:30
Anand Francis Joseph
d3fbeec825 Fixed go.mod to remove the replace construct added for gitops-engine (#19788)
Signed-off-by: anandf <anjoseph@redhat.com>
2024-09-05 02:16:50 +00:00
dependabot[bot]
63b6565079 chore(deps): bump google.golang.org/grpc from 1.65.0 to 1.66.0 (#19719)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.65.0 to 1.66.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.65.0...v1.66.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-04 20:32:58 -04:00
sxt90128
ef41eebd10 fix: issue 19395 change delete icon color in dark model (#19747)
* fix-19395 change delete icon color in dark model

Signed-off-by: Esther Shen <xingtong.shen@fmr.com>

* fix-19395 revert formatting changes

Signed-off-by: Esther Shen <xingtong.shen@fmr.com>

* fix-19395 revert formatting changes

Signed-off-by: Esther Shen <xingtong.shen@fmr.com>

* fix-19395 revert formatting changes

Signed-off-by: Esther Shen <xingtong.shen@fmr.com>

---------

Signed-off-by: Esther Shen <xingtong.shen@fmr.com>
2024-09-04 20:24:40 -04:00
Dan Garfield
832fefb533 Add links to index page (#19786)
Signed-off-by: todaywasawesome <dan@codefresh.io>
2024-09-04 20:18:32 -04:00
Dan Garfield
9c47a709fb Fix local guide for building and testing docs (#19785)
Signed-off-by: todaywasawesome <dan@codefresh.io>
2024-09-04 20:13:53 -04:00
Anand Francis Joseph
1028808bb7 feat: Decoupling application sync using impersonation (#17403)
* Implementation of app sync with impersonation support

Signed-off-by: anandf <anjoseph@redhat.com>

* negation test

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* Update doc comments to remove server name as its not supported.

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Signed-off-by: Anand Francis Joseph <anandfrancis.joseph@gmail.com>

* Update glob pattern check for matching destinations.

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Signed-off-by: Anand Francis Joseph <anandfrancis.joseph@gmail.com>

* Corrected the code comments for namespace field and destination matching logic

Signed-off-by: anandf <anjoseph@redhat.com>

* Added missing generated files

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed golint errors caused due to to gofumpt validations

Signed-off-by: anandf <anjoseph@redhat.com>

* Fix golint errors with unit test code

Signed-off-by: anandf <anjoseph@redhat.com>

* Updated the go import ordering with local packages at the end

Signed-off-by: anandf <anjoseph@redhat.com>

* Addressed review comments

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed ES lint error caused due to missing class

Signed-off-by: anandf <anjoseph@redhat.com>

* Updated the documentation to address the review comments

Signed-off-by: anandf <anjoseph@redhat.com>

* Simplified the sync code and improved logs and error handling

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed E2E tests to fail when no sa is configured

Signed-off-by: anandf <anjoseph@redhat.com>

* Updated help message generated for CLI commands

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed failing tests due to default service account not used for sync operation

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed the error message when sync fails due to no matching sa

Signed-off-by: anandf <anjoseph@redhat.com>

* Removed repeating logs and added impersonation fields to logger

Signed-off-by: anandf <anjoseph@redhat.com>

* Made changes in the proposal to match the behaviour when no matching sa is found

Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>

---------

Signed-off-by: anandf <anjoseph@redhat.com>
Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>
Signed-off-by: Anand Francis Joseph <anandfrancis.joseph@gmail.com>
Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>
Co-authored-by: Mangaal <angommeeteimangaal@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-09-04 14:18:47 -04:00
Dan Garfield
f071fdcfa3 Update pygments to 2.15.1 (#19782)
Signed-off-by: todaywasawesome <dan@codefresh.io>
2024-09-04 18:14:37 +03:00
Cheng Fang
e3e02f0064 chore(lint): errors reported by golangci-lint: S1009: should omit nil check; printf: non-constant format string (#19773)
Signed-off-by: Cheng Fang <cfang@redhat.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-09-04 14:58:15 +00:00
dependabot[bot]
6cdba1e536 chore(deps): bump peter-evans/create-pull-request from 6.1.0 to 7.0.0 (#19776)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 6.1.0 to 7.0.0.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](c5a7806660...4320041ed3)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-04 09:47:34 -04:00
Kunho Lee
a6d11354bb chore: add gcflags option when build in cli-local command (#19742)
Signed-off-by: daengdaengLee <gunho1020@gmail.com>
2024-09-04 15:37:30 +03:00
abdaziz
b9bd45b059 docs: update keycloak.md (#17684)
* Update keycloak.md

The documentation is excellent, but after following it, i'v experienced an issue 401, and the UI loop to login, to fix it i restarted the argocd-server pod then it' worked well.

Signed-off-by: abdaziz <abdazizg@gmail.com>

* Update keycloak.md

update the requested changes from @wanghong230

Signed-off-by: abdaziz <abdazizg@gmail.com>

* Update keycloak.md

Signed-off-by: abdaziz <abdazizg@gmail.com>

* Update keycloak.md

good format.

Signed-off-by: abdaziz <abdazizg@gmail.com>

---------

Signed-off-by: abdaziz <abdazizg@gmail.com>
2024-09-04 10:28:40 +03:00
dependabot[bot]
da43a20c6a chore(deps): bump actions/upload-artifact from 4.3.6 to 4.4.0 (#19751)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.6 to 4.4.0.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](834a144ee9...50769540e7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-04 10:09:09 +03:00
dependabot[bot]
de8ed2b9a7 chore(deps): bump library/node from 22.7.0 to 22.8.0 in /ui-test (#19775)
Bumps library/node from 22.7.0 to 22.8.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-04 09:57:28 +03:00
dependabot[bot]
f3b90ee517 chore(deps-dev): bump @types/node from 22.5.2 to 22.5.3 in /ui-test (#19777)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.5.2 to 22.5.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-04 09:57:09 +03:00
dependabot[bot]
f651ce7169 chore(deps): bump library/node from 22.7.0 to 22.8.0 in /test/container (#19778)
Bumps library/node from 22.7.0 to 22.8.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-04 09:56:56 +03:00
dependabot[bot]
2b929ef2b6 chore(deps): bump library/node from 22.7.0 to 22.8.0 (#19779)
Bumps library/node from 22.7.0 to 22.8.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-04 09:56:29 +03:00
Henry Liu
06e85eed36 fix(ui): fix first line log timestamp (#19724)
Signed-off-by: henry.liu <henry.liu@daocloud.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-09-04 11:17:54 +05:30
Pierre Lebrun
09e44e5f21 fix: Fix semver resolution (#19644)
Signed-off-by: Pierre Lebrun <pierreyves.lebrun@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-09-03 18:48:32 +00:00
Henry Liu
047f709c50 fix(ui): reload credential template list after refresh (#19764)
Signed-off-by: henry.liu <henry.liu@daocloud.io>
2024-09-03 08:36:25 -07:00
Suraj yadav
566e1d2ada fix(ui): Added field bottom for Username and Passsword (#19762)
* auth-field

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* lint-fix

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
2024-09-03 20:05:34 +05:30
George
5e294d84b7 feat(util/notification): add duration and timestamp constants from stdlib time package (#10706)
* feat(util/notification): add duration and timestamp constants from stdlib time package

Signed-off-by: George MacRorie <me@georgemac.com>

* chore(docs): add details on new time constants

Signed-off-by: George MacRorie <me@georgemac.com>

* chore: run go mod tidy

Signed-off-by: George MacRorie <me@georgemac.com>

* chore(util/notification): use require.NoError instead of require.Nil

Signed-off-by: George MacRorie <me@georgemac.com>

* chore: go mod tidy

Signed-off-by: George MacRorie <me@georgemac.com>

---------

Signed-off-by: George MacRorie <me@georgemac.com>
2024-09-03 15:55:32 +03:00
Ignas Kaziukėnas
da345ee5f6 fix: pass the correct parameter for strict tls validation in applicationset controller (#19759)
Signed-off-by: ignas-kaziukenas_css <ignas.kaziukenas@cloudkitchens.com>
Co-authored-by: ignas-kaziukenas_css <ignas.kaziukenas@cloudkitchens.com>
2024-09-02 15:40:15 -07:00
dependabot[bot]
b574cdc714 chore(deps): bump bitnami/kubectl in /test/container (#19753)
Bumps bitnami/kubectl from `44f99aa` to `96ef4d3`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-09-02 13:28:14 +03:00
github-actions[bot]
79b1e4bfc7 [Bot] docs: Update Snyk reports (#19745)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-09-02 12:49:08 +03:00
dependabot[bot]
1f8add5907 chore(deps): bump github.com/Masterminds/sprig/v3 from 3.2.3 to 3.3.0 (#19737)
Bumps [github.com/Masterminds/sprig/v3](https://github.com/Masterminds/sprig) from 3.2.3 to 3.3.0.
- [Release notes](https://github.com/Masterminds/sprig/releases)
- [Changelog](https://github.com/Masterminds/sprig/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Masterminds/sprig/compare/v3.2.3...v3.3.0)

---
updated-dependencies:
- dependency-name: github.com/Masterminds/sprig/v3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:24:34 +03:00
dependabot[bot]
843a2cdb09 chore(deps): bump github.com/xanzy/go-gitlab from 0.107.0 to 0.108.0 (#19690)
Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.107.0 to 0.108.0.
- [Release notes](https://github.com/xanzy/go-gitlab/releases)
- [Changelog](https://github.com/xanzy/go-gitlab/blob/main/releases_test.go)
- [Commits](https://github.com/xanzy/go-gitlab/compare/v0.107.0...v0.108.0)

---
updated-dependencies:
- dependency-name: github.com/xanzy/go-gitlab
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:21:42 +03:00
dependabot[bot]
3ee71e92dc chore(deps): bump library/node from 22.5.1 to 22.7.0 in /ui-test (#19656)
Bumps library/node from 22.5.1 to 22.7.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:19:34 +03:00
dependabot[bot]
f8dc8b470d chore(deps): bump library/node from 22.5.1 to 22.7.0 in /test/container (#19658)
Bumps library/node from 22.5.1 to 22.7.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:19:10 +03:00
dependabot[bot]
8b2542ac76 chore(deps): bump library/node from 22.3.0 to 22.7.0 (#19659)
Bumps library/node from 22.3.0 to 22.7.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:16:08 +03:00
dependabot[bot]
a9095fe4e7 chore(deps-dev): bump webpack from 5.84.1 to 5.94.0 in /ui (#19713)
Bumps [webpack](https://github.com/webpack/webpack) from 5.84.1 to 5.94.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.84.1...v5.94.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:15:14 +03:00
dependabot[bot]
430f315924 chore(deps): bump github.com/casbin/casbin/v2 from 2.98.0 to 2.99.0 (#19754)
Bumps [github.com/casbin/casbin/v2](https://github.com/casbin/casbin) from 2.98.0 to 2.99.0.
- [Release notes](https://github.com/casbin/casbin/releases)
- [Changelog](https://github.com/casbin/casbin/blob/master/.releaserc.json)
- [Commits](https://github.com/casbin/casbin/compare/v2.98.0...v2.99.0)

---
updated-dependencies:
- dependency-name: github.com/casbin/casbin/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:13:49 +03:00
dependabot[bot]
9fbe05c7ae chore(deps): bump chromedriver from 128.0.0 to 128.0.1 in /ui-test (#19748)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 128.0.0 to 128.0.1.
- [Commits](https://github.com/giggio/node-chromedriver/compare/128.0.0...128.0.1)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:12:28 +03:00
dependabot[bot]
2a63a8b3d9 chore(deps): bump github.com/mattn/go-zglob from 0.0.4 to 0.0.6 (#19755)
Bumps [github.com/mattn/go-zglob](https://github.com/mattn/go-zglob) from 0.0.4 to 0.0.6.
- [Commits](https://github.com/mattn/go-zglob/compare/v0.0.4...v0.0.6)

---
updated-dependencies:
- dependency-name: github.com/mattn/go-zglob
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:11:37 +03:00
dependabot[bot]
a43559d796 chore(deps): bump library/busybox in /test/e2e/multiarch-container (#19752)
Bumps library/busybox from `9ae97d3` to `8274294`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:11:11 +03:00
dependabot[bot]
b656b9efb8 chore(deps-dev): bump @types/node from 22.5.1 to 22.5.2 in /ui-test (#19749)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.5.1 to 22.5.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:10:55 +03:00
Eugene Kim
5834175dba fix: Refine resource option evaluation for argocd app sync command (#17397) (#19579)
This update refactors the `IncludeResource` logic to improve accuracy in resource filtering.
Also, it includes new test cases to ensure the correctness of the changes.

Fixes: #17397

Changes:
- Rewritten `IncludeResource` function for better logic flow.
- Added unit tests to validate the new behavior.
- Found that two existing test cases were incorrect and fixed them. A closer review of this part is needed.

Signed-off-by: Eugene Kim <eugene70kim@gmail.com>
2024-09-02 10:30:33 +03:00
Jessie Teng
0d0db3c110 fix: open new tab for repo url (#19736)
* open new tab for repo url

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>

* fix yarn lint issue

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>

---------

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>
Co-authored-by: Jessie Teng <jessie.teng@fmr.com>
2024-09-02 11:47:06 +05:30
AS
aa14f76d38 fix(ui): container state (#18928)
Signed-off-by: ashutosh16 <ashutosh_singh@intuit.com>
Co-authored-by: ashutosh16 <ashutosh_singh@intuit.com>
2024-08-29 15:39:15 -04:00
Henry Liu
1bbe17e988 fix(ui): fix create app panel reappear after closed (#19717)
Signed-off-by: henry.liu <henry.liu@daocloud.io>
2024-08-29 11:53:11 -07:00
Alexander Matyushentsev
0acecad8f8 feat: reduce redis traffic caused by app resource tree updates in redis (#19722)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-08-29 17:16:48 +00:00
AS
00466c3094 feat(ui): add extension the top-bar action menu (#19620)
* add topbar action menu  ext
Signed-off-by: AS <11219262+ashutosh16@users.noreply.github.com>
Co-authored-by: ashutosh16 <ashutosh_singh@intuit.com>
Co-authored-by: Anton Gilgur <4970083+agilgur5@users.noreply.github.com>
2024-08-29 08:48:11 -04:00
Li. Sparks
2c8a574fff fix: ApplicationSet e2e TestSyncPolicyCreateUpdate&TestSyncPolicyCreateOnly test race condition bug #19577 (#19578)
* fixed e2e TestSyncPolicyCreateUpdate&TestSyncPolicyCreateOnly bug

Signed-off-by: Li. Sparks <15156525868@163.com>

* format

Signed-off-by: Li. Sparks <15156525868@163.com>

* change the comment, explain why apps still exists

Signed-off-by: Li. Sparks <15156525868@163.com>

---------

Signed-off-by: Li. Sparks <15156525868@163.com>
2024-08-29 01:29:18 -10:00
Alexander Matyushentsev
3feab7a668 fix: diffing should not fail if resource fail schema validation (#19714)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-08-29 03:03:02 +00:00
shijiadong2022
233a14bb8b fix background colore issue in dark theme (#19464)
Signed-off-by: Shi, Stone <jiadong.shi@fmr.com>
2024-08-28 21:10:33 -04:00
Alexander Matyushentsev
3a5b653fb1 feat: implement 'argocd admin appset generate' to troubeshoot appsets (#19518)
* feat: implement 'argocd appset generate' to troubeshoot appsets

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* remove unnecessary ErrorLog field

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* apply reviewer suggestions

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

---------

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-08-28 23:30:45 +00:00
Cheng Fang
ef573498c5 fix: 'argocd admin settings rbac can' command should honor server.rbac.log.enforce.enable param in argocd-cm (#19264) 2024-08-28 19:47:47 +00:00
Olivia Zhao
f597912a6f fix clipboard copy duration issue (#19662)
Signed-off-by: Zhao, Olivia <xueming.zhao@fmr.com>
2024-08-28 08:56:21 -06:00
Michael Crenshaw
bb3d7730ec chore: remove unnecessary 'replace' in go.mod (#19668)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-28 17:52:48 +03:00
dependabot[bot]
40186209cd chore(deps): bump github.com/Masterminds/semver/v3 from 3.2.1 to 3.3.0 (#19705)
Bumps [github.com/Masterminds/semver/v3](https://github.com/Masterminds/semver) from 3.2.1 to 3.3.0.
- [Release notes](https://github.com/Masterminds/semver/releases)
- [Changelog](https://github.com/Masterminds/semver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Masterminds/semver/compare/v3.2.1...v3.3.0)

---
updated-dependencies:
- dependency-name: github.com/Masterminds/semver/v3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-28 17:51:21 +03:00
dependabot[bot]
60af76fd46 chore(deps-dev): bump @types/node from 22.3.0 to 22.5.1 in /ui-test (#19706)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.3.0 to 22.5.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-28 17:50:34 +03:00
Matthew Wynn
c1d3373b8f feat: Allow disabling TLS from notifications controller and reposerver (#19630)
Signed-off-by: Matthew Wynn <matthew@matthewwynn.com>
2024-08-28 17:50:10 +03:00
dependabot[bot]
beb71a889d chore(deps): bump chromedriver from 127.0.3 to 128.0.0 in /ui-test (#19635)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 127.0.3 to 128.0.0.
- [Commits](https://github.com/giggio/node-chromedriver/compare/127.0.3...128.0.0)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-28 17:45:46 +03:00
ilia-medvedev-codefresh
3cbb1522dd feat: Add applicationset metrics (#19691)
* add appset metrics

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* cleanup

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* cleanup

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* address comments and fix test parallelism issue

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* fix controller unit tests - add metrics to tests

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* lint

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* lint

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* Add FakeAppsetMetrics to clear up registry and create metrics structure for tests without causing collisions

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* Change fake metrics implementation

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* Fix typo

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

---------

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>
Co-authored-by: pashakostohrys <pavel@codefresh.io>
2024-08-28 09:00:38 +00:00
Dillen Padhiar
32ee00f1f4 feat: introduce health checks for MonoVertexRollouts (#19688)
Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>
2024-08-27 15:43:57 -04:00
Blake Pettersson
4ec26ce399 docs: note cluster scoping changes in 2.12x (#19684)
* docs: note cluster scoping changes in 2.12x

Related to #18748,#19585 and #19587.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* docs: add note in projects doc.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-08-27 20:55:11 +02:00
dependabot[bot]
9af0ff5233 chore(deps): bump github.com/prometheus/client_golang (#19682)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.1 to 1.20.2.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.1...v1.20.2)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-26 19:00:08 -04:00
dependabot[bot]
0361fcb1e4 chore(deps): bump go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc (#19683)
Bumps [go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc](https://github.com/open-telemetry/opentelemetry-go-contrib) from 0.53.0 to 0.54.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go-contrib/compare/zpages/v0.53.0...zpages/v0.54.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-26 18:59:38 -04:00
github-actions[bot]
81444474d6 [Bot] docs: Update Snyk reports (#19679)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-08-26 17:36:59 +00:00
Michael Crenshaw
7b21eeefee test: skip flaky logs tests (#13398)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-08-26 11:14:00 -04:00
Remington Breeze
e612199c68 fix(ui): extension can crash outside of error boundary (#19667)
Signed-off-by: Remington Breeze <remington@breeze.software>
2024-08-23 20:02:39 -04:00
dependabot[bot]
f49a71c728 chore(deps): bump micromatch from 4.0.5 to 4.0.8 in /ui (#19672)
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.5 to 4.0.8.
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/4.0.8/CHANGELOG.md)
- [Commits](https://github.com/micromatch/micromatch/compare/4.0.5...4.0.8)

---
updated-dependencies:
- dependency-name: micromatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-23 20:01:57 -04:00
dependabot[bot]
7fd9d02de7 chore(deps): bump go.opentelemetry.io/otel/sdk from 1.28.0 to 1.29.0 (#19673)
Bumps [go.opentelemetry.io/otel/sdk](https://github.com/open-telemetry/opentelemetry-go) from 1.28.0 to 1.29.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.28.0...v1.29.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel/sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-23 20:01:33 -04:00
Michael Crenshaw
843329174b chore: bump k8s to 1.31 (#19654)
* chore(deps): bump k8s libs from 0.29.6 to 0.30.2

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* latest commit

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* update known types

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump controller-runtime to a version that's compatible with go-client 0.30.x

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* update go-to-protobuf flag

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* handle new requirements for proto file locations

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump gitops-engine version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix openapigen

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* remove toolchain

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump gitops-engine version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* chore: enable lint for deprecated symbols

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* chore: bump to k8s 1.31

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* codegen

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* don't be generic if you don't have to be

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* don't be generic if you don't have to be

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* new commit

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* use gitops-engine commit

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-23 22:28:34 +00:00
Michael Crenshaw
ddd9d6a9f0 chore(deps): bump k8s libs from 0.29.6 to 0.30.4 (#19074)
* chore(deps): bump k8s libs from 0.29.6 to 0.30.2

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* latest commit

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* update known types

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump controller-runtime to a version that's compatible with go-client 0.30.x

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* update go-to-protobuf flag

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* handle new requirements for proto file locations

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump gitops-engine version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix openapigen

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* remove toolchain

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump gitops-engine version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* no need for replace now

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-23 16:57:56 +00:00
Michael Crenshaw
a0a5a186d9 chore: enable lint for deprecated symbols (#19651)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-22 18:11:00 -04:00
rumstead
42c2349d7c fix(appset): remove cache references (#19647)
Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
2024-08-22 19:43:12 +00:00
Michael Crenshaw
457bb1f23c chore(tests): speed up unit tests (#19617)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-22 13:59:27 -04:00
dependabot[bot]
58bab92294 chore(deps): bump github.com/google/btree from 1.1.2 to 1.1.3 (#19633)
Bumps [github.com/google/btree](https://github.com/google/btree) from 1.1.2 to 1.1.3.
- [Commits](https://github.com/google/btree/compare/v1.1.2...v1.1.3)

---
updated-dependencies:
- dependency-name: github.com/google/btree
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-22 13:18:21 -04:00
Brightside
e0eb80a45c fix: set GOMAXPROCS automatically with uber-go/automaxprocs (#16528)
Signed-off-by: Brightside56 <o.gumbar56@gmail.com>
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-08-22 15:30:10 +00:00
afarbos
59e0091130 feat: Implement cluster-api MachinePool CRD health checks (#19595)
Signed-off-by: afarbos <farbos.arnaud@gmail.com>

---------

Signed-off-by: Arnaud Farbos <farbos.arnaud@gmail.com>
Signed-off-by: afarbos <farbos.arnaud@gmail.com>
2024-08-22 11:00:53 -04:00
thecooldrop
86322b5621 chore: Clarify the meaning of secret exfiltration via ApplicationSet (issue #18560) (#19000)
* Chore: Clarify the meaning of secret exfiltration via ApplicationSet in any namespace

Signed-off-by: TheCoolDrop <vanio.begic123@gmail.com>
Signed-off-by: Vanio Begic <vanio.begic123@gmail.com>

* chore: Fix typo

Signed-off-by: Vanio Begic <vanio.begic123@gmail.com>

---------

Signed-off-by: TheCoolDrop <vanio.begic123@gmail.com>
Signed-off-by: Vanio Begic <vanio.begic123@gmail.com>
2024-08-22 07:54:52 -04:00
Jessie Teng
615dc90999 fix: apps summary view health icon&name alignment (#19450)
* fix apps summary view health icon&name alignment

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>

* fix unit tests

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>

---------

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>
Co-authored-by: Jessie Teng <jessie.teng@fmr.com>
2024-08-22 07:53:59 -04:00
Andrei Vishniakov
7315033efc nit (#19639)
Signed-off-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com>
2024-08-22 11:44:24 +00:00
Nitish Kumar
9b8b044874 update the web based terminal docs (#19621)
add fixes for the docs



resolve minor fix

Signed-off-by: nitishfy <justnitish06@gmail.com>
2024-08-22 10:49:18 +00:00
Mike
3a267b8f24 feat: Add EndpointSlice to resource icon (#19362)
- Add EndpointSlice to resourceIcons map

Signed-off-by: Mike <mike.kangaroo.world@gmail.com>
Co-authored-by: AS <11219262+ashutosh16@users.noreply.github.com>
2024-08-22 10:41:57 +02:00
Michael Crenshaw
3cdce8300c fix(appset): informer is not a kubernetes informer (#18905) (#19618)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-21 20:15:36 -08:00
Andrii Korotkov
b6551cdce9 chore: Cleanup some timing checkpoints (#19517)
Adding same checkpoint in a loop would be misleading with multiple sources, also unmarshal checkpoint has a wrong name if there's a loop.
Remove checkpoints in the loop and rename the unmarshal checkpoint.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-08-21 23:37:27 -04:00
dependabot[bot]
9fc5f14f40 chore(deps): bump library/golang in /test/container (#19540)
Bumps library/golang from `a400dc7` to `8e529b6`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-21 23:32:36 -04:00
Yiwei Gong
085cc6cd73 fix(#16842): system level extensions not working properly (#19612)
* use event to notify extensions changes

Signed-off-by: Yiwei Gong <imwithye@gmail.com>

* use custom event target implementation

Signed-off-by: Yiwei Gong <imwithye@gmail.com>

---------

Signed-off-by: Yiwei Gong <imwithye@gmail.com>
2024-08-21 22:16:17 -04:00
carlosrejano
5dd6020dda fix(appset): migrateStatus updates appset pointer after updating (#19619)
# Context:
  `migrateStatus` updates the status of the appset but after succeeding
  it does not update the in memory object which means that that new
  updates may fail due to conflict since it's comparing it to the
  object previous to updating it in `migrateStatus`.

  # What does this PR?
  - After updating the appset object in `migrateStatus` it gets the
    object again to reference it in the appset pointer of the
    reconciler.

Signed-off-by: Carlos Rejano <carlosrejanoromeu@gmail.com>
2024-08-21 21:25:08 -04:00
Cornelius Roemer
01798055e8 doc: fix bullet rendering in config-management-plugin-v2.md (#19626)
Bullets need to start with blank line, otherwise they don't render on read the docs. GitHub markdown doesn't require them but read the docs does

Signed-off-by: Cornelius Roemer <cornelius.roemer@gmail.com>
2024-08-21 19:15:35 -06:00
Keith Chong
d1c74ac984 fix: Floating title content incorrect for multi-sources (#17274) (#19623)
Signed-off-by: Keith Chong <kykchong@redhat.com>
2024-08-21 17:35:40 -04:00
JenTing
80f2043978 fix: cache helm-index in Redis cluster (#12314) (#19530)
* fix: cache helm-index in Redis cluster

Signed-off-by: JenTing Hsiao <hsiaoairplane@gmail.com>

* Update repository.go

Fix order

Signed-off-by: Dan Garfield <dan@codefresh.io>

---------

Signed-off-by: JenTing Hsiao <hsiaoairplane@gmail.com>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-08-21 16:10:21 +00:00
Jessie Teng
69ef68f7a8 improve filter component color contrast (#19468)
Signed-off-by: Jessie Teng <jessie.teng@fmr.com>
Co-authored-by: Jessie Teng <jessie.teng@fmr.com>
2024-08-21 18:03:30 +03:00
Junseokee
7d53ef1c40 docs: fix stable message (#19334)
* docs: fix stable message

Signed-off-by: Junseokee <weq156@naver.com>

* docs: fix stable message

Signed-off-by: Junseokee <weq156@naver.com>

---------

Signed-off-by: Junseokee <weq156@naver.com>
2024-08-21 08:59:39 -06:00
Jessie Teng
ea2527987c fix dark mode logs fullscreen display not properly (#19505)
Signed-off-by: Jessie Teng <jessie.teng@fmr.com>
Co-authored-by: Jessie Teng <jessie.teng@fmr.com>
2024-08-21 17:45:45 +03:00
Ishita Sequeira
f28323b37d mark multiple sources feature as stable (#19594)
Signed-off-by: Ishita Sequeira <ishiseq29@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-08-21 14:43:39 +00:00
Alexandre Gaudreault
effbdc936c feat(dex): set logger based on argo config (#13191) (#19608)
* feat(dex): set logger based on argo config

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* add env config

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* organize import bug?

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-08-21 09:38:37 -04:00
ilia-medvedev-codefresh
f97024965f fix: appset register rollout progressing status and correct parametersgenerated status to prevent update loop (#19613)
* fix status and update loop

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* add tests

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* lint

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

---------

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>
2024-08-21 14:16:21 +03:00
dependabot[bot]
44072bbdbf chore(deps): bump github.com/prometheus/client_golang (#19609)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.0 to 1.20.1.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/v1.20.1/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.0...v1.20.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-21 00:58:07 -04:00
Michael Crenshaw
82003a2c3c ci: upload test results to codecov (#19476)
* feat(ci): upload test results to codecov

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* only run on master

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-20 18:33:56 +00:00
Nathanael Liechti
bacdceda79 feat: allow no_proxy to be specified on repoCreds (#18526)
Signed-off-by: Nathanael Liechti <technat@technat.ch>
2024-08-20 12:54:39 -04:00
Nathanael Liechti
74af92fd95 feat: add proxy to kustomize build operations (#18551)
Signed-off-by: Nathanael Liechti <technat@technat.ch>
2024-08-20 09:37:02 -04:00
Joshua Ghali
de53d8eb61 docs: Added SecurityGroup for groups TokenIDClaims (#19591)
Signed-off-by: Joshua Ghali <jjghali@protonmail.ch>
2024-08-19 22:22:02 +02:00
Eugene Kim
d82a746dce fix: 'argocd admin settings rbac can' - yaml loading problem(#19403) (#19575)
fixes: #19403

Signed-off-by: Eugene Kim <eugene70kim@gmail.com>
2024-08-17 22:38:56 -04:00
dependabot[bot]
e7beda0ecc chore(deps): bump github.com/prometheus/client_golang (#19544)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.19.1 to 1.20.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.19.1...v1.20.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jann Fischer <jann@mistrust.net>
2024-08-17 20:28:03 +00:00
dependabot[bot]
014f4424b7 chore(deps): bump bitnami/kubectl from 1.30 to 1.31 in /test/container (#19541)
Bumps bitnami/kubectl from 1.30 to 1.31.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-17 15:33:23 -04:00
Nolan Emirot
a0624f03e4 docs: fix typo (#19567)
Signed-off-by: Nolan Emirot <emirot.nolan@gmail.com>
2024-08-17 15:16:04 -04:00
ilia-medvedev-codefresh
47bcb09c4a chore: add e2e test for admin import & export (#19564) 2024-08-16 19:20:24 +03:00
Ishita Sequeira
ab1d5b6f94 fix appset-in-any-namespace issue with git generators (#19553)
Signed-off-by: Ishita Sequeira <ishiseq29@gmail.com>
2024-08-15 20:06:32 +03:00
pasha-codefresh
116180b182 feat: Support context switch for argocd-util (#19549)
* feat: Support context switch for argocd-util

Signed-off-by: Atsushi Neki <nekiaiken@gmail.com>

* execute codegen

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: Atsushi Neki <nekiaiken@gmail.com>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: pasha-codefresh <pavel@codefresh.io>
Signed-off-by: pashakostohrys <pavel@codefresh.io>
Co-authored-by: Atsushi Neki <nekiaiken@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-08-15 11:47:58 -04:00
Jayendra Parsai
6ed7410cf6 fix: notifications triggered from CLI fails for repo functions (#19213)
Signed-off-by: Jayendra Parsai <jparsai@jparsai-thinkpadp1gen4i.remote.csb>
Co-authored-by: Jayendra Parsai <jparsai@jparsai-thinkpadp1gen4i.remote.csb>
2024-08-15 10:22:55 -04:00
dependabot[bot]
1ce5824ff4 chore(deps): bump library/registry in /test/container (#19207)
Bumps library/registry from `79b2959` to `1212042`.

---
updated-dependencies:
- dependency-name: library/registry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-15 07:39:04 -04:00
Eric Lin
5a7bf2ef66 fix: selfHeal should always be respected with Multi-Source Apps #19452 (#19512)
* fix(controller): selfHeal respected in multi-source apps
when there is object change in cluster

Signed-off-by: Eric Lin <38420555+Ezzahhh@users.noreply.github.com>

* fix: tests for multi source selfheal

Signed-off-by: Ezzahhh <38420555+Ezzahhh@users.noreply.github.com>

---------

Signed-off-by: Eric Lin <38420555+Ezzahhh@users.noreply.github.com>
Signed-off-by: Ezzahhh <38420555+Ezzahhh@users.noreply.github.com>
2024-08-15 07:38:35 -04:00
Michael Crenshaw
6aa4de62c8 chore: remove unused params (#19473)
* chore: remove unused params

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* more

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-15 07:29:51 -04:00
Michael Crenshaw
fe8dcb60fc feat(ci): upload Webpack bundle analysis to codecov (#19478) (#19479)
* feat(ci): upload Webpack bundle analysis to codecov (##19478)

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* only upload report on master branch

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-15 07:27:44 -04:00
xcelxlorx
b2c92c7b6e chore: wrap error objets (#19511)
Signed-off-by: xcelxlorx <xcelxlorx@gmail.com>
2024-08-15 07:26:42 -04:00
dependabot[bot]
39cb06281f chore(deps): bump chromedriver from 126.0.5 to 127.0.3 in /ui-test (#19542)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 126.0.5 to 127.0.3.
- [Commits](https://github.com/giggio/node-chromedriver/compare/126.0.5...127.0.3)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-08-15 13:58:06 +03:00
dependabot[bot]
f7840c73b3 chore(deps-dev): bump @types/node from 22.1.0 to 22.3.0 in /ui-test (#19543)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.1.0 to 22.3.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-15 13:57:52 +03:00
Regina Voloshin
4835e5008a fix: Exec with disable auth not logged in #17114 (#19529)
* initial with tests

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

* refactor

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

* cleanup

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

* made TerminalOpts public and lint

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

* pass reference

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>

---------

Signed-off-by: reggie-k <regina.voloshin@codefresh.io>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-08-15 10:48:45 +00:00
Jessie Teng
9fc93c670a bugfix-19134: fix plugin select icon issue (#19532)
Signed-off-by: Jessie Teng <jessie.teng@fmr.com>
Co-authored-by: Jessie Teng <jessie.teng@fmr.com>
2024-08-15 12:28:22 +03:00
thisishwan2
afc2fe7172 modify ui in dark mode in source selection tag (#19482)
Signed-off-by: thisishwan2 <feel000617@gmail.com>
2024-08-15 11:10:29 +03:00
dependabot[bot]
31249489bf chore(deps): bump library/golang from 1.23rc1 to 1.23 in /test/container (#19525)
Bumps library/golang from 1.23rc1 to 1.23.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-15 01:56:40 +00:00
Siddhesh Ghadi
58543f3835 fix: Parse hostname correctly from repoURL to fetch correct CA cert (#19488)
Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>
Co-authored-by: Jann Fischer <jann@mistrust.net>
2024-08-14 20:47:59 +00:00
Adrian Berger
6296b178df feat: Add suspended status in custom resource health for flux resources (#19508)
Signed-off-by: Adrian Berger <adrian.berger@bedag.ch>
2024-08-14 14:21:29 -04:00
John
ea362766db doc(upgrading): add missing links to the sidebar (#19500)
Signed-off-by: John Malc <cincenko@outlook.com>
Signed-off-by: John <cincenko@outlook.com>
2024-08-14 10:30:08 -06:00
Ishita Sequeira
159da3c936 fix: appset gpg limitation for templated project fields (#19492)
* document templating project field while using applicationset git generator and signature verification

Signed-off-by: Ishita Sequeira <ishiseq29@gmail.com>

* revert changes to generated mocks

Signed-off-by: Ishita Sequeira <ishiseq29@gmail.com>

* Add check for templated project field and add limitation to the docs

Signed-off-by: Ishita Sequeira <ishiseq29@gmail.com>

* optimize checks and rephrase documentation

Signed-off-by: Ishita Sequeira <ishiseq29@gmail.com>

* remove unwanted variable declaration

Signed-off-by: Ishita Sequeira <ishiseq29@gmail.com>

* Add unit tests

Signed-off-by: Ishita Sequeira <ishiseq29@gmail.com>

---------

Signed-off-by: Ishita Sequeira <ishiseq29@gmail.com>
2024-08-14 10:11:31 -04:00
dependabot[bot]
7601833527 chore(deps): bump docker/build-push-action from 6.6.1 to 6.7.0 (#19523)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.6.1 to 6.7.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](16ebe778df...5cd11c3a4c)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-14 09:57:34 -04:00
dependabot[bot]
b34628db9d chore(deps): bump github.com/dlclark/regexp2 from 1.11.2 to 1.11.4 (#19526)
Bumps [github.com/dlclark/regexp2](https://github.com/dlclark/regexp2) from 1.11.2 to 1.11.4.
- [Commits](https://github.com/dlclark/regexp2/compare/v1.11.2...v1.11.4)

---
updated-dependencies:
- dependency-name: github.com/dlclark/regexp2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-14 09:47:23 -04:00
Justin Kulikauskas
d2231577c7 feat: Add open-cluster-management.io healthchecks (#19411)
Healthchecks for several Policy types.

Signed-off-by: Justin Kulikauskas <jkulikau@redhat.com>
2024-08-13 15:38:30 -04:00
ilia-medvedev-codefresh
2cb7616d51 fix: admin export and import applications and applicationsets from other namespaces (#19510)
* add support for all namespaces for apps and appsets in export and import

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* cleanup accidental merge issue

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* address comments and run lint

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* small fix

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* switch to make for slice

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* remove new line in command flags

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

---------

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>
2024-08-13 17:30:00 +00:00
Arthur Vardevanyan
6dc559a3e5 fix(AnyNameSpaceRegex): Additional Functions Glob to Regexexp (#19516)
Signed-off-by: Arthur <arthur@arthurvardevanyan.com>
2024-08-13 19:14:16 +03:00
pasha-codefresh
33e0dda53c chore: add Regina Voloshin as release champion for 2.13 (#19515)
* add Regina Voloshin as release champion for 2.13

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* add Regina Voloshin as release champion for 2.13

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* add Regina Voloshin as release champion for 2.13

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-08-13 17:04:11 +03:00
Arthur Vardevanyan
588b251acc feat(sourceNamespace): Regex Support (#19016) (#19017)
* feat(sourceNamespace): Regex Support

Signed-off-by: Arthur <arthur@arthurvardevanyan.com>

* feat(sourceNamespace): Separate exactMatch into patternMatch

Signed-off-by: Arthur <arthur@arthurvardevanyan.com>

---------

Signed-off-by: Arthur <arthur@arthurvardevanyan.com>
2024-08-13 08:46:25 -04:00
Nitish Kumar
3ef05b31ff add label flag to the argocd set command (#19384)
add annotation flag to the argocd cluster set command



update the cli docs

Signed-off-by: nitishfy <justnitish06@gmail.com>
2024-08-13 11:45:38 +00:00
Ilia Lazebnik
539a3e33fa chore(deps): bump dex to 2.41.1 (#19484)
Signed-off-by: drfaust92 <ilia.lazebnik@gmail.com>
2024-08-12 09:39:49 -04:00
github-actions[bot]
0e0a9ebdf1 [Bot] docs: Update Snyk reports (#19475)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-08-11 09:22:39 -04:00
l2h
dad6fa22d5 feat: Implement graceful shutdown in application-controller (#19465)
* Implement graceful shutdown in argocd-application-controller

Signed-off-by: leehosu <hosu4549@gmail.com>

* Implement code to pass waitGroup to Run function

Signed-off-by: leehosu <hosu4549@gmail.com>

* Add retuen nil

Signed-off-by: leehosu <hosu4549@gmail.com>

* Add log for lean shutdown

Signed-off-by: leehosu <hosu4549@gmail.com>

* collect e2e coverage from app-controller

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* Remove select {}

Signed-off-by: leehosu <hosu4549@gmail.com>

* Add ctx.done() about application-controller

Signed-off-by: leehosu <hosu4549@gmail.com>

* simplify

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: leehosu <hosu4549@gmail.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-10 20:17:26 -04:00
Michael Crenshaw
bdb2608993 chore: remove dead code (#19460)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-09 16:57:00 -04:00
Michael Crenshaw
1dd2821631 feat: collect and log hydration commands (#19346)
* feat: collect and log hydration commands

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix tests

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* don't actually log for now

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* add helm test, handle random values file path

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix test

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* simplify; only return commands on success; only return helm template command, not helm dependency

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* kustomize test

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* only return commands on success, to match Helm

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix import order

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* simplify, since we're not collecting non-template Helm commands

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* lint

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fixes from comments

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-09 16:06:58 +00:00
Michael Crenshaw
5ccea0d4ab chore: remove dead Helm version code (#19449)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-09 08:37:18 -04:00
TomasR
992716b12c fix: datasource in dashboard.json (#19426)
Other panels have properly set `"uid": "$datasource"`, but for some reason, this doesn't.
Let's fix it.

Signed-off-by: TomasR <linux@rohlik.xyz>
2024-08-09 14:52:51 +05:30
Doug Goldstein
d56206fb4e doc: fix typo in generators post selector (#19448)
Fix typo in the word

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2024-08-08 18:18:41 -06:00
Leonardo Luz Almeida
b21768d9d9 docs: Improve AppProject roles documentation (#19445)
* docs: Improve AppProject roles documentation

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* add notes

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* small change

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* fix typo

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* address comment

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

---------

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
2024-08-08 20:03:36 +00:00
Maryam Tavakkoli
3091db84d3 docs: Add Relex Solutions to USERS.md (#19444)
Signed-off-by: Maryam Tavakkoli <maryam_tavakkoli@hotmail.com>
2024-08-08 13:36:35 -04:00
dependabot[bot]
f17c6c1dde chore(deps): bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (#19433)
Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 3.5.0 to 3.6.0.
- [Release notes](https://github.com/sigstore/cosign-installer/releases)
- [Commits](59acb6260d...4959ce089c)

---
updated-dependencies:
- dependency-name: sigstore/cosign-installer
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-08 10:24:53 -04:00
dependabot[bot]
a21980cde6 chore(deps): bump docker/build-push-action from 6.5.0 to 6.6.1 (#19432)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.5.0 to 6.6.1.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](5176d81f87...16ebe778df)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-08 10:24:22 -04:00
dependabot[bot]
80e85967e5 chore(deps): bump library/golang from 1.22.5 to 1.22.6 (#19434)
Bumps library/golang from 1.22.5 to 1.22.6.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-08 04:51:19 +00:00
Dmitry Khodorov
ed14baab81 fix(appset): missing permissions for cluster install (#19059) (#19430)
Signed-off-by: Dmitry Khodorov <el1191@woyd.ru>
2024-08-08 00:33:33 -04:00
KangManJoo
1a94032408 chore: improve error logs (#10592) (#19260)
* chore: wrapped all errors and add context in account.go

Signed-off-by: KangManJoo <eogns47@konkuk.ac.kr>

* chore: rollback error msg

Signed-off-by: KangManJoo <eogns47@konkuk.ac.kr>

* chore: To align the test code error messages with the actual error message returned.

Signed-off-by: KangManJoo <eogns47@konkuk.ac.kr>

---------

Signed-off-by: KangManJoo <eogns47@konkuk.ac.kr>
2024-08-08 00:32:37 -04:00
Kevin
74bbc4f7f1 feat: Add source namespaces output to printProject function (#19365)
Signed-off-by: Juwon Hwang (Kevin) <juwon8891@gmail.com>
2024-08-07 20:39:16 -04:00
Vinícius Fernandes
6205f97772 docs: update users.md (#19282)
* Update USERS.md

Signed-off-by: Vinícius Fernandes <vinaumpt@gmail.com>

* Update USERS.md

Fix ordering.

Signed-off-by: Vinícius Fernandes <vinaumpt@gmail.com>

---------

Signed-off-by: Vinícius Fernandes <vinaumpt@gmail.com>
Co-authored-by: Soumya Ghosh Dastidar <44349253+gdsoumya@users.noreply.github.com>
2024-08-07 20:36:41 -04:00
Robin Lieb
4f64f0f2f2 feat: move basic auth for for Azure DevOps to webhooks lib (#19407)
Signed-off-by: Robin Lieb <robin.j.lieb@gmail.com>
2024-08-07 16:25:23 +00:00
dependabot[bot]
da1e95dbe1 chore(deps): bump actions/upload-artifact from 4.3.5 to 4.3.6 (#19415)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.5 to 4.3.6.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](89ef406dd8...834a144ee9)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-07 10:19:02 -04:00
dependabot[bot]
658311d554 chore(deps): bump github.com/go-playground/webhooks/v6 (#19418)
Bumps [github.com/go-playground/webhooks/v6](https://github.com/go-playground/webhooks) from 6.3.0 to 6.4.0.
- [Release notes](https://github.com/go-playground/webhooks/releases)
- [Commits](https://github.com/go-playground/webhooks/compare/v6.3.0...v6.4.0)

---
updated-dependencies:
- dependency-name: github.com/go-playground/webhooks/v6
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-07 10:18:37 -04:00
dependabot[bot]
8a8c28fcb4 chore(deps): bump golang.org/x/net from 0.27.0 to 0.28.0 (#19421)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.27.0 to 0.28.0.
- [Commits](https://github.com/golang/net/compare/v0.27.0...v0.28.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-07 10:17:20 -04:00
Michael Crenshaw
82e5363634 fix: handle logging empty args in strings (#19324)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-06 16:41:35 -04:00
Michael Crenshaw
21ed19b366 feat(helm): support --kube-version, --api-versions, and --namespace (#19325) (#19328)
* feat(helm): support `--kube-version`, `--api-versions`, and `--namespace` (#19325)

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* codegen

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* handle kube and api versions per-source

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* lint

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix nil ref error

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix nil ref error due to not handling multi-source in verify path

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* change casing to be more consistent with helm

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* Kustomize too

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* simplify verify path

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* add e2e tests for kustomize

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* reorder for consistency, and add more tests

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* Update docs/operator-manual/application.yaml

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-08-06 10:56:36 -04:00
Regina Voloshin
a96e665598 fixing dubious ownership error (#19400)
Signed-off-by: reggie-k <regina.voloshin@codefresh.io>
2024-08-06 17:47:31 +03:00
Bernhard Rode
d61f18df22 chore: add Robert Bosch GmbH (#19388)
Signed-off-by: Bernhard Rode <rbo2abt@bosch.com>
2024-08-06 13:14:26 +05:30
Georgi Dimitrov
79ce7c811b chore: add Skribble to USERS.md (#19361)
* Update USERS.md

Add Skribble AG

Signed-off-by: Georgi Dimitrov <122033253+georgi-at-skribble@users.noreply.github.com>

* Update USERS.md

Reorder to match alphabetical order

Signed-off-by: Georgi Dimitrov <122033253+georgi-at-skribble@users.noreply.github.com>

---------

Signed-off-by: Georgi Dimitrov <122033253+georgi-at-skribble@users.noreply.github.com>
2024-08-06 08:47:20 +05:30
dependabot[bot]
2db38409ee chore(deps): bump golang.org/x/oauth2 from 0.21.0 to 0.22.0 (#19378)
Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from 0.21.0 to 0.22.0.
- [Commits](https://github.com/golang/oauth2/compare/v0.21.0...v0.22.0)

---
updated-dependencies:
- dependency-name: golang.org/x/oauth2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-05 10:59:40 +03:00
dependabot[bot]
e04d7cb578 chore(deps-dev): bump @types/node from 20.14.12 to 22.1.0 in /ui-test (#19376)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.14.12 to 22.1.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-05 09:14:10 +03:00
dependabot[bot]
34d06096e5 chore(deps): bump actions/upload-artifact from 4.3.4 to 4.3.5 (#19380)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.4 to 4.3.5.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](0b2256b8c0...89ef406dd8)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-05 09:13:49 +03:00
dependabot[bot]
5403f956e4 chore(deps): bump golang.org/x/time from 0.5.0 to 0.6.0 (#19377)
Bumps [golang.org/x/time](https://github.com/golang/time) from 0.5.0 to 0.6.0.
- [Commits](https://github.com/golang/time/compare/v0.5.0...v0.6.0)

---
updated-dependencies:
- dependency-name: golang.org/x/time
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-05 09:11:54 +03:00
dependabot[bot]
e9d6431780 chore(deps): bump golang.org/x/sync from 0.7.0 to 0.8.0 (#19379)
Bumps [golang.org/x/sync](https://github.com/golang/sync) from 0.7.0 to 0.8.0.
- [Commits](https://github.com/golang/sync/compare/v0.7.0...v0.8.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sync
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-05 09:11:40 +03:00
pengbanban
dc544da6ae chore: fix function names (#19371)
Signed-off-by: pengbanban <pengbanban@aliyun.com>
2024-08-04 12:48:46 -07:00
github-actions[bot]
5188ea2969 [Bot] docs: Update Snyk reports (#19367)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-08-04 17:51:25 +00:00
Aleksander Korzynski
e83abdace8 docs: add Priceline to USERS.md (#19364)
Signed-off-by: Aleksander Korzynski <89802643+akorzy-pl@users.noreply.github.com>
2024-08-03 20:51:40 +05:30
itaiatu
f110570512 feat: Add custom health check for cluster-api AWSManagedControlPlane (#19304)
* add custom health check for awsmanagedcontrolplane

Signed-off-by: Iulian Taiatu <itaiatu@adobe.com>

* chore(deps): bump github.com/aws/aws-sdk-go from 1.55.3 to 1.55.4 (#19295)

Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.55.3 to 1.55.4.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.55.3...v1.55.4)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Iulian Taiatu <itaiatu@adobe.com>

* add new line at the end of health_test.yaml file

Signed-off-by: Iulian Taiatu <itaiatu@adobe.com>

---------

Signed-off-by: Iulian Taiatu <itaiatu@adobe.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-02 10:54:00 -07:00
Andrii Korotkov
4a7a82cdba chore: Update kustomize to v5.4.3 (#19133) (#19357)
Fixes #19133

A critical vulnerability CVE-2024-24790 was discovered in previous version of kustomize due to stdlib dependency. Bump the version to one without this vulnerability.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-08-02 11:42:47 -04:00
Alexander Matyushentsev
b5a3712303 fix: ArgoCD 2.11 - Loop of PATCH calls to Application objects (#19340)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-08-01 14:55:55 -04:00
Michael Crenshaw
db02eaa7e0 feat(askpass): make askpass socket path configurable (#19313)
* feat(askpass): make askpass socket path configurable

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* remove unused const

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* remove unnecessary fmt call

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-08-01 13:12:41 -04:00
Alexandre Gaudreault
6ee584594a feat(rbac): allow validation of fine-grained policy in project (#19338)
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-08-01 10:37:25 -04:00
dependabot[bot]
60c53c6fc4 chore(deps): bump tj-actions/changed-files from 44.5.6 to 44.5.7 (#19331)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 44.5.6 to 44.5.7.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](6b2903bdce...c65cd88342)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-01 04:00:20 +00:00
Alexander Matyushentsev
26fb098ae8 feat!: disable profile endpoint by default (#19327)
* feat: disable metrics endpoint by default

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* support managing the profile endpoint in argocd-cmd-params-cm

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* return 401 if profile endpoint is disabled

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

---------

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-07-31 23:13:33 +00:00
Andrii Korotkov
267f243a89 fix: Put app to the operation queue after refresh queue processing to avoid race condition - Fixes [#18500] (#18694)
Adding app to the operation queue and refresh queue could cause waiting for resource for minutes to tens of minutes.
Sync state operates on resources gathered from reconciliation, so if the app operation event is processed before the refresh one (when triggered on resource update/creation), the refresh doesn’t help sync to progress and it essentially needs to wait for another app refresh.

The fix seems to be to schedule app operation event after refresh event is finished processing. There’s one place where operation event is scheduled without refresh event (which can be kept there), and one place where refresh even is scheduled without the operation one during the app deletion handling 3e2cfb1387/controller/appcontroller.go (L2177). It’s probably safe to schedule operation even after that, since it has some code to check that app was deleted. If not, an update can be made to have refresh queue storing a tuple with app key and bool whether to enqueue app operation.

If there are issues: try keeping both old places to add to app operation queue and new addition after refresh.

Note on cherry pick: add to as many releases as you can. This can be a significant performance boost.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-07-31 14:56:26 -07:00
Michael Crenshaw
8362ecc94b chore: mark generated files as generated to suppress diffs in PRs (#19321)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-31 17:51:55 +00:00
Jacco Mook
3658f8ec37 Implement workaround for namespaced app navigation bug (#17800)
Signed-off-by: jacco <jaccomook.98@gmail.com>
2024-07-31 17:48:37 +03:00
dependabot[bot]
d9337a3849 chore(deps): bump github.com/aws/aws-sdk-go from 1.55.4 to 1.55.5 (#19317)
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.55.4 to 1.55.5.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.55.4...v1.55.5)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-31 09:18:38 -04:00
Pavel
0894ddc89e fix(#19306): close redis cache gzip writer (#19307)
* close redis cache writer

flush is not enough, we need to close the writer too

Signed-off-by: Pavel Aborilov <aborilov@gmail.com>

* test compressed redis value

Signed-off-by: Pavel Aborilov <aborilov@gmail.com>

---------

Signed-off-by: Pavel Aborilov <aborilov@gmail.com>
2024-07-31 08:57:46 +05:30
Clif Houck
42de68d67f feat(5388): Allow multiple external URLs for SSO access (#18927)
* Add new field to the documentation

Signed-off-by: Thibault Jamet <tjamet@users.noreply.github.com>
Signed-off-by: Clif Houck <me@clifhouck.com>

* Fix codeql issue

codeql restricts logging fields from user input. Remove log to avoid complex escapes

Signed-off-by: Thibault Jamet <tjamet@users.noreply.github.com>
Signed-off-by: Clif Houck <me@clifhouck.com>

* Add a test to ensure validity of the documented cm

Currently, the documented configmap is invalid and raises error at the
time of applying it.

Ensure the configmap is valid with a unit test

Signed-off-by: Thibault Jamet <tjamet@users.noreply.github.com>
Signed-off-by: Clif Houck <me@clifhouck.com>

* rename additionalURLs for URLs

Signed-off-by: Thibault Jamet <tjamet@users.noreply.github.com>
Signed-off-by: Clif Houck <me@clifhouck.com>

* Allow responses redirected from SSO to alternate URLs

Signed-off-by: Thibault Jamet <tjamet@users.noreply.github.com>
Signed-off-by: Clif Houck <me@clifhouck.com>

* Consider dex enabled when there are additional URLs configured

Signed-off-by: Thibault Jamet <tjamet@users.noreply.github.com>
Signed-off-by: Clif Houck <me@clifhouck.com>

* Parse new URLs config from argocd-cm

Signed-off-by: Thibault Jamet <tjamet@users.noreply.github.com>
Signed-off-by: Clif Houck <me@clifhouck.com>

* Detect additional SSO URLs from requests

With HTTP servers, the `url` field of `http.Requests` does not contain
the host nor the protocol.

To work around this, consider `request.Host` and
`request.URL.RequestURI()`

Signed-off-by: Thibault Jamet <tjamet@users.noreply.github.com>
Signed-off-by: Clif Houck <me@clifhouck.com>

* Handle logout properly

Currently, while login is correctly handled, when logging out from
an alternate URL, we are redirected to the main URL.

Fix this by applying the same principles as for the login part

Signed-off-by: Thibault Jamet <tjamet@users.noreply.github.com>
Signed-off-by: Clif Houck <me@clifhouck.com>

* Fix ClientApp.oath2Config

Signed-off-by: Clif Houck <me@clifhouck.com>

* Fix test compile time error

Signed-off-by: Clif Houck <me@clifhouck.com>

* Fix TestDocumentedArgoCDConfigMapIsValid to parse in the same way as other spots in the codebase

Signed-off-by: Clif Houck <me@clifhouck.com>

* Fix warning messages for external URLs when attemping to load them from config map

Signed-off-by: Clif Houck <me@clifhouck.com>

* Revert change to IsDexConfigured since Dex does not use URLs setting

Signed-off-by: Clif Houck <me@clifhouck.com>

* Remove unnecessary receiver nil check in favor of fixing test

Signed-off-by: Clif Houck <me@clifhouck.com>

* Fix typo

Signed-off-by: Clif Houck <me@clifhouck.com>

* Add a unit test for RedirectURLForRequest

Signed-off-by: Clif Houck <me@clifhouck.com>

* Rename settings.URLs to AdditionalURLs

Signed-off-by: Clif Houck <me@clifhouck.com>

* Fix use of URLs in TestClientApp_HandleLogin

Signed-off-by: Clif Houck <me@clifhouck.com>

* Renamed urls to additionalUrls

Signed-off-by: Clif Houck <me@clifhouck.com>

* Integrate settings.AdditionalURLs with dex config and test settings.RedirectAdditionalURLs

Signed-off-by: Clif Houck <me@clifhouck.com>

* Reload ArgoCDServer when settings.AdditionalURLs changes

Signed-off-by: Clif Houck <me@clifhouck.com>

* Add note about additionalUrls to user-managament docs

Signed-off-by: Clif Houck <me@clifhouck.com>

* Add G-Research

Signed-off-by: Clif Houck <me@clifhouck.com>

* Change G-Research URL to point to open-source page

Signed-off-by: Clif Houck <me@clifhouck.com>

* Update docs/operator-manual/argocd-cm.yaml

Correct misspelling of additionalUrls

Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Signed-off-by: Clif Houck <me@clifhouck.com>

* Update util/settings/settings.go

Fix incorrect key for additionalUrls

Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Signed-off-by: Clif Houck <me@clifhouck.com>

* Update util/settings/settings.go

Fix key name

Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Signed-off-by: Clif Houck <me@clifhouck.com>

* fix additional urls config key in test config

Signed-off-by: Clif Houck <me@clifhouck.com>

---------

Signed-off-by: Thibault Jamet <tjamet@users.noreply.github.com>
Signed-off-by: Clif Houck <me@clifhouck.com>
Co-authored-by: Thibault Jamet <tjamet@users.noreply.github.com>
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-07-30 22:57:33 +00:00
Michael Crenshaw
2edc1bad9a chore(deps): bump expr from 1.15.2 to 1.16.9 (#19277)
* chore(deps): bump expr from 1.15.2 to 1.16.9

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix test, make tests nicer

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-30 17:58:04 -04:00
Michael Crenshaw
234c7ecdf9 feat: gracefully shut down repo-server on SIGTERM (#19309)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-30 14:44:47 -04:00
Rajat Toshniwal
f8a4399033 fix(#19271): update Content-Disposition filename extension to .log (#19272)
* fix: update Content-Disposition filename extension to .log

Downloaded log files to have the extension ".log" instead of ".txt"

Signed-off-by: Rajat Toshniwal <rnt.rajat@gmail.com>

* chore: update log file extension for downloaded logs

Signed-off-by: Rajat Toshniwal <rnt.rajat@gmail.com>

* Update docs/operator-manual/upgrading/2.12-2.13.md

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Rajat Toshniwal <rnt.rajat@gmail.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-30 17:19:52 +00:00
vfaergestad
ad7438312f feat: Adding author/creator as a template key for Pull Request Generator (#18974)
Signed-off-by: Vegard Færgestad <vegardf@mnemonic.no>
Co-authored-by: Vegard Færgestad <vegardf@mnemonic.no>
2024-07-30 12:31:58 -04:00
Kevin
6a18c21ea8 docs: update users.md (#19292)
Signed-off-by: Juwon Hwang (Kevin) <juwon8891@gmail.com>
2024-07-30 11:25:54 -04:00
dependabot[bot]
2a0a0ea1cc chore(deps): bump golangci/golangci-lint-action from 6.0.1 to 6.1.0 (#19297)
Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 6.0.1 to 6.1.0.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](a4f60bb28d...aaa42aa062)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-30 11:25:22 -04:00
dependabot[bot]
3c7b6886bf chore(deps): bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (#19296)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.5.0 to 3.6.1.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](aa33708b10...988b5a0280)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-30 11:24:59 -04:00
dependabot[bot]
44b1dfce90 chore(deps): bump github.com/aws/aws-sdk-go from 1.55.3 to 1.55.4 (#19295)
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.55.3 to 1.55.4.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.55.3...v1.55.4)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-30 08:21:36 -04:00
Hazar Guney
3996a18bc9 Add Instruqt (#19299)
Signed-off-by: Hazar Guney <hazar+github@instruqt.com>
2024-07-30 10:58:58 +02:00
shangchengbabaiban
592e0b5879 chore: fix some comments (#19290) 2024-07-29 22:04:12 -04:00
Michael Crenshaw
7878ddf086 chore: fix lint (#19293) 2024-07-29 22:02:27 -04:00
Kevin
e2c5a555ce docs: Notification Controller is not included in Argo CD Core install (#19267)
Signed-off-by: Juwon Hwang (Kevin) <juwon8891@gmail.com>
2024-07-29 10:15:44 -06:00
github-actions[bot]
348f5013ff [Bot] docs: Update Snyk reports (#19278)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-07-29 11:44:17 -04:00
Doug Goldstein
34b411cca7 feat: implement source refs for helm set-file (#17941)
In multi-source applications helm values files can come from other repos
if you use the ref syntax but it is not possible for the --set-file
param to take files from other repos via the ref syntax. This extends
the behavior to cover set-file parameters as well as the values files.
fixes #13220, refs #17822

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2024-07-29 11:43:52 -04:00
kahoulei
75e73834bf feat: Add ignore-resources-tracking annotation to ignore resources update (#18343)
* feat: Add ignore-resources-tracking annotation to ignore resources update

Signed-off-by: kahoulei <kahou.lei@okta.com>

* add doc

Signed-off-by: kahoulei <kahou.lei@okta.com>

* update annotation doc

Signed-off-by: kahoulei <kahou.lei@okta.com>

* refactor annotation usage base on comment feedback

Signed-off-by: kahoulei <kahou.lei@okta.com>

* update annotation

Signed-off-by: kahoulei <kahou.lei@okta.com>

* do not store boolean in resourceInfo

Signed-off-by: kahoulei <kahou.lei@okta.com>

* typo

Signed-off-by: kahoulei <kahou.lei@okta.com>

* update logic

Signed-off-by: kahoulei <kahou.lei@okta.com>

* refactor

Signed-off-by: kahoulei <kahou.lei@okta.com>

* add comment

Signed-off-by: kahoulei <kahou.lei@okta.com>

* add tests

Signed-off-by: kahoulei <kahou.lei@okta.com>

* update doc

Signed-off-by: kahoulei <kahou.lei@okta.com>

* update code base on comment feedback

Signed-off-by: kahoulei <kahou.lei@okta.com>

* update annotation doc

Signed-off-by: kahoulei <kahou.lei@okta.com>

* fix goimport

Signed-off-by: kahoulei <kahou.lei@okta.com>

* fix golint

Signed-off-by: kahoulei <kahou.lei@okta.com>

* update comments

Signed-off-by: kahoulei <kahou.lei@okta.com>

* update docs

Signed-off-by: kahoulei <kahou.lei@okta.com>

* update annotation name

Signed-off-by: kahoulei <kahou.lei@okta.com>

* rename annotation

Signed-off-by: kahoulei <kahou.lei@okta.com>

* lint check

Signed-off-by: kahoulei <kahou.lei@okta.com>

---------

Signed-off-by: kahoulei <kahou.lei@okta.com>
Co-authored-by: kahoulei <kahou.lei@okta.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-07-29 11:26:50 -04:00
dependabot[bot]
6cc898ff37 chore(deps): bump code.gitea.io/sdk/gitea from 0.18.0 to 0.19.0 (#19287)
Bumps code.gitea.io/sdk/gitea from 0.18.0 to 0.19.0.

---
updated-dependencies:
- dependency-name: code.gitea.io/sdk/gitea
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-29 10:07:07 -04:00
dependabot[bot]
2769dd3931 chore(deps): bump ossf/scorecard-action from 2.3.3 to 2.4.0 (#19286)
Bumps [ossf/scorecard-action](https://github.com/ossf/scorecard-action) from 2.3.3 to 2.4.0.
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md)
- [Commits](dc50aa9510...62b2cac7ed)

---
updated-dependencies:
- dependency-name: ossf/scorecard-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-29 08:52:05 -04:00
Iskander Sitdikov
8b1bddd5f7 fix: Pre-process KubeVersion before passing it to kustomize (#19258)
It should be done in the same way as for plugins.

Signed-off-by: Iskander Sitdikov <thoughteer@zerion.io>
2024-07-26 19:03:59 -04:00
dependabot[bot]
473a695585 chore(deps): bump github.com/xanzy/go-gitlab from 0.91.1 to 0.107.0 (#19227)
* chore(deps): bump github.com/xanzy/go-gitlab from 0.91.1 to 0.107.0

Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.91.1 to 0.107.0.
- [Changelog](https://github.com/xanzy/go-gitlab/blob/main/releases_test.go)
- [Commits](https://github.com/xanzy/go-gitlab/compare/v0.91.1...v0.107.0)

---
updated-dependencies:
- dependency-name: github.com/xanzy/go-gitlab
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix type

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* handle empty labels list

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-26 19:03:08 -04:00
dependabot[bot]
aa2b331153 chore(deps): bump github.com/prometheus/client_golang (#19242)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.18.0 to 1.19.1.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.18.0...v1.19.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-26 16:59:29 -04:00
dependabot[bot]
0019042c9d chore(deps): bump @babel/traverse from 7.14.7 to 7.25.0 in /ui (#19270)
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.14.7 to 7.25.0.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.25.0/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-26 19:58:20 +00:00
Dillen Padhiar
8e5bf5dadc test: minor fix for Numaplane CRD Health Checks (#19241)
* test: small improvement for Numaplane CRD Health Checks

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* fix: correct reason check

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

---------

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-07-26 15:51:39 -04:00
dependabot[bot]
d894d22a63 chore(deps): bump github.com/go-openapi/runtime from 0.26.0 to 0.28.0 (#19244)
Bumps [github.com/go-openapi/runtime](https://github.com/go-openapi/runtime) from 0.26.0 to 0.28.0.
- [Release notes](https://github.com/go-openapi/runtime/releases)
- [Commits](https://github.com/go-openapi/runtime/compare/v0.26.0...v0.28.0)

---
updated-dependencies:
- dependency-name: github.com/go-openapi/runtime
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-26 15:25:22 -04:00
dependabot[bot]
3ec6604149 chore(deps): bump github.com/redis/go-redis/v9 from 9.0.5 to 9.6.1 (#19247)
Bumps [github.com/redis/go-redis/v9](https://github.com/redis/go-redis) from 9.0.5 to 9.6.1.
- [Release notes](https://github.com/redis/go-redis/releases)
- [Changelog](https://github.com/redis/go-redis/blob/master/CHANGELOG.md)
- [Commits](https://github.com/redis/go-redis/compare/v9.0.5...v9.6.1)

---
updated-dependencies:
- dependency-name: github.com/redis/go-redis/v9
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-26 15:24:08 -04:00
dependabot[bot]
7c41233419 chore(deps): bump github.com/ktrysmt/go-bitbucket from 0.9.67 to 0.9.80 (#19246)
Bumps [github.com/ktrysmt/go-bitbucket](https://github.com/ktrysmt/go-bitbucket) from 0.9.67 to 0.9.80.
- [Release notes](https://github.com/ktrysmt/go-bitbucket/releases)
- [Commits](https://github.com/ktrysmt/go-bitbucket/compare/v0.9.67...v0.9.80)

---
updated-dependencies:
- dependency-name: github.com/ktrysmt/go-bitbucket
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-26 15:22:57 -04:00
dependabot[bot]
11629d18d3 chore(deps): bump github.com/gorilla/websocket from 1.5.0 to 1.5.3 (#19245)
Bumps [github.com/gorilla/websocket](https://github.com/gorilla/websocket) from 1.5.0 to 1.5.3.
- [Release notes](https://github.com/gorilla/websocket/releases)
- [Commits](https://github.com/gorilla/websocket/compare/v1.5.0...v1.5.3)

---
updated-dependencies:
- dependency-name: github.com/gorilla/websocket
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-26 15:21:40 -04:00
dependabot[bot]
25c2f2fbc6 chore(deps): bump github.com/coreos/go-oidc/v3 from 3.10.0 to 3.11.0 (#19249)
Bumps [github.com/coreos/go-oidc/v3](https://github.com/coreos/go-oidc) from 3.10.0 to 3.11.0.
- [Release notes](https://github.com/coreos/go-oidc/releases)
- [Commits](https://github.com/coreos/go-oidc/compare/v3.10.0...v3.11.0)

---
updated-dependencies:
- dependency-name: github.com/coreos/go-oidc/v3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-26 05:10:18 +00:00
dependabot[bot]
714d1ad01f chore(deps): bump github.com/aws/aws-sdk-go from 1.55.2 to 1.55.3 (#19248)
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.55.2 to 1.55.3.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.55.2...v1.55.3)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-26 05:01:38 +00:00
thisishwan2
889c36cd21 chore: improve error logs(#10592) (#19197)
* chore: improve error logs

Signed-off-by: thisishwan2 <feel000617@gmail.com>

* chore: format change

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: thisishwan2 <112103038+thisishwan2@users.noreply.github.com>
Signed-off-by: thisishwan2 <feel000617@gmail.com>

* chore: change format message

Signed-off-by: thisishwan2 <feel000617@gmail.com>

* chore: Rollback of error formats for generateParamsForGitFiles function

Signed-off-by: thisishwan2 <feel000617@gmail.com>

---------

Signed-off-by: thisishwan2 <feel000617@gmail.com>
Signed-off-by: thisishwan2 <112103038+thisishwan2@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-26 03:03:52 +00:00
dependabot[bot]
929e85553d chore(deps): bump golang.org/x/net from 0.25.0 to 0.27.0 (#19226)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.25.0 to 0.27.0.
- [Commits](https://github.com/golang/net/compare/v0.25.0...v0.27.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-26 01:22:13 +00:00
dependabot[bot]
dcfa738f1c chore(deps): bump github.com/bradleyfalzon/ghinstallation/v2 (#19230)
Bumps [github.com/bradleyfalzon/ghinstallation/v2](https://github.com/bradleyfalzon/ghinstallation) from 2.6.0 to 2.11.0.
- [Release notes](https://github.com/bradleyfalzon/ghinstallation/releases)
- [Commits](https://github.com/bradleyfalzon/ghinstallation/compare/v2.6.0...v2.11.0)

---
updated-dependencies:
- dependency-name: github.com/bradleyfalzon/ghinstallation/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-26 01:12:36 +00:00
dependabot[bot]
4c158faf32 chore(deps): bump oras.land/oras-go/v2 from 2.3.0 to 2.5.0 (#19234)
Bumps [oras.land/oras-go/v2](https://github.com/oras-project/oras-go) from 2.3.0 to 2.5.0.
- [Release notes](https://github.com/oras-project/oras-go/releases)
- [Commits](https://github.com/oras-project/oras-go/compare/v2.3.0...v2.5.0)

---
updated-dependencies:
- dependency-name: oras.land/oras-go/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 20:41:53 -04:00
dependabot[bot]
be042e2dcf chore(deps): bump github.com/casbin/casbin/v2 from 2.97.0 to 2.98.0 (#19235)
Bumps [github.com/casbin/casbin/v2](https://github.com/casbin/casbin) from 2.97.0 to 2.98.0.
- [Release notes](https://github.com/casbin/casbin/releases)
- [Changelog](https://github.com/casbin/casbin/blob/master/.releaserc.json)
- [Commits](https://github.com/casbin/casbin/compare/v2.97.0...v2.98.0)

---
updated-dependencies:
- dependency-name: github.com/casbin/casbin/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 23:26:35 +00:00
dependabot[bot]
2465ebbab0 chore(deps): bump github.com/prometheus/client_model from 0.5.0 to 0.6.1 (#19232)
Bumps [github.com/prometheus/client_model](https://github.com/prometheus/client_model) from 0.5.0 to 0.6.1.
- [Release notes](https://github.com/prometheus/client_model/releases)
- [Commits](https://github.com/prometheus/client_model/compare/v0.5.0...v0.6.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_model
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 23:18:48 +00:00
dependabot[bot]
a03bda68f2 chore(deps): bump github.com/cyphar/filepath-securejoin (#19225)
Bumps [github.com/cyphar/filepath-securejoin](https://github.com/cyphar/filepath-securejoin) from 0.2.4 to 0.3.1.
- [Release notes](https://github.com/cyphar/filepath-securejoin/releases)
- [Changelog](https://github.com/cyphar/filepath-securejoin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/cyphar/filepath-securejoin/compare/v0.2.4...v0.3.1)

---
updated-dependencies:
- dependency-name: github.com/cyphar/filepath-securejoin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 23:18:24 +00:00
dependabot[bot]
fec106a260 chore(deps): bump google.golang.org/grpc from 1.59.0 to 1.65.0 (#19229)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.59.0 to 1.65.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.59.0...v1.65.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 19:12:31 -04:00
dependabot[bot]
58f16c1c58 chore(deps): bump golang.org/x/sync from 0.5.0 to 0.7.0 (#19219)
Bumps [golang.org/x/sync](https://github.com/golang/sync) from 0.5.0 to 0.7.0.
- [Commits](https://github.com/golang/sync/compare/v0.5.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sync
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 22:51:16 +00:00
dependabot[bot]
dba8086f4a chore(deps): bump github.com/aws/aws-sdk-go from 1.50.8 to 1.55.2 (#19218)
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.50.8 to 1.55.2.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.50.8...v1.55.2)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 21:00:52 +00:00
odubajDT
ddc0b0fd3f feat: Introduce KeptnWorkloadVersion custom resource (#15951)
Signed-off-by: odubajDT <ondrej.dubaj@dynatrace.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-25 21:00:02 +00:00
dependabot[bot]
f1018e88a0 chore(deps): bump github.com/itchyny/gojq from 0.12.13 to 0.12.16 (#19224)
Bumps [github.com/itchyny/gojq](https://github.com/itchyny/gojq) from 0.12.13 to 0.12.16.
- [Release notes](https://github.com/itchyny/gojq/releases)
- [Changelog](https://github.com/itchyny/gojq/blob/main/CHANGELOG.md)
- [Commits](https://github.com/itchyny/gojq/compare/v0.12.13...v0.12.16)

---
updated-dependencies:
- dependency-name: github.com/itchyny/gojq
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 20:11:27 +00:00
dependabot[bot]
8952273d1f chore(deps): bump github.com/spf13/cobra from 1.7.0 to 1.8.1 (#19231)
Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.7.0 to 1.8.1.
- [Release notes](https://github.com/spf13/cobra/releases)
- [Commits](https://github.com/spf13/cobra/compare/v1.7.0...v1.8.1)

---
updated-dependencies:
- dependency-name: github.com/spf13/cobra
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 16:08:00 -04:00
dependabot[bot]
f05de86401 chore(deps): bump github.com/go-logr/logr from 1.4.1 to 1.4.2 (#19228)
Bumps [github.com/go-logr/logr](https://github.com/go-logr/logr) from 1.4.1 to 1.4.2.
- [Release notes](https://github.com/go-logr/logr/releases)
- [Changelog](https://github.com/go-logr/logr/blob/master/CHANGELOG.md)
- [Commits](https://github.com/go-logr/logr/compare/v1.4.1...v1.4.2)

---
updated-dependencies:
- dependency-name: github.com/go-logr/logr
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 19:26:34 +00:00
dependabot[bot]
e85d97bbc1 chore(deps): bump github.com/gosimple/slug from 1.13.1 to 1.14.0 (#19222)
Bumps [github.com/gosimple/slug](https://github.com/gosimple/slug) from 1.13.1 to 1.14.0.
- [Release notes](https://github.com/gosimple/slug/releases)
- [Commits](https://github.com/gosimple/slug/compare/v1.13.1...v1.14.0)

---
updated-dependencies:
- dependency-name: github.com/gosimple/slug
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 19:24:46 +00:00
dependabot[bot]
b95347c5e3 chore(deps): bump github.com/felixge/httpsnoop from 1.0.3 to 1.0.4 (#19221)
Bumps [github.com/felixge/httpsnoop](https://github.com/felixge/httpsnoop) from 1.0.3 to 1.0.4.
- [Release notes](https://github.com/felixge/httpsnoop/releases)
- [Commits](https://github.com/felixge/httpsnoop/compare/v1.0.3...v1.0.4)

---
updated-dependencies:
- dependency-name: github.com/felixge/httpsnoop
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 19:24:28 +00:00
dependabot[bot]
1cef4de066 chore(deps): bump github.com/cespare/xxhash/v2 from 2.2.0 to 2.3.0 (#19220)
Bumps [github.com/cespare/xxhash/v2](https://github.com/cespare/xxhash) from 2.2.0 to 2.3.0.
- [Commits](https://github.com/cespare/xxhash/compare/v2.2.0...v2.3.0)

---
updated-dependencies:
- dependency-name: github.com/cespare/xxhash/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 19:24:17 +00:00
dependabot[bot]
30f05e8726 chore(deps): bump golang.org/x/oauth2 from 0.13.0 to 0.21.0 (#19217)
Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from 0.13.0 to 0.21.0.
- [Commits](https://github.com/golang/oauth2/compare/v0.13.0...v0.21.0)

---
updated-dependencies:
- dependency-name: golang.org/x/oauth2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 19:20:53 +00:00
Michael Crenshaw
21fe286f6e chore(refactor): move util function to util package (#19192)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-25 10:33:16 -04:00
Michael Crenshaw
25909f1671 chore(ci): allow more go dependabot updates (#19190)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-25 10:32:01 -04:00
Michael Crenshaw
6f94113935 chore(ci): group otel updates (#19187)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-25 10:31:40 -04:00
Michael Crenshaw
56bb5734de chore(deps): bump node images and types (#19188)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-25 10:31:26 -04:00
Andreas
326cc4a06b feat(health): Added KeptnMetric (#19210)
Signed-off-by: asamonik <49288593+asamonik@users.noreply.github.com>
2024-07-25 10:26:06 -04:00
Andreas
e26c105e52 feat(health): Added Keptn Analysis (#19211)
Signed-off-by: asamonik <49288593+asamonik@users.noreply.github.com>
2024-07-25 10:23:26 -04:00
dependabot[bot]
20f55285cd chore(deps): bump github.com/casbin/govaluate from 1.1.0 to 1.2.0 (#19205)
Bumps [github.com/casbin/govaluate](https://github.com/casbin/govaluate) from 1.1.0 to 1.2.0.
- [Release notes](https://github.com/casbin/govaluate/releases)
- [Changelog](https://github.com/casbin/govaluate/blob/master/.releaserc.json)
- [Commits](https://github.com/casbin/govaluate/compare/v1.1.0...v1.2.0)

---
updated-dependencies:
- dependency-name: github.com/casbin/govaluate
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 10:21:13 -04:00
dependabot[bot]
9026f14a0b chore(deps): bump github.com/gorilla/handlers from 1.5.1 to 1.5.2 (#19206)
Bumps [github.com/gorilla/handlers](https://github.com/gorilla/handlers) from 1.5.1 to 1.5.2.
- [Release notes](https://github.com/gorilla/handlers/releases)
- [Commits](https://github.com/gorilla/handlers/compare/v1.5.1...v1.5.2)

---
updated-dependencies:
- dependency-name: github.com/gorilla/handlers
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 10:20:51 -04:00
William Parr
67776ad864 fix(applicationset): ensure that older applicationStatus is updated with new required values (#19165)
Signed-off-by: wparr-circle <william.parr@circle.com>
2024-07-25 10:10:33 -04:00
Tobias Verbeke
3406078b89 fix: add Open Analytics (#19214)
Signed-off-by: Tobias Verbeke <tobias.verbeke@openanalytics.eu>
2024-07-25 01:52:40 -10:00
vaboston
58b56767bc docs: add LeFigaro to USERS.md (#19212)
Signed-off-by: Valentin Bouin <vbouin@lefigaro.fr>
Co-authored-by: Valentin Bouin <vbouin@lefigaro.fr>
2024-07-24 22:48:59 -10:00
Michael Crenshaw
d0313c5ba4 Revert "feat: removed legacy app tracking label (#13203)" (#19196)
This reverts commit 4d8436b7e1.

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-24 19:10:38 +00:00
dependabot[bot]
9ca2c53d1d chore(deps): bump library/redis in /test/container (#19172)
Bumps library/redis from `fb534a3` to `5a82749`.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-24 20:32:08 +03:00
Dillen Padhiar
ba32783a40 fix: bug fixes and improvements for Numaplane CRD health checks (#19168)
* fix: bugs and improvements for Numaplane CRD health checks

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* test: update paused PipelineRollout test case

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* test: add new cases for isbservicerollout and numaflowcontrollerrollout

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

---------

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-07-24 17:25:34 +00:00
Yevhen Tienkaiev
85a782e91e Fix target for external urls (#19124)
Signed-off-by: Dan Garfield <dan@codefresh.io>
2024-07-24 17:25:11 +00:00
dependabot[bot]
3daaca9211 chore(deps): bump google.golang.org/protobuf from 1.33.0 to 1.34.2 (#18934)
Bumps google.golang.org/protobuf from 1.33.0 to 1.34.2.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-24 10:44:15 -04:00
Rajesh Muthusamy
3bc3d22b2a docs: Update USERS.md added Name Cognizant (#19186)
* docs Update USERS.md added Company name Cognizant

added Company name Cognizant

Signed-off-by: Rajesh Muthusamy <m.rajesh2005@gmail.com>

* docs: Update to USERS.md added company name Cognizant

Added Company name Cognizant to USERS.md

Signed-off-by: Rajesh Muthusamy <m.rajesh2005@gmail.com>

* Remove dupe line

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Rajesh Muthusamy <m.rajesh2005@gmail.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-24 14:25:17 +00:00
pasha-codefresh
e36248cb22 Merge commit from fork
* feat: verify rbac on each message and not just during handshake

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* cover with tests

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix: linter and e2e tests

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix: linter and e2e tests

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-07-24 12:18:15 +03:00
dependabot[bot]
e647690860 chore(deps-dev): bump typescript from 5.5.3 to 5.5.4 in /ui-test (#19154)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.5.3 to 5.5.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.5.3...v5.5.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-07-23 12:32:33 -04:00
Arthur Outhenin-Chalandre
edf631c979 feat(kustomize): add support for helm args to pass api and kube versions (#16583)
Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@ledger.fr>
2024-07-23 11:30:11 -04:00
dependabot[bot]
77a8100d3a chore(deps): bump docker/setup-qemu-action from 3.0.0 to 3.2.0 (#19155)
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3.0.0 to 3.2.0.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](68827325e0...49b3bc8e6b)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-23 14:25:44 +00:00
rumstead
975449c8d8 docs(appset): adding examples to argocd-cmd-params-cm for reconciling and git globbing (#19166)
Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
2024-07-23 14:02:46 +00:00
fsl
560c7c2cde chore: fix ui vuln (#19153)
Signed-off-by: fsl <1171313930@qq.com>
2024-07-23 10:00:05 -04:00
github-actions[bot]
5eafab12bc [Bot] docs: Update Snyk reports (#19127)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-07-23 09:36:08 -04:00
dependabot[bot]
386d848178 chore(deps): bump docker/login-action from 3.2.0 to 3.3.0 (#19156)
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](0d4c9c5ea7...9780b0c442)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-23 09:30:17 -04:00
dependabot[bot]
66eac6dd80 chore(deps): bump docker/setup-buildx-action from 3.4.0 to 3.5.0 (#19157)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.4.0 to 3.5.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](4fd812986e...aa33708b10)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-23 09:29:25 -04:00
dependabot[bot]
555dbba268 chore(deps): bump docker/build-push-action from 6.4.1 to 6.5.0 (#19158)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.4.1 to 6.5.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](1ca370b3a9...5176d81f87)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-23 09:28:38 -04:00
appiepollo14
ff3e36c3ce fix: Fixes x509 cert issue by passing trusted certs via CM for BitBucketServer and GitLab (#19002)
* Fixes https://github.com/argoproj/argo-cd/issues/9607
for BitBucketServer by allowing to pass a CM holding trusted certificates. Refactors implementation for GitLab.

Signed-off-by: asjervanasten <asjer94@live.com>

* Fixes https://github.com/argoproj/argo-cd/issues/9607
for BitBucketServer by allowing to pass a CM holding trusted certificates. Refactors implementation for GitLab.

Signed-off-by: asjervanasten <asjer94@live.com>

* Implemented review feedback. Util class for retrieving Secret and CM, renamed caRef.

Signed-off-by: asjervanasten <asjer94@live.com>

---------

Signed-off-by: asjervanasten <asjer94@live.com>
2024-07-23 07:09:08 -04:00
Kolawole Olowoporoku
834223a59c docs: update users.md (#19161)
* Update USERS.md

Signed-off-by: Kolawole Olowoporoku <79517443+kollzey@users.noreply.github.com>

* Update USERS.md

Signed-off-by: Kolawole Olowoporoku <79517443+kollzey@users.noreply.github.com>

* Update USERS.md

chore: remove whitespace

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Kolawole Olowoporoku <79517443+kollzey@users.noreply.github.com>
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-07-23 01:02:40 -10:00
fsl
3d77d9ced0 fix: enable logging for the controller runtime (#19129)
Signed-off-by: fsl <1171313930@qq.com>
2024-07-22 20:04:21 -04:00
Michael Crenshaw
65fddab260 chore: use .mockery.yaml for all mocks (#19149)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-22 20:03:50 -04:00
Michael Crenshaw
745ec52d9c chore(deps): bump go-github from v35 to v63 (#19152)
* chore(deps): bump go-github from v35 to v63

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* use old default

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix test

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-22 19:49:09 -04:00
Michael Crenshaw
4c34678c24 docs: document built-in resource actions (#19145)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-22 18:17:24 -04:00
Reinier Timmer
9dd1083c98 fix: update job name for manual cronjob creation (#19137)
* fix: update job name for manual cronjob creation

Changes the name of Job resources when manually starting a CronJob from ArgoCD to be in accordance to kubernetes CronJob spec.

Signed-off-by: Reinier Timmer <reinier.timmer@ah.nl>

* docs: added upgrading note for changed Job name format

Signed-off-by: Reinier Timmer <reinier.timmer@ah.nl>

* docs: update Argo CD name based on suggestion

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Reinier Timmer <reinier.timmer@ah.nl>

---------

Signed-off-by: Reinier Timmer <reinier.timmer@ah.nl>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-22 17:15:15 -04:00
Cheng Fang
f6c06046e6 docs(rbac): add role and effect to the sample policy formats (#19151)
Signed-off-by: Cheng Fang <cfang@redhat.com>
2024-07-22 17:11:52 -04:00
Kevin
13be1aec2c chore: wrap error when setting new revision manifests (#19148)
Signed-off-by: Juwon Hwang (Kevin) <juwon8891@gmail.com>
2024-07-22 14:36:29 -04:00
pasha-codefresh
c9c7989f8c Merge commit from fork
* feat: limit payload size

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* cover with tests and provide ability to define variable from CM

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* cover with tests and provide ability to define variable from CM

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* improve error message and add documentation

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix tests

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix comments

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix linter

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-07-22 17:08:17 +03:00
Matthieu Simon
5d21725225 docs: fix typo on 2.13 upgrade manual (#19139)
Signed-off-by: tieum <matthieu@bluegreen.sh>
2024-07-22 03:32:05 -10:00
Michael Crenshaw
505998298f chore(deps): bump protoc from 3.17.3 to (3.).27.2 (#19120)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-21 23:04:47 -04:00
Jellyfrog
f26b76a7aa feat(health): support for some rds.crossplane.io resources (#19076)
Signed-off-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2024-07-21 23:03:06 -04:00
Julio
f9078f78b6 feat(appset): add key title to PR generator (#16447) (#17907)
Signed-off-by: ggjulio <juligonz@student.42.fr>
2024-07-21 22:36:39 -04:00
thecooldrop
a7cb6ed9bb fix: tree output with app selector permission denied. (#18990)
* Fix: wrong application name passed into function

The application name which was passed into the function
was a namespace-qualified name for the application, but
actually a simple non-qualified name was needed.

This leads to issue on the kube-apiserver side
where qualified app name is used to retrieve
the resource from a lister, leading to a cache-miss
basically, since app was looked up by namespace/namespace/appname
key, instead of namespace/appname key.

Signed-off-by: TheCoolDrop <vanio.begic123@gmail.com>

* chore: Fix the name of the application used with tree=detailed output

Signed-off-by: TheCoolDrop <vanio.begic123@gmail.com>

---------

Signed-off-by: TheCoolDrop <vanio.begic123@gmail.com>
2024-07-21 22:32:15 -04:00
dependabot[bot]
64b76f2fa0 chore(deps): bump tj-actions/changed-files from 44.5.5 to 44.5.6 (#19116)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 44.5.5 to 44.5.6.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](cc733854b1...6b2903bdce)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-19 11:44:37 -04:00
Andrii Korotkov
c59cb52b27 chore: Use more optimal iterate hierarchy v2 (#18929) (#18972)
Closes #18929
Helps with #18500
Use iterate hierarchy v2 to have a roughly linear performance for getting the resource tree instead of up to quadratic.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-07-19 11:37:13 -04:00
dependabot[bot]
22e498e9ca chore(deps): bump softprops/action-gh-release from 2.0.7 to 2.0.8 (#19117)
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.0.7 to 2.0.8.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](fb2d03176f...c062e08bd5)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-19 08:28:09 -04:00
Dillen Padhiar
ea725a9c7c fix: Numaplane CRD health checks - bug fixes (#19099)
* fix: Numaplane CRD health checks - phase check for Healthy

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* fix: return diff message when phase is Failed

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* fix: NumaflowControllerRollout test

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* fix: return statements added

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

---------

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>
2024-07-18 15:11:07 -04:00
yyzxw
b6960973b7 chore: replace deprecated func (#18291)
Signed-off-by: xiaowu.zhu <xiaowu.zhu@daocloud.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-07-18 12:59:52 -04:00
dependabot[bot]
bb1bb3f4eb chore(deps-dev): bump @types/node from 20.14.10 to 20.14.11 in /ui-test (#19092)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.14.10 to 20.14.11.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-18 08:23:32 -04:00
dependabot[bot]
530bcd7cf6 chore(deps): bump chromedriver from 126.0.4 to 126.0.5 in /ui-test (#19100)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 126.0.4 to 126.0.5.
- [Commits](https://github.com/giggio/node-chromedriver/compare/126.0.4...126.0.5)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-18 08:22:50 -04:00
dependabot[bot]
07db0e0937 chore(deps): bump docker/build-push-action from 6.4.0 to 6.4.1 (#19102)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.4.0 to 6.4.1.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](a254f8ca60...1ca370b3a9)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-18 07:46:28 -04:00
dependabot[bot]
54646ed55c chore(deps): bump softprops/action-gh-release from 2.0.6 to 2.0.7 (#19101)
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.0.6 to 2.0.7.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](a74c6b72af...fb2d03176f)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-18 07:46:05 -04:00
Dillen Padhiar
d6bc02b195 feat: health checks for Numaplane CRDs (#19077)
* feat: health checks for Numaplane CRDs

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* test: update health_test for NumaflowController

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

---------

Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-07-17 20:17:09 +03:00
Adrian Berger
824d0dced7 feat: Add custom resource health for flux resources (#19082)
* feat: Add custom resource health for flux resources

Signed-off-by: Adrian Berger <adrian.berger@bedag.ch>

* chore: Update upgrade docs

Signed-off-by: Adrian Berger <adrian.berger@bedag.ch>

---------

Signed-off-by: Adrian Berger <adrian.berger@bedag.ch>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-07-17 20:16:57 +03:00
Andrii Korotkov
a06cdb3880 docs: Add an explanation of using ignoring differences for app of apps pattern (#18945)
Some fields updates trigger app of apps being out of sync on a regular basis, or prevent from persistently modifying some behaviors like auto sync without doing the change in the code. This update shows how to do this using ignore differences configuration.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-07-17 16:23:53 +00:00
Cyril Duchon-Doris
484e83d210 chore: add My Job Glasses to users of argo-cd (#19095)
Signed-off-by: Cyril Duchon-Doris <Startouf@users.noreply.github.com>
2024-07-17 03:07:31 -10:00
Arthur Outhenin-Chalandre
30a1623e38 fix(applicationset): use requeue after if generate app errors out (#18761)
The `GenerateApplications` can call to external resources like Github
API for instance which might be rate limited or fail. If those requests
somehow fail we should requeue them after some time like (same
reason as e98d3b2a87/applicationset/controllers/applicationset_controller.go (L154)).

For instance, in our environments we were rate limited by Github and the ArgoCD
applicationset controller was logging the following error about every
second or less for every application set using the pull request generator
that we have:
```
time="2024-06-21T14:17:15Z" level=error msg="error generating params" error="error listing repos: error listing pull requests for LedgerHQ/xxx: GET https://api.github.com/repos/LedgerHQ/xxx/pulls?per_page=100: 403 API rate limit exceeded for installation ID xxx. If you reach out to GitHub Support for help, please include the request ID xxx and timestamp 2024-06-xx xxx UTC. [rate reset in 8m18s]" generator="&{0xc000d652c0 0x289a100 {0xc00087bdd0}  [] true}"
time="2024-06-21T14:17:15Z" level=error msg="error generating application from params" applicationset=argocd/xxx error="error listing repos: error listing pull requests for LedgerHQ/xxxx: GET https://api.github.com/repos/LedgerHQ/xxx/pulls?per_page=100: 403 API rate limit exceeded for installation ID xxx. If you reach out to GitHub Support for help, please include the request ID xxx and timestamp 2024-06-xx xxx UTC. [rate reset in 8m18s]" generator="{nil nil nil nil nil &PullRequestGenerator{Github:&PullRequestGeneratorGithub{Owner:LedgerHQ,Repo:xxx,API:,TokenRef:nil,AppSecretName:xxxx,Labels:[argocd/preview],},GitLab:nil,Gitea:nil,BitbucketServer:nil,Filters:[]PullRequestGeneratorFilter{},RequeueAfterSeconds:*1800,Template:ApplicationSetTemplate{ApplicationSetTemplateMeta:ApplicationSetTemplateMeta{Name:,Namespace:,Labels:map[string]string{},Annotations:map[string]string{},Finalizers:[],},Spec:ApplicationSpec{Source:nil,Destination:ApplicationDestination{Server:,Namespace:,Name:,},Project:,SyncPolicy:nil,IgnoreDifferences:[]ResourceIgnoreDifferences{},Info:[]Info{},RevisionHistoryLimit:nil,Sources:[]ApplicationSource{},},},Bitbucket:nil,AzureDevOps:nil,} nil nil nil nil}"
```

Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@ledger.fr>
2024-07-16 17:56:36 -04:00
Michael Crenshaw
45b7593e82 docs(appset): clarify global sync policy config (#19085)
* docs(appset): clarify global sync policy config

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* clarify

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* clarify

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-16 13:58:41 -04:00
dependabot[bot]
32e6ca2337 chore(deps): bump docker/build-push-action from 6.3.0 to 6.4.0 (#19079)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.3.0 to 6.4.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](1a162644f9...a254f8ca60)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-16 10:52:06 -04:00
Leonardo Luz Almeida
c5d0acf7ec feat: forward the Argo CD logged in user to the proxy extension (#19075)
* feat: forward the Argo CD logged in user to the proxy extension

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* Add docs

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

---------

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
2024-07-16 09:40:08 -04:00
Michael Crenshaw
7af5793c5b chore(deps): bump Dex from 2.38.0 to 2.40.0 (#19057)
* chore(deps): bump Dex from 2.38.0 to 2.40.0

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* docs

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-15 21:35:38 -04:00
Michael Crenshaw
4f22dbda14 docs: update release cadence doc w/ future releases (#19065)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-15 21:34:34 -04:00
Rachel Sheikh
c14143635c fix(cli): add optional password setting for headless redis client (#19035) (#19039)
* chore: add optional password setting for headless redis client

Signed-off-by: Rachel Sheikh <rsheikh@squareup.com>

* fix: remove import cycle

Signed-off-by: Rachel Sheikh <rsheikh@squareup.com>

* fix: add shared SetOptionalRedisPasswordFromKubeConfig method

Signed-off-by: Rachel Sheikh <rsheikh@squareup.com>

* fix: export redis consts

Signed-off-by: Rachel Sheikh <rsheikh@squareup.com>

* test: add test cases for SetOptionalRedisPasswordFromKubeConfig()

Signed-off-by: Rachel Sheikh <rsheikh@squareup.com>

* chore: go mod tidy

Signed-off-by: Rachel Sheikh <rsheikh@squareup.com>

* fix: use require instead of assert

Signed-off-by: Rachel Sheikh <rsheikh@squareup.com>

* fix: Update common/common.go

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Rachel Sheikh <sheikhrachel97@gmail.com>

---------

Signed-off-by: Rachel Sheikh <rsheikh@squareup.com>
Signed-off-by: Rachel Sheikh <sheikhrachel97@gmail.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-15 15:09:49 -04:00
Adrian Berger
7fdddbe59b feat: Add custom resource actions for flux resources (#18922)
* feat: Add custom resource actions for flux resources
Signed-off-by: Adrian Berger <adrian.berger@bedag.ch>

* chore: Add upgrade docs, change annotation text

Signed-off-by: Adrian Berger <adrian.berger@bedag.ch>

---------

Signed-off-by: Adrian Berger <adrian.berger@bedag.ch>
2024-07-15 13:44:32 -04:00
github-actions[bot]
dfaacef76f [Bot] docs: Update Snyk reports (#19046)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-07-15 11:11:27 -04:00
Andy Goldstein
7631d207e3 fix(controller): incorrect pruning of cluster-level resources and watches deadlock (#19040)
This update includes critical fixes that resolve an issue where
cluster-scoped resources could have been accidentally deleted during an
application sync if pruning is enabled.

Signed-off-by: Andy Goldstein <andy.goldstein@gmail.com>
2024-07-15 15:02:07 +00:00
Matthieu MOREL
ed336c222e testifylint: fixes with upstream version (#19049)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-07-15 11:01:48 -04:00
lrost
c6f2d2896d docs: Add organisation to USERS.MD (#19050)
* Update USERS.md

Added Lely

Signed-off-by: lrost <luukrost@gmail.com>

* added municipality of The Hague

---------

Signed-off-by: lrost <luukrost@gmail.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-15 10:24:17 -04:00
Javier Solana
e7760b5e93 feat: Allow return the client without performing a matchRepository (#18053)
* return the client without performing a matchRepository operation when the application'plugin be configured by its name

Signed-off-by: Javier Solana <javier.solana@cabify.com>

* add CheckPluginConfiguration pre-flight operation

Signed-off-by: Javier Solana <javier.solana@cabify.com>

* fix lint

Signed-off-by: Javier Solana <javier.solana@cabify.com>

* Missing comment

Signed-off-by: Javier Solana <javier.solana@cabify.com>

* remove WithFields
Signed-off-by: Javier Solana <javier.solana@cabify.com>

* fix captLocal
Signed-off-by: Javier Solana <javier.solana@cabify.com>

---------

Signed-off-by: Javier Solana <javier.solana@cabify.com>
Co-authored-by: Javier Solana <javier.solana@cabify.com>
2024-07-15 09:02:25 -04:00
Jellyfrog
7f338e910f feat(health): support for aws.crossplane.io resources (#19029)
* feat(health): support for iam.aws.crossplane.io resources

Signed-off-by: Jellyfrog <Jellyfrog@users.noreply.github.com>

* feat(health): support for bucket s3.aws.crossplane.io resource

Signed-off-by: Jellyfrog <Jellyfrog@users.noreply.github.com>

---------

Signed-off-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2024-07-12 10:46:06 -04:00
Blake Pettersson
da7467bea7 chore: add issue template for proposing new dev-tools (#19001)
A while back @csantanapr proposed to add devcontainers to the Argo CD
tree (see #17286). After a few rounds in the contributors' meeting it
was proposed to add an issue template, so that for tools like this
there would at least be two maintainers that commit to keeping it
up-to-date.

See [proposal](https://docs.google.com/document/d/1mvfnaeCQgVpCixHchjMPtoW5WdtzLAp8cIr3nWFUSiU/edit)
for context.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-07-11 18:25:29 +02:00
dependabot[bot]
10ce884f7c chore(deps): bump actions/setup-go from 5.0.1 to 5.0.2 (#19020)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 5.0.1 to 5.0.2.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](cdcb360436...0a12ed9d6a)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-11 11:17:36 -04:00
Jellyfrog
9712642eea fix: filename typo (#19028) 2024-07-11 14:29:19 +00:00
dependabot[bot]
79e43e85ab chore(deps): bump library/golang in /test/container (#19021)
Bumps library/golang from `e94e015` to `a7c0d04`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-11 10:07:51 +03:00
dependabot[bot]
f7e7c2fc44 chore(deps): bump actions/setup-node from 4.0.2 to 4.0.3 (#19008)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.2 to 4.0.3.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](60edb5dd54...1e60f620b9)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 21:08:16 -04:00
appiepollo14
de76937242 Fixes https://github.com/argoproj/argo-cd/issues/18845 (#18854)
Signed-off-by: asjervanasten <asjer94@live.com>
2024-07-10 16:09:54 +00:00
dependabot[bot]
57baaad030 chore(deps): bump library/node from 22.4.0 to 22.4.1 in /ui-test (#19007)
Bumps library/node from 22.4.0 to 22.4.1.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 11:11:01 +03:00
dependabot[bot]
2b340f7139 chore(deps): bump bitnami/kubectl in /test/container (#19005)
Bumps bitnami/kubectl from `225dae6` to `dc190b7`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 11:08:20 +03:00
dependabot[bot]
fdf05670aa chore(deps): bump library/node from 22.4.0 to 22.4.1 in /test/container (#19006)
Bumps library/node from 22.4.0 to 22.4.1.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 11:07:59 +03:00
Andrii Korotkov
69908ceadd chore: Fix comparison_with_nothing_ms (#18923) (#18975)
The timing started before reconciliation timing started including get from the queue, leading to very big times reported, not making sense for what's actually going on.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-07-09 21:15:10 -04:00
Ishita Sequeira
19e3c1ae49 fix: pass refSources when calling GetAppDetails (#18962)
* Get refSources when calling GetAppDetails

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix lint errors

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix unit tests

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix unit tests

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

---------

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-07-09 10:42:54 -04:00
Gergely Fábián
aa2837deac chore: bump go version to 1.22.5 (#18997)
Signed-off-by: Gergely Fábián <gergo.fb@gmail.com>
2024-07-09 15:08:41 +03:00
github-actions[bot]
9347d8d587 [Bot] docs: Update Snyk reports (#18967)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-07-08 14:44:46 +00:00
dependabot[bot]
c69dd943bc chore(deps): bump actions/upload-artifact from 4.3.3 to 4.3.4 (#18978)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.3 to 4.3.4.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](65462800fd...0b2256b8c0)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-08 10:33:56 -04:00
dependabot[bot]
af1217ffad chore(deps): bump actions/download-artifact from 4.1.7 to 4.1.8 (#18979)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4.1.7 to 4.1.8.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](65a9edc588...fa0a91b85d)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-08 10:33:33 -04:00
dependabot[bot]
a071f93b71 chore(deps-dev): bump @types/node from 20.14.9 to 20.14.10 in /ui-test (#18977)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.14.9 to 20.14.10.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-08 14:10:29 +03:00
dependabot[bot]
ddb809f3ce chore(deps): bump bitnami/kubectl in /test/container (#18976)
Bumps bitnami/kubectl from `031d565` to `225dae6`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-08 14:08:19 +03:00
dependabot[bot]
b9099935bc chore(deps): bump github.com/rs/cors from 1.9.0 to 1.11.0 (#18963)
Bumps [github.com/rs/cors](https://github.com/rs/cors) from 1.9.0 to 1.11.0.
- [Commits](https://github.com/rs/cors/compare/v1.9.0...v1.11.0)

---
updated-dependencies:
- dependency-name: github.com/rs/cors
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-05 21:10:54 +00:00
dependabot[bot]
fd677c6570 chore(deps): bump docker/build-push-action from 6.2.0 to 6.3.0 (#18933)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.2.0 to 6.3.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](15560696de...1a162644f9)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-05 11:16:24 -04:00
dependabot[bot]
91c935b6d8 chore(deps): bump docker/setup-buildx-action from 3.0.0 to 3.4.0 (#18949)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.0.0 to 3.4.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](f95db51fdd...4fd812986e)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-05 11:14:45 -04:00
david-wu-octopus
6db9186b58 fix(cli): Get Redis password from secret in loadClusters() (#18951)
* Get Redis password from secret in `loadClusters()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* feat: support redis password in admin stats command

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* Simplify code

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

---------

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
Signed-off-by: pashakostohrys <pavel@codefresh.io>
Co-authored-by: pashakostohrys <pavel@codefresh.io>
2024-07-05 08:17:53 +00:00
dependabot[bot]
5c6c0c8c4f chore(deps): bump bitnami/kubectl in /test/container (#18950)
Bumps bitnami/kubectl from `a9e1c14` to `031d565`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-05 10:07:11 +03:00
Alexandre Gaudreault
a47243a935 fix(appset): missing permissions (#18829) (#18943) 2024-07-04 10:33:46 -04:00
Andrii Korotkov
b0024d145b chore: Add more logs with timing information to application controller [#18923] (#18926)
Closes #18923
There are some gaps in debugging information for long reconciliations. Fill in a lot of those gaps by adding more debug logs with timing information about different code execution steps.
Also, fix a flaky test in app_test.go.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-07-04 13:18:18 +03:00
dependabot[bot]
cc250aef32 chore(deps): bump library/golang in /test/container (#18938)
Bumps library/golang from `e763c65` to `e94e015`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-04 13:05:57 +03:00
dependabot[bot]
f8966d837f chore(deps): bump library/node in /test/container (#18937)
Bumps library/node from `6507334` to `2558f19`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-04 12:08:40 +03:00
dependabot[bot]
4653a9b150 chore(deps): bump bitnami/kubectl in /test/container (#18939)
Bumps bitnami/kubectl from `3f6d478` to `a9e1c14`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-04 11:13:48 +03:00
dependabot[bot]
1bf2b7148b chore(deps): bump library/redis in /test/container (#18936)
Bumps library/redis from `9b68bd6` to `fb534a3`.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-04 11:12:34 +03:00
dependabot[bot]
21a64d3a6a chore(deps): bump library/node from 6507334 to 2558f19 in /ui-test (#18931)
Bumps library/node from `6507334` to `2558f19`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-04 11:12:15 +03:00
Michael Crenshaw
14ae4c43d9 docs: faq for 'field not declared in schema' (#18924)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-03 19:53:21 -04:00
Andrii Korotkov
79b18e03dc docs: Update health checks customizations documentation to use new format - Closes [#6175] (#18512)
Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-07-03 16:41:53 +03:00
dependabot[bot]
866b248df8 chore(deps): bump github.com/go-openapi/loads from 0.21.2 to 0.22.0 (#18911)
Bumps [github.com/go-openapi/loads](https://github.com/go-openapi/loads) from 0.21.2 to 0.22.0.
- [Commits](https://github.com/go-openapi/loads/compare/v0.21.2...v0.22.0)

---
updated-dependencies:
- dependency-name: github.com/go-openapi/loads
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-03 07:09:04 -04:00
Alan Clucas
20b5969b8f fix (dev): remove ubuntu user from test dockerimage (#18917)
Fixes #18773

In ubuntu 23.04 images and higher there is a default `ubuntu` user
with UID 1000. This is [by
design](https://bugs.launchpad.net/cloud-images/+bug/2005129) and
won't be reverted. The image was bumped to 24.04 in #17976.

Often a linux user will also be running as UID 1000, so the test image
creator will attempt to create the `user` user as that same UID, which
fails.

This change uses the workaround suggesed in
https://bugs.launchpad.net/cloud-images/+bug/2005129/comments/2 which
is a minimal change and "works for me".

We could attempt to use the `ubuntu` user instead of creating our own
user, and switch it's UID. This is a more invasive change and seems
more prone to not working, hence doing this.

Signed-off-by: Alan Clucas <alan@clucas.org>
2024-07-03 13:42:57 +03:00
dependabot[bot]
99c243cf81 chore(deps): bump gitpod/workspace-full from 8dd34e7 to fbff2dc (#18909)
Bumps gitpod/workspace-full from `8dd34e7` to `fbff2dc`.

---
updated-dependencies:
- dependency-name: gitpod/workspace-full
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-03 06:39:16 -04:00
dependabot[bot]
6061fd8d0c chore(deps): bump SonarSource/sonarqube-scan-action from 2.2.0 to 2.3.0 (#18913)
Bumps [SonarSource/sonarqube-scan-action](https://github.com/sonarsource/sonarqube-scan-action) from 2.2.0 to 2.3.0.
- [Release notes](https://github.com/sonarsource/sonarqube-scan-action/releases)
- [Commits](540792c588...aecaf43ae5)

---
updated-dependencies:
- dependency-name: SonarSource/sonarqube-scan-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-03 06:38:33 -04:00
dependabot[bot]
2e7ebf77d5 chore(deps): bump library/node from 22.3.0 to 22.4.0 in /ui-test (#18910)
Bumps library/node from 22.3.0 to 22.4.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-03 10:47:08 +03:00
dependabot[bot]
efb394fb86 chore(deps): bump library/golang in /test/container (#18914)
Bumps library/golang from 1.22.4 to 1.23rc1.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-03 10:44:30 +03:00
dependabot[bot]
48a0dad326 chore(deps): bump library/node from 22.3.0 to 22.4.0 in /test/container (#18915)
Bumps library/node from 22.3.0 to 22.4.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-03 10:44:12 +03:00
dependabot[bot]
f02d8f4fdf chore(deps): bump library/redis in /test/container (#18916)
Bumps library/redis from `e422889` to `9b68bd6`.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-03 10:43:58 +03:00
david-wu-octopus
18ccd7a667 feat: Add flag --sso-launch-browser to login and relogin commands (issue #16208) (#18865)
* Add flag `--sso-launch-browser` to `login` and `relogin` commands

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Run `make codegen`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add `ssoBrowserFlow()` and refactor `oauth2Login()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Update references to "default browser" to "system default browser"

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Add test case for `ssoBrowserFlow()` with `ssoLaunchBrowser` as `false`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Run `make codegen`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Update `Test_ssoBrowserFlow_ssoLaunchBrowser_false()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Fix typo in unit test

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Fix linting issues

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Rename `ssoBrowserFlow()` to `ssoAuthFlow()`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

---------

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-07-03 07:26:24 +00:00
Michael Crenshaw
b96be4c5e4 fix(ui): incorrect notifications annotation regex (#18901)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-02 14:44:24 -06:00
Michael Crenshaw
5fffcfaf6b fix: update static schemas (#18891)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-07-02 19:37:32 +00:00
Zeus Arias Lucero
74c09a563e docs: Add Kustomize options to application.yaml (#18866)
* docs: Add Kustomize options to application.yaml

Signed-off-by: Zeus Arias Lucero <33123154+zeusal@users.noreply.github.com>

* Update application.yaml

Signed-off-by: Zeus Arias Lucero <33123154+zeusal@users.noreply.github.com>

* Update docs/operator-manual/application.yaml

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* Update docs/operator-manual/application.yaml

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Zeus Arias Lucero <33123154+zeusal@users.noreply.github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-02 19:05:01 +00:00
Helias Rodrigues
3c5ff60759 Update USERS.md (#18898)
Add CloudScript Argocd User company.

Signed-off-by: Helias Rodrigues <helias.rodrigues@cloudscript.com.br>
2024-07-02 18:33:21 +00:00
Ishita Sequeira
9a8f3cd6b0 remove unwanted updating of source-position in app set command (#18887)
Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-07-02 17:12:10 +00:00
Harshita Sao
12b626b82a chore: changed the scorecard badge link to the standard format (#18878)
Signed-off-by: harshitasao <harshitasao@gmail.com>
2024-07-02 11:54:46 -04:00
dependabot[bot]
a2e6434811 chore(deps): bump github.com/coreos/go-oidc/v3 from 3.6.0 to 3.10.0 (#18882)
Bumps [github.com/coreos/go-oidc/v3](https://github.com/coreos/go-oidc) from 3.6.0 to 3.10.0.
- [Release notes](https://github.com/coreos/go-oidc/releases)
- [Commits](https://github.com/coreos/go-oidc/compare/v3.6.0...v3.10.0)

---
updated-dependencies:
- dependency-name: github.com/coreos/go-oidc/v3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-02 11:53:44 -04:00
Cayde6
06b0f957b8 chore(migrate): migrate mockery codegen to use packages(#18579) (#18617)
* chore(migrate): mockery migrate to packages

migrate interface
- remove go:generate
- generate mock

Signed-off-by: Jack-R-lantern <tjdfkr2421@gmail.com>

* chore(migrate: mockery migrate to package

add mockgen stage
- add mockgen command to Makefile
- add generate-mock.sh
- add install mockery to install-codegen-go-tool.sh

Signed-off-by: Jack-R-lantern <tjdfkr2421@gmail.com>

---------

Signed-off-by: Jack-R-lantern <tjdfkr2421@gmail.com>
2024-07-02 10:48:38 -04:00
A S Rakesh Krishna
c6f96d7615 fix(cli): skip printing summary when output mode is set to json/yaml (issue: #18620) (#18797)
* skip printing summary when output mode is set to json/yaml

Signed-off-by: Fluder-Paradyne <121793617+Fluder-Paradyne@users.noreply.github.com>

* add test

Signed-off-by: Fluder-Paradyne <121793617+Fluder-Paradyne@users.noreply.github.com>

* add test

Signed-off-by: Fluder-Paradyne <121793617+Fluder-Paradyne@users.noreply.github.com>

* add check in timeout func

Signed-off-by: Fluder-Paradyne <121793617+Fluder-Paradyne@users.noreply.github.com>

* add test for wide mode

Signed-off-by: Fluder-Paradyne <121793617+Fluder-Paradyne@users.noreply.github.com>

* remove comment

Signed-off-by: Fluder-Paradyne <121793617+Fluder-Paradyne@users.noreply.github.com>

* remove comment and revert un-used parts of changes

Signed-off-by: Fluder-Paradyne <121793617+Fluder-Paradyne@users.noreply.github.com>

* remove comment and revert un-used parts of changes

Signed-off-by: Fluder-Paradyne <121793617+Fluder-Paradyne@users.noreply.github.com>

---------

Signed-off-by: Fluder-Paradyne <121793617+Fluder-Paradyne@users.noreply.github.com>
2024-07-02 10:20:46 +03:00
dependabot[bot]
1d59f46997 chore(deps): bump github.com/bmatcuk/doublestar/v4 from 4.6.0 to 4.6.1 (#18883)
Bumps [github.com/bmatcuk/doublestar/v4](https://github.com/bmatcuk/doublestar) from 4.6.0 to 4.6.1.
- [Release notes](https://github.com/bmatcuk/doublestar/releases)
- [Commits](https://github.com/bmatcuk/doublestar/compare/v4.6.0...v4.6.1)

---
updated-dependencies:
- dependency-name: github.com/bmatcuk/doublestar/v4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-02 09:35:40 +03:00
dependabot[bot]
1de81a4db2 chore(deps-dev): bump typescript from 5.5.2 to 5.5.3 in /ui-test (#18880)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.5.2 to 5.5.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.5.2...v5.5.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-02 09:35:00 +03:00
dependabot[bot]
73bdbb511a chore(deps): bump github.com/casbin/casbin/v2 from 2.77.2 to 2.97.0 (#18862)
* chore(deps): bump github.com/casbin/casbin/v2 from 2.77.2 to 2.97.0

Bumps [github.com/casbin/casbin/v2](https://github.com/casbin/casbin) from 2.77.2 to 2.97.0.
- [Release notes](https://github.com/casbin/casbin/releases)
- [Changelog](https://github.com/casbin/casbin/blob/master/.releaserc.json)
- [Commits](https://github.com/casbin/casbin/compare/v2.77.2...v2.97.0)

---
updated-dependencies:
- dependency-name: github.com/casbin/casbin/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* fixes after version updates

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* tidy

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-07-01 12:58:58 -04:00
Jaeseok Lee
4312bc059f docs: Fix .path to .path.segments go template (#18872)
Signed-off-by: Jaeseok Lee <devsunb@gmail.com>
2024-07-01 10:48:03 -04:00
thecooldrop
eca1f21d64 Fix issue in starting telepresence for remote debugging (#18860)
Signed-off-by: TheCoolDrop <vanio.begic123@gmail.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-07-01 07:23:30 +00:00
dependabot[bot]
dc8be08e0b chore(deps): bump bitnami/kubectl in /test/container (#18863)
Bumps bitnami/kubectl from `e704ebf` to `3f6d478`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-01 10:19:26 +03:00
dependabot[bot]
c3f108f85c chore(deps): bump github.com/alicebob/miniredis/v2 from 2.30.4 to 2.33.0 (#18861)
Bumps [github.com/alicebob/miniredis/v2](https://github.com/alicebob/miniredis) from 2.30.4 to 2.33.0.
- [Release notes](https://github.com/alicebob/miniredis/releases)
- [Changelog](https://github.com/alicebob/miniredis/blob/master/CHANGELOG.md)
- [Commits](https://github.com/alicebob/miniredis/compare/v2.30.4...v2.33.0)

---
updated-dependencies:
- dependency-name: github.com/alicebob/miniredis/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-01 10:14:47 +03:00
pasha-codefresh
1aa898cbb4 feat: support log level in cmp plugin, possibility to trace generated manifest (#18851)
* feat: support log level in cmp plugin, and add possibility to trace generated manifest

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: support log level in cmp plugin, and add possibility to trace generated manifest

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-06-30 15:49:07 -04:00
AvivGuiser
9b3a4d150d feat: add set-finallizer on argocd admin app generate-spec command (#18855)
* added set-finallizer on argocd admin command

Signed-off-by: AvivGuiser <aviv.guiser@placer.ai>

* ran make-codegen

Signed-off-by: AvivGuiser <aviv.guiser@placer.ai>

---------

Signed-off-by: AvivGuiser <aviv.guiser@placer.ai>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-06-30 19:11:21 +00:00
github-actions[bot]
5a034f2261 [Bot] docs: Update Snyk reports (#18856)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-06-30 12:15:03 +03:00
Omer Aplatony
d171d05997 Add ArgoCD version metric (#18852)
Signed-off-by: Omer Aplatony <omerap12@gmail.com>
2024-06-30 12:09:10 +03:00
Yuan Tang
e6a034995c chore: Add Michael to owners (#18849)
Signed-off-by: Yuan Tang <terrytangyuan@gmail.com>
2024-06-29 12:24:37 -04:00
Michael Crenshaw
3d3620e6a0 fix(controller): bad server-side diffs (#18213) (#18840)
* fix(controller): bad server-side diffs (#18213)

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* use upstream commit

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-29 11:03:36 -04:00
adam tombleson
51c8013d9c docs: update notifications secret name (#18850)
All other examples reference `argocd-notifications-secret`, this seems to be the correct name

Signed-off-by: adam tombleson <rekarnar@gmail.com>
2024-06-28 20:09:54 -06:00
Andreas Lindhé
0a14ef9b25 docs: Fix bad cluster generator parameters (#17770)
* docs: Fix bad cluster generator parameters

The previous variant used parameters `cluster` and `url`, which are
nowhere to be found (I'm guessing it's from an old version of the
Cluster generator). This change replaces them with the current
`.nameNormalized` and `.server` parameters.

Signed-off-by: Andreas Lindhé <andreas@lindhe.io>

* docs: Add reference to cluster generator docs

Signed-off-by: Andreas Lindhé <andreas@lindhe.io>

---------

Signed-off-by: Andreas Lindhé <andreas@lindhe.io>
2024-06-28 17:36:56 -06:00
Javier Solana
8ca96a9d0e add cabify (#18842)
Signed-off-by: Javier Solana <javiersolanahuertas@gmail.com>
2024-06-28 10:01:28 +02:00
dependabot[bot]
2988401c47 chore(deps): bump docker/build-push-action from 6.1.0 to 6.2.0 (#18834)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.1.0 to 6.2.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](31159d49c0...15560696de)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-27 13:33:49 -04:00
Jae Ryong Song
dafb37c88d fix: docs version regex changed (#18756)
Signed-off-by: jasong <jasong@student.42seoul.kr>
2024-06-26 19:23:14 +05:30
Dhruvang Makadia
95be90b5f9 fix: Process webhook refresh in background to not block the request (#14269) (#18173)
Signed-off-by: dhruvang1 <dhruvang1@users.noreply.github.com>
2024-06-26 19:20:09 +05:30
dependabot[bot]
428da83bde chore(deps): bump library/registry in /test/container (#18746)
Bumps library/registry from `4fac7a8` to `38d1c15`.

---
updated-dependencies:
- dependency-name: library/registry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-26 16:22:13 +03:00
dependabot[bot]
5355430bce chore(deps-dev): bump typescript from 5.4.5 to 5.5.2 in /ui-test (#18751)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.4.5 to 5.5.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.4.5...v5.5.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-26 16:21:36 +03:00
dependabot[bot]
81151d5fc0 chore(deps-dev): bump @types/node from 20.14.8 to 20.14.9 in /ui-test (#18823)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.14.8 to 20.14.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-26 16:19:53 +03:00
dependabot[bot]
ee2dc25ff1 chore(deps): bump chromedriver from 126.0.3 to 126.0.4 in /ui-test (#18822)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 126.0.3 to 126.0.4.
- [Commits](https://github.com/giggio/node-chromedriver/compare/126.0.3...126.0.4)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-26 16:19:32 +03:00
Yonatan Sasson
999b75fdc0 fix: Handle nil health check in post-delete hooks (#18270) (#18767)
* fix: Handle nil health check in post-delete hooks

Signed-off-by: Yonatan Sasson <yonatanxd7@gmail.com>

* test: Validate deletion of RBAC resources for post-delete hook

Signed-off-by: Yonatan Sasson <yonatanxd7@gmail.com>

* Update appcontroller_test.go

Signed-off-by: Yonatan Sasson <107778824+Yuni-sa@users.noreply.github.com>

---------

Signed-off-by: Yonatan Sasson <yonatanxd7@gmail.com>
Signed-off-by: Yonatan Sasson <107778824+Yuni-sa@users.noreply.github.com>
2024-06-26 08:53:09 -04:00
Alexy Mantha
6f84afca3b feat(appset): make K8s client configurable (#18623)
Signed-off-by: Alexy Mantha <alexy@mantha.dev>
2024-06-26 08:47:05 -04:00
Atıl Sensalduz
ad5f6724b5 chore: add Hazelcast to USERS.md (#18824)
Signed-off-by: atilsensalduz <atil.eren@outlook.com>
2024-06-26 12:26:32 +02:00
Orhan Gazi Dizdaroğlu
b33922fafb chore: add Getir to USERS.md (#18820)
Signed-off-by: Gazi Dizdaroğlu <orhan@gazidizdaroglu.com>
2024-06-25 23:50:56 +03:00
Alexandre Gaudreault
f358e8ddba fix(webhook): bitbucket and azure not triggering refresh (#18289) (#18765)
* fix(webhook): bitbucket and azure webhook not triggering refresh

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* update unit test

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix merge

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* adjust logic for reposerver using ls-remote

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-06-25 18:16:55 +00:00
ymktmk
ba0ee5d01f fix: argo checkbox (#18793)
Signed-off-by: ymktmk <ymktmk.tt@gmail.com>
2024-06-25 13:24:22 -04:00
Michael Crenshaw
0183aac005 Revert "fix(appset): keep reconciling even when params error occurred (#17062)" (#18781)
This reverts commit 86369ca71d.

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-25 20:21:18 +03:00
dependabot[bot]
56c12db389 chore(deps-dev): bump @types/node from 20.14.7 to 20.14.8 in /ui-test (#18784)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.14.7 to 20.14.8.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-25 19:18:19 +03:00
dependabot[bot]
73984bdcab chore(deps): bump chromedriver from 126.0.2 to 126.0.3 in /ui-test (#18785)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 126.0.2 to 126.0.3.
- [Commits](https://github.com/giggio/node-chromedriver/compare/126.0.2...126.0.3)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-25 19:18:06 +03:00
dependabot[bot]
03acafef1c chore(deps): bump library/node in /test/container (#18786)
Bumps library/node from `5e4044f` to `b98ec1c`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-25 19:17:48 +03:00
dependabot[bot]
a5805416df chore(deps): bump library/golang in /test/container (#18787)
Bumps library/golang from `c2010b9` to `a66eda6`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-25 19:17:28 +03:00
dependabot[bot]
6b433e3bd1 chore(deps): bump library/golang from c2010b9 to a66eda6 (#18789)
Bumps library/golang from `c2010b9` to `a66eda6`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-25 19:17:03 +03:00
github-actions[bot]
13b70c56ce [Bot] docs: Update Snyk reports (#18772)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-06-25 08:56:15 -07:00
dependabot[bot]
b92e00d598 chore(deps): bump github.com/hashicorp/go-retryablehttp (#18805)
Bumps [github.com/hashicorp/go-retryablehttp](https://github.com/hashicorp/go-retryablehttp) from 0.7.4 to 0.7.7.
- [Changelog](https://github.com/hashicorp/go-retryablehttp/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/go-retryablehttp/compare/v0.7.4...v0.7.7)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/go-retryablehttp
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-25 10:16:15 -04:00
dependabot[bot]
f11de952a6 chore(deps): bump tj-actions/changed-files from 44.5.4 to 44.5.5 (#18809)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 44.5.4 to 44.5.5.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](cc3bbb0c52...cc733854b1)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-25 10:15:27 -04:00
Jessie Teng
41b8e4406b fix(ui): break external links to lines for each (#17679) (#18768)
* break external links to lines for each

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>

* update for better layout css style

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>

---------

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>
Co-authored-by: Jessie Teng <jessie.teng@fmr.com>
2024-06-25 00:07:06 +03:00
Justin Marquis
587c5ba1c6 chore: provide a better example of using cosign (#18803)
Signed-off-by: Justin Marquis <justin@akuity.io>
2024-06-24 20:47:36 +00:00
adam tombleson
b35acd4ffe docs: fix minor typo on ingress page (#18799)
Signed-off-by: adam tombleson <rekarnar@gmail.com>
2024-06-24 16:29:48 -04:00
Keith Chong
ad6508b9de fix: Bug in edit support in Sources tab; Input to loader (#17588) (#18800) 2024-06-24 13:08:16 -04:00
dependabot[bot]
c95d4eef58 chore(deps): bump library/node from 5e4044f to b98ec1c in /ui-test (#18790)
Bumps library/node from `5e4044f` to `b98ec1c`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-24 10:50:58 -04:00
dependabot[bot]
25e3a61938 chore(deps): bump docker/build-push-action from 6.0.2 to 6.1.0 (#18791)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.0.2 to 6.1.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](f6010ea701...31159d49c0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-24 09:29:37 -04:00
dependabot[bot]
9d72f1ec5c chore(deps): bump tj-actions/changed-files from 44.5.3 to 44.5.4 (#18792)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 44.5.3 to 44.5.4.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](eaf854ef0c...cc3bbb0c52)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-24 09:29:04 -04:00
Michael Crenshaw
a624c90845 fix(server): could not find source for metadata revision (#18744) (#18763)
* fix(server): could not find source for metadata revision (#18744)

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* lint

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* the linter behaves poorly

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix test

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* share logic with chart endpoint

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* more intuitive check

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* remove debug line

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-23 21:08:17 -04:00
Matthieu MOREL
3dcddee199 chore: enable float-compare rule from testifylint (#18721)
* chore: enable float-compare rule from testifylint

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update managed_fields_test.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update managed_fields_test.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

---------

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-21 14:16:32 -04:00
dependabot[bot]
1e916d9bb9 chore(deps): bump tj-actions/changed-files from 44.5.2 to 44.5.3 (#18737)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 44.5.2 to 44.5.3.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](d6babd6899...eaf854ef0c)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-21 14:15:15 -04:00
dependabot[bot]
f655b0b2df chore(deps): bump softprops/action-gh-release from 2.0.5 to 2.0.6 (#18736)
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.0.5 to 2.0.6.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](69320dbe05...a74c6b72af)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-21 14:14:12 -04:00
dependabot[bot]
cbb4c50018 chore(deps): bump peter-evans/create-pull-request from 6.0.5 to 6.1.0 (#18727)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 6.0.5 to 6.1.0.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](6d6857d369...c5a7806660)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-21 14:13:44 -04:00
dependabot[bot]
e98d3b2a87 chore(deps): bump docker/build-push-action from 6.0.0 to 6.0.2 (#18749)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.0.0 to 6.0.2.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](c382f710d3...f6010ea701)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-21 09:23:56 -04:00
dependabot[bot]
f7d854ec9e chore(deps-dev): bump @types/node from 20.14.6 to 20.14.7 in /ui-test (#18750)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.14.6 to 20.14.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-21 09:23:16 -04:00
Toni Grabulosa
d2436d9f4d Update USERS.md (#18743)
Signed-off-by: Toni Grabulosa <71640433+toniGrabulosa@users.noreply.github.com>
2024-06-20 18:25:09 +03:00
dependabot[bot]
1aeed6a6b1 chore(deps-dev): bump @types/node from 20.14.4 to 20.14.6 in /ui-test (#18738)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.14.4 to 20.14.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-20 11:57:28 +03:00
dependabot[bot]
c83a988009 chore(deps): bump chromedriver from 126.0.1 to 126.0.2 in /ui-test (#18739)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 126.0.1 to 126.0.2.
- [Commits](https://github.com/giggio/node-chromedriver/compare/126.0.1...126.0.2)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-20 11:57:13 +03:00
Tim Schrumpf
331944aa6a fix(docs): fix example in userguide/diffing (#18730)
Signed-off-by: tillepille <github@tillepille.io>
2024-06-19 19:23:25 +03:00
Blake Pettersson
e6dc415d34 fix(ui): set project to empty string if undefined (#18732)
There are some situations where the project will be `undefined`. When
that happens, attempting to delete a repo won't be possible, since
the backend will be looking for a project with the literal name
`undefined`. To fix this, set an empty string for `undefined|null`
values.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-06-19 19:22:46 +03:00
Alexandre Gaudreault
6bc0b29dfe test(cli): unstable unit test caused by unsorted array (#18722)
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-06-18 19:24:12 +00:00
github-actions[bot]
7c7af4040a chore: Bump version in master (#18717)
* Bump version in master

Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update SECURITY-INSIGHTS.yml

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: ishitasequeira <46771830+ishitasequeira@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-18 15:57:01 +00:00
Michael Crenshaw
ff1d37fae6 fix(ci): use commit hash instead of release number in security insights (#18718)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-18 15:35:26 +00:00
Alexandre Gaudreault
70755aa3c5 feat(cli): add cmd to preview generated apps of appsets (#10895) (#16781)
* feat(cli): add cmd to preview generated apps

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* fix build

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* fix local proto gen

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* dry run client

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* fix: allow to run codegen outside GOPATH

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* clientgen

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* openapigen

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* remove ensure-gopath

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* fix tests and templatePatch

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* fix build

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* convert to interfaces

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* codegen

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* extract common code

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* use appset params in server

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* codegen

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix test build

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* unit tests

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* move test to new package

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* move to correct folders

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix build

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* review

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* lint

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix test

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix lint

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* auto generate mocks

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* better error handling

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* more docs

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* more docs

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* lint

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-18 15:15:12 +00:00
Michael Crenshaw
5bf93d4955 docs: don't populate tested versions on latest (#18719)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-18 14:54:51 +00:00
dependabot[bot]
c88d3a9ab4 chore(deps): bump docker/build-push-action from 5.4.0 to 6.0.0 (#18708)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.4.0 to 6.0.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](ca052bb54a...c382f710d3)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-18 10:06:49 -04:00
Matthieu MOREL
04edbe90d1 chore: enable error-is-as rule from testifylint linter (#18710)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-18 10:05:03 -04:00
dependabot[bot]
029b5acd54 chore(deps): bump ws from 8.17.0 to 8.17.1 in /ui-test (#18711)
Bumps [ws](https://github.com/websockets/ws) from 8.17.0 to 8.17.1.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/8.17.0...8.17.1)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-18 14:13:52 +03:00
dependabot[bot]
3f0d8d5629 chore(deps): bump ws from 8.17.0 to 8.17.1 in /ui (#18712)
Bumps [ws](https://github.com/websockets/ws) from 8.17.0 to 8.17.1.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/8.17.0...8.17.1)

---
updated-dependencies:
- dependency-name: ws
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-18 14:13:32 +03:00
dependabot[bot]
fe965ed14d chore(deps): bump library/redis in /test/container (#18707)
Bumps library/redis from `f5ef9e2` to `e422889`.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-18 10:46:24 +03:00
dependabot[bot]
e5eddc3b46 chore(deps): bump library/golang in /test/container (#18706)
Bumps library/golang from `4950c1c` to `c2010b9`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-18 10:44:42 +03:00
dependabot[bot]
3fb9d9551d chore(deps-dev): bump @types/node from 20.14.2 to 20.14.4 in /ui-test (#18705)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.14.2 to 20.14.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-18 10:44:07 +03:00
dependabot[bot]
50f889c8b2 chore(deps): bump library/golang from 4950c1c to c2010b9 (#18704)
Bumps library/golang from `4950c1c` to `c2010b9`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-18 10:43:27 +03:00
Yonatan Sasson
f8e2ca717c fix: JSON unmarshaling error handling and nil return (#18700)
* fix: JSON unmarshaling error handling and nil return in ExecuteHealthLua function

Signed-off-by: Yonatan Sasson <yonatanxd7@gmail.com>

* Update util/lua/lua.go

Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Yonatan Sasson <yonatanxd7@gmail.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-06-18 02:41:51 +00:00
yyzxw
9f0d2a8fb4 fix: docs site version selector broken (#18378)
Signed-off-by: xiaowu.zhu <xiaowu.zhu@daocloud.io>
Signed-off-by: root <root@daocloud.io>
2024-06-17 21:52:08 -04:00
Matthieu MOREL
8f281996c6 chore: enable require-error from testifylint on cmpserver and reposerver folders (#18702)
* chore: enable require-error from testifylint on cmpserver and reposerver folders

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update app_k8s_events_test.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

---------

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-17 21:35:35 -04:00
Siddhesh Ghadi
4c6ad9dcc1 feat: Add labels on Application's k8s events (#11381) (#18160)
* Add labels on Application's k8s events

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

* Fix typo

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

* Add new cm keys & doc

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

* Fix typo

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

* correct rebase changes

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

* Fix linting

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

---------

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>
2024-06-17 13:27:54 -04:00
Matthieu MOREL
d7fc1bf2d7 chore: enable require-error rule from errorlint linter on controller folder (#18690)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
Signed-off-by: pasha-codefresh <pavel@codefresh.io>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-06-17 13:05:27 +00:00
Matthieu MOREL
4494fe5d3d chore: enable require-error rule from errorlint linter on applicationset folder (#18689)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
Signed-off-by: pasha-codefresh <pavel@codefresh.io>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-06-17 09:51:06 +00:00
Matthieu MOREL
89a0cc33c5 chore: enable require-error rule from errorlint linter on pkg folder (#18691)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-17 11:54:22 +03:00
dependabot[bot]
e5c0526de4 chore(deps): bump library/golang from 0f76912 to a1dc408 (#18655)
Bumps library/golang from `0f76912` to `a1dc408`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-17 10:29:27 +03:00
dependabot[bot]
af6021542a chore(deps): bump library/golang in /test/container (#18653)
Bumps library/golang from `0f76912` to `a1dc408`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-17 10:29:00 +03:00
dependabot[bot]
1fd2f627e4 chore(deps): bump library/redis in /test/container (#18652)
Bumps library/redis from `01afb31` to `2cf43d9`.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-17 09:53:54 +03:00
dependabot[bot]
d57800fbae chore(deps): bump chromedriver from 126.0.0 to 126.0.1 in /ui-test (#18699)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 126.0.0 to 126.0.1.
- [Commits](https://github.com/giggio/node-chromedriver/compare/126.0.0...126.0.1)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-17 09:53:00 +03:00
Matthieu MOREL
130c0f4f2e chore: missing qtar in go exclusions (#18698)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-16 23:21:45 +00:00
dependabot[bot]
52b1b434a3 chore(deps): bump tj-actions/changed-files from 42.0.2 to 44.5.2 (#18461)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 42.0.2 to 44.5.2.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](90a06d6ba9...d6babd6899)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-15 21:26:20 -04:00
github-actions[bot]
b3b090b086 [Bot] docs: Update Snyk reports (#18692)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-06-16 00:31:59 +00:00
Matthieu MOREL
c556cf7ea5 chore: enable require-error rule from errorlint linter on server folder (#18687)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-15 19:13:40 -04:00
Michael Crenshaw
2aefa9c4b2 chore(deps): bump gitops engine (#18679)
* chore(deps): bump gitops engine

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* switch back to upstream

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-15 19:54:55 +00:00
Shady Rafehi
336cc29f14 feat(reposerver): Skip calling git fetch if commit to checkout exists locally (#18657)
* Skip fetch if revision to check out exists locally

Signed-off-by: Shady Rafehi <shady@canva.com>

* Test reposerver/repository.checkoutRevision

Signed-off-by: Shady Rafehi <shady@canva.com>

* Test client.IsRevisionPresent

Signed-off-by: Shady Rafehi <shady@canva.com>

* Signoff

Signed-off-by: Shady Rafehi <shady@canva.com>

* Update reposerver/repository/repository.go

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Shady Rafehi <shady@canva.com>

---------

Signed-off-by: Shady Rafehi <shady@canva.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-15 15:10:13 -04:00
Michael Crenshaw
dbb9bc8f92 chore: add codecov config to CI approvers (#18686)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-15 18:57:39 +00:00
Michael Crenshaw
1ecd39741f chore: ignore mocks in codecov (#18685)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-15 18:54:26 +00:00
Matthieu MOREL
f770a2a73a chore: enable require-error rule from errorlint linter on test folder (#18684)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-15 18:54:09 +00:00
Michael Crenshaw
ad461c2fe1 chore(deps): bump Kustomize from 3.14.4 to 3.15.2 (#18680)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-15 14:47:19 -04:00
Matthieu MOREL
38d6db6e69 chore: enable require-error rule from errorlint linter on cmd folder (#18683)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-15 13:52:21 -04:00
Matthieu MOREL
eac08dcf79 chore: extend require-error rule from testifylint (#18681)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-15 13:51:18 -04:00
Michael Crenshaw
e3fa52dd83 chore: bump version (#18677)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-15 00:44:19 +00:00
Michael Crenshaw
cc700df89b chore(ci): only test four latest k8s versions (#18676)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-14 23:42:37 +00:00
Matthieu MOREL
0d1d1a1b18 chore: extend require-error rule from testifylint (#18675)
* chore: extend require-error rule from testifylint

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update helm_test.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

---------

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-14 17:40:33 -04:00
Michael Crenshaw
2c0cc027c2 docs(cli): remove docs for non-existing argocd app set flags (#18671) (#18673)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-14 17:35:58 -04:00
Michael Crenshaw
170d5431d3 chore(deps): bump library/golang from 0f76912 to a1dc408 (#18674)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-14 17:29:42 -04:00
dependabot[bot]
57965576f0 chore(deps): bump library/node in /test/container (#18651)
Bumps library/node from `f73cc32` to `5e4044f`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-14 14:16:02 -04:00
dependabot[bot]
57ee536f5f chore(deps): bump library/node from f73cc32 to 5e4044f (#18654)
Bumps library/node from `f73cc32` to `5e4044f`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-14 14:15:51 -04:00
dependabot[bot]
1405413ac9 chore(deps): bump library/node from f73cc32 to 5e4044f in /ui-test (#18656)
Bumps library/node from `f73cc32` to `5e4044f`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-14 14:15:41 -04:00
Suraj yadav
2d5c59c94e fix(ui): dropdown-fixed in logs (#18470)
* dropdown-fixed

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* removed-extra-css

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
2024-06-14 12:37:46 -04:00
Josh Soref
48eb7f3608 docs: Improve the FAQ (#12039) (#18645)
* docs: Fix whitespace around after open paren in FAQ

Signed-off-by: Josh Soref <jsoref@gmail.com>

* docs: Fix trailing whitespace

Signed-off-by: Josh Soref <jsoref@gmail.com>

* docs: Fix grammar in FAQ wrt redis auth

Signed-off-by: Josh Soref <jsoref@gmail.com>

* docs: Fix FAQ markdown for turning off redis auth

Signed-off-by: Josh Soref <jsoref@gmail.com>

* docs: Start talking about manifest generation

Signed-off-by: Josh Soref <jsoref@gmail.com>

---------

Signed-off-by: Josh Soref <jsoref@gmail.com>
2024-06-14 14:18:21 +00:00
Ishita Sequeira
03e6f8ae3f chore: update docs and skip gpg tests on appset (#18637)
Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-06-14 14:11:52 +00:00
Blake Pettersson
e02519467c fix: minor ui fixes for repositories (#18648)
* minor fixes

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* fix: remove double import

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-06-14 09:20:54 -04:00
Matthieu MOREL
c9ea5b13d2 chore: extend require-error rule from testifylint (#18658)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-14 09:15:31 -04:00
dependabot[bot]
f8557d2586 chore(deps): bump codecov/codecov-action from 4.4.1 to 4.5.0 (#18650)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 4.4.1 to 4.5.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](125fc84a9a...e28ff129e5)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-14 09:13:25 -04:00
dependabot[bot]
1757b7e285 chore(deps): bump SonarSource/sonarqube-scan-action from 2.1.0 to 2.2 (#18649)
Bumps [SonarSource/sonarqube-scan-action](https://github.com/sonarsource/sonarqube-scan-action) from 2.1.0 to 2.2.
- [Release notes](https://github.com/sonarsource/sonarqube-scan-action/releases)
- [Commits](86fe817756...540792c588)

---
updated-dependencies:
- dependency-name: SonarSource/sonarqube-scan-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-14 09:12:40 -04:00
Ishita Sequeira
7efde25890 docs: update multiple sources docs (#18662)
Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-06-14 09:04:16 -04:00
Keith Chong
ae61752c29 feat: Provide Edit support in Sources tab for multi-source app (#17588) (#17890)
Signed-off-by: Keith Chong <kykchong@redhat.com>
2024-06-14 08:46:22 -04:00
Matthieu MOREL
9f1e2e8453 chore: enable gocritic linter (#18633)
* chore: enable gocritic linter

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update settings.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update app.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update grpcproxy.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update grpcproxy.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update util.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update server.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update app_management_ns_test.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update app_management_test.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update path_traversal.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update sessionmanager.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update .golangci.yaml

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

---------

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-13 15:10:00 -04:00
rumstead
9592b84bcb feat: adding gocover to e2e tests (#18130) (#18537)
* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* try putting profiles in different directories

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* does this upload the whole directory?

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* create directories and only run one test

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* shut everything down before uploading coverage

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* don't fail on goreman failure

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* sleep 30

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* always upload server output

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix: implement graceful shutdown for api server

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* Shutdown servers in parallel

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* add noop shutdown function on api server constructor

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* fix waitgroup

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* more attempts to gracefully shut down

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* more tests

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* cleanup

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* revert graceful shutdown work, needs more work

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* more graceful shutdown cleanup

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* lint

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* feat: adding go coverage to e2e tests

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

---------

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
2024-06-13 14:17:07 -04:00
dependabot[bot]
5efa404843 chore(deps): bump library/golang in /test/container (#18625)
Bumps library/golang from `969349b` to `0f76912`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-06-13 10:22:04 -07:00
Raghavi
2040bd6871 fix: Correction in Rocket.chat documentation (#18498)
* Replaced email to SAMAccountName

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>
Signed-off-by: Raghavi Shirur <raghaviss11@gmail.com>

* Replaced email to SAMAccountName

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>
Signed-off-by: Raghavi Shirur <raghaviss11@gmail.com>

* Updated go.mod

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>
Signed-off-by: Raghavi Shirur <raghaviss11@gmail.com>

* Revert "Updated go.mod"

This reverts commit a6466530041cb541fca020024c77047dcfed2ba5.

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>
Signed-off-by: Raghavi Shirur <raghaviss11@gmail.com>

* Updated go.mod

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>
Signed-off-by: Raghavi Shirur <raghaviss11@gmail.com>

* Fixed failing CI

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>
Signed-off-by: Raghavi Shirur <raghaviss11@gmail.com>

* Fixed failing CI

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>
Signed-off-by: Raghavi Shirur <raghaviss11@gmail.com>

* Fixed failing CI

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>
Signed-off-by: Raghavi Shirur <raghaviss11@gmail.com>

* Fixed failing CI

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>
Signed-off-by: Raghavi Shirur <raghaviss11@gmail.com>

---------

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>
Signed-off-by: Raghavi Shirur <raghaviss11@gmail.com>
2024-06-13 12:58:01 -04:00
Keith Chong
9bc1578055 feat: Support Rollback multi-source apps; Follow-up to PR 14124 (#18615)
* feat: Support Rollback multi-source apps; Follow-up to PR 14124

Signed-off-by: Keith Chong <kykchong@redhat.com>

* Common up code

Signed-off-by: Keith Chong <kykchong@redhat.com>

---------

Signed-off-by: Keith Chong <kykchong@redhat.com>
2024-06-13 12:53:24 -04:00
Blake Pettersson
7adec6efb2 ci: updated yarn version (#18631)
With the Dependabot Node bump in #18610, the test container no longer
builds due to a change in Yarn version.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-06-13 10:20:24 -04:00
dependabot[bot]
6f76e7130f chore(deps): bump chromedriver from 125.0.3 to 126.0.0 in /ui-test (#18627)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 125.0.3 to 126.0.0.
- [Commits](https://github.com/giggio/node-chromedriver/compare/125.0.3...126.0.0)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-13 10:42:32 +03:00
dependabot[bot]
6232d73c45 chore(deps): bump bitnami/kubectl in /test/container (#18626)
Bumps bitnami/kubectl from `cdca6c1` to `e704ebf`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-13 10:30:29 +03:00
dependabot[bot]
fba3c2eac3 chore(deps): bump library/golang from 969349b to 0f76912 (#18628)
Bumps library/golang from `969349b` to `0f76912`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-13 10:29:35 +03:00
Matthieu MOREL
f7341ae652 chore: enable errorlint linter on cmpserver and reposerver folders (#18629)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-13 10:29:03 +03:00
Matthieu MOREL
311c0599d9 chore: enable require-error rule from testifylint linter (#18621)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-12 21:53:29 -04:00
Matthieu MOREL
f1848f5455 chore: enable errorlint linter on server folder (#18624)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-12 19:43:25 -04:00
Matthieu MOREL
204176a06b chore: enable errorlint linter on applicationset folder (#18618)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-12 16:29:03 -04:00
Suraj yadav
74a420dc61 fix(ui): pod log view dark mode toggle (#18424)
* moon-button-fixed

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* reverted

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* as it is

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
2024-06-12 08:49:39 -04:00
dependabot[bot]
8f280cfdc6 chore(deps): bump braces from 3.0.2 to 3.0.3 in /ui-test (#18584)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-12 11:21:19 +03:00
dependabot[bot]
33df5acd5c chore(deps): bump library/node from 22.2.0 to 22.3.0 (#18611)
Bumps library/node from 22.2.0 to 22.3.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-12 11:17:57 +03:00
dependabot[bot]
6c1f0f8cff chore(deps): bump library/node from 22.2.0 to 22.3.0 in /test/container (#18610)
Bumps library/node from 22.2.0 to 22.3.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-12 11:15:03 +03:00
dependabot[bot]
2c532580b3 chore(deps): bump library/node from 22.2.0 to 22.3.0 in /ui-test (#18609)
Bumps library/node from 22.2.0 to 22.3.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-12 11:14:49 +03:00
Ishita Sequeira
48bdf949a5 feat(appset): appset git generator verifies GPG signatures (#18545)
* feat(appset): appset git generator verifies GPG signatures

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix unit tests

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix generated code

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* add check for signatures in project and fix tests

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix tests

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* add e2e tests

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* address golang ci lint issue

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix golangci lint

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* Address comments

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* rebase and resolve conflicts

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

---------

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-06-12 07:57:25 +00:00
janiskemper
3e2cfb1387 docs: Add Syself to USERS.md (#18593)
Signed-off-by: janiskemper <janis.kemper@syself.com>
2024-06-11 15:33:45 -04:00
Matthieu MOREL
140f17255a chore: enable errorlint linter on controller folder (#18596)
* chore: enable errorlint linter on controller folder

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update cache.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update cache.go

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>

---------

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-11 15:33:22 -04:00
Matthieu MOREL
3160369469 chore: enable compare and nil-compare rules from testifylint linter (#18581)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-11 16:38:35 +00:00
Matthieu MOREL
7cf5ed06d4 chore: enable gofumpt and whitespace linters (#18567)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-11 15:41:55 +00:00
Matthieu MOREL
d7e99224d4 chore: enable errorlint linter on util folder (#18588)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-11 10:42:32 -04:00
dependabot[bot]
355ec75bed chore(deps): bump docker/build-push-action from 5.3.0 to 5.4.0 (#18583)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.3.0 to 5.4.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](2cdde995de...ca052bb54a)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-11 04:43:07 +00:00
Jorge Turrado Ferrero
0e531c956e feat(application-controller): Add support for rollback multi-source applications (#14124)
* feat(application-controller): Add support for rollback multi-source applications

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* regenerate codegen after rebase

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* fix tests

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* fix front linting

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* update test

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* update codegen

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* Update server/application/application.go

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Signed-off-by: Jorge Turrado Ferrero <Jorge_turrado@hotmail.es>

* apply feedback

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* fix errors

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* add support for switching between single and multi

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* fix dereference issue

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* remove unnecesary code

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* Rebase master

Signed-off-by: Jorge Turrado <jorge.turrado@scrm.lidl>

* fix style

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* fix reference

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>

* add a comment

Signed-off-by: Jorge Turrado <jorge.turrado@scrm.lidl>

---------

Signed-off-by: Jorge Turrado <jorge_turrado@hotmail.es>
Signed-off-by: Jorge Turrado Ferrero <Jorge_turrado@hotmail.es>
Signed-off-by: Jorge Turrado <jorge.turrado@scrm.lidl>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-06-10 17:54:07 -04:00
Michael Crenshaw
d8c8300f30 chore: add sonar-project.properties to cd in CODEOWNERS (#18577)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-10 21:41:17 +00:00
Matthieu MOREL
4a01f8a69a chore: enable expected-actual rule from testifylint linter (#18575)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-10 20:33:00 +00:00
Matthieu MOREL
772c31680b chore: enable errorlint linter on cmd folder (#18578)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-10 20:32:45 +00:00
Michael Crenshaw
879cc60c7b chore(ci): ignore test files from sonar monitoring (#18573)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-10 15:36:30 -04:00
Justin Marquis
020881af84 chore(deps): upgrade haproxy to 2.6.17-alpine (#18574)
Signed-off-by: Justin Marquis <justin@akuity.io>
2024-06-10 19:06:22 +00:00
bmopuri
45d68422da fix: InferenceService healthy condition change (#18340)
* fix: InferenceService healthy condition change

With Kerver upgrade to v12.0, Inference graphs and Inference Services can be deployed in raw mode that reduces overall resources that gets created.
Several knative resource dependency has been reduced. There by reduces the number of conditions in the status field as well.

Signed-off-by: Mopuri, Bharath <bharath_mopuri@intuit.com>

* fix: addressed code review comments

Protected new changes with a specific kserve v12 onwards Rawdeployment mode while keeping the existing resource checks as is.

Signed-off-by: Mopuri, Bharath <bharath_mopuri@intuit.com>

* Update resource_customizations/serving.kserve.io/InferenceService/health.lua

Co-authored-by: Rachit Chauhan <rachitchauhan43@gmail.com>
Signed-off-by: bmopuri <bharath.mopuri@gmail.com>

---------

Signed-off-by: Mopuri, Bharath <bharath_mopuri@intuit.com>
Signed-off-by: bmopuri <bharath.mopuri@gmail.com>
Co-authored-by: Mopuri, Bharath <bharath_mopuri@intuit.com>
Co-authored-by: Rachit Chauhan <rachitchauhan43@gmail.com>
2024-06-10 18:25:44 +00:00
rumstead
2547abc82d fix: sonar scanner #18513 (#18559)
* fix: sonar scanning

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* updating action to use sha

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

---------

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-10 16:38:32 +00:00
Matthieu MOREL
32519c70a5 chore: enable error-nil rule from testifylint linter (#18544)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-10 10:38:55 -04:00
Matthieu MOREL
0d153ef253 chore: enable errorlint linter on pkg folder (#18563)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-10 09:20:23 -04:00
Matthieu MOREL
33df2ce698 chore: enable goimports linter (#18564)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-10 09:18:12 -04:00
github-actions[bot]
1d83e65e43 [Bot] docs: Update Snyk reports (#18561)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-06-10 10:02:05 +03:00
Blake Pettersson
4fd478b271 feat: project-scoped repository credential improvements (#18388)
* feat: project-scoped repo cred improvements

Implementation of #18290

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* fix: missed a test

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* wip project key changes

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* test: update mocks

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* test: fix tests

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* fix: equivalence even if project is empty

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* fix: wip delete

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* refactor: remove repositorydb

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* chore: improve logging

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* fix: pass project to getrepository

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* test: fix failing test

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* fix: compare with project secret instead of app secret

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* fix: get repository needs same logic as delete

Need to update the spec accordingly.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* feat: add project flag to repo rm command

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* docs: make codegen

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* test: fix failing test

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* test: more failing tests

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* chore: minor cleanups

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* chore: propagate project from ui

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* test: add new test cases

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* chore: code review, improve formulation

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* refactor: address cr feedback

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-06-07 18:47:55 -07:00
Matthieu MOREL
44b8dc1a4c chore: enable len and empty rules from testifylint linter (#18516)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-06-07 15:12:50 -04:00
Justin Marquis
50745f08e6 chore(deps): upgrade helm to 5.4.2 (#18556)
Signed-off-by: Justin Marquis <justin@akuity.io>
2024-06-07 11:10:42 -07:00
Michael Crenshaw
c4756c53e1 fix(ci): run codegen for docs changes (#18536)
* fix(ci): run codegen for docs changes

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* test docs change

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* revert test change

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-06-07 12:09:50 +00:00
Justin Marquis
37238ab7c3 chore: bump go version to 1.22.4 (#18539)
Signed-off-by: Justin Marquis <justin@akuity.io>
2024-06-07 13:37:06 +02:00
Justin Marquis
d2fddb862f fix: github.com/cloudflare/circl High CVE (#18538)
Signed-off-by: Justin Marquis <justin@akuity.io>
2024-06-07 13:27:07 +02:00
Michael Crenshaw
2077688828 test: fix e2e tests after GHSA-3cqf-953p-h5cp (#18543) 2024-06-06 19:23:15 -04:00
William Parr
8107303398 fix(applicationset): prevent applicationset progressive sync from stalling in pending (#17296)
* fix(applicationset): prevent applicationset progressive sync from stalling in pending

Signed-off-by: wparr-circle <william.parr@circle.com>

* chore: remove out of date misleading comment

Signed-off-by: William Parr <william.parr@circle.com>

* chore: add reflect package removed by merge

Signed-off-by: wparr-circle <william.parr@circle.com>

---------

Signed-off-by: wparr-circle <william.parr@circle.com>
Signed-off-by: William Parr <william.parr@circle.com>
2024-06-06 16:29:15 -04:00
pasha-codefresh
c2647055c2 Merge pull request from GHSA-3cqf-953p-h5cp
* fix: prevent enumerating by cluster name, return exact error for case when cluster exists and not

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix: prevent cluster enumeration by name

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix: prevent cluster enumeration by name

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix linter and add unit test

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix linter and add unit test

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix linter and add unit test

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix linter and add unit test

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix linter and add unit test

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-06-06 11:30:10 +03:00
Blake Pettersson
256d90178b Merge pull request from GHSA-87p9-x75h-p4j2
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-06-06 11:25:55 +03:00
Nicholas Hawkes
60cdd7dde2 docs: update notifications troubleshooting-errors doc with custom secret (#18490)
* Update troubleshooting-errors with custom secret 

Adding section for a custom secret

Signed-off-by: Nicholas Hawkes <hawkesn@gmail.com>

* Update troubleshooting-errors.md

Signed-off-by: Nicholas Hawkes <hawkesn@gmail.com>

---------

Signed-off-by: Nicholas Hawkes <hawkesn@gmail.com>
2024-06-06 10:45:51 +03:00
dependabot[bot]
362b82123e chore(deps): bump bitnami/kubectl in /test/container (#18517)
Bumps bitnami/kubectl from `0aef4af` to `cdca6c1`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-06 10:44:58 +03:00
dependabot[bot]
240c008ef5 chore(deps-dev): bump @types/node from 20.14.1 to 20.14.2 in /ui-test (#18519)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.14.1 to 20.14.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-06 10:44:37 +03:00
Paul Larsen
92b22fd70b Move code around to fix commit attribution. (#18515)
Signed-off-by: Paul Larsen <pnvlarsen@gmail.com>
2024-06-06 00:35:06 +00:00
Pablo Aguilar
e54e45e1fd feat: changes git client to resolve semantic versioning tags (#17566)
* feat: changes git client to resolve semantic versioning tags

Signed-off-by: Pablo Aguilar <pablo.aguilar@outlook.com.br>

* docs: update documentation

Signed-off-by: Pablo Aguilar <pablo.aguilar@outlook.com.br>

* feat: simplify `resolveSemverRevision` method

Signed-off-by: Pablo Aguilar <pablo.aguilar@outlook.com.br>

* chore: add two more test cases

Signed-off-by: Pablo Aguilar <pablo.aguilar@outlook.com.br>

* chore: update `resolveSemverRevision` behavior

Signed-off-by: Pablo Aguilar <pablo.aguilar@outlook.com.br>

* chore: add end to end test

Signed-off-by: Pablo Aguilar <pablo.aguilar@outlook.com.br>

* chore: fix end to end test

Signed-off-by: Pablo Aguilar <pablo.aguilar@outlook.com.br>

* chore: improve semver constraint e2e testing

Signed-off-by: Pablo Aguilar <pablo.aguilar@outlook.com.br>

---------

Signed-off-by: Pablo Aguilar <pablo.aguilar@outlook.com.br>
2024-06-05 20:25:06 -04:00
Blake Pettersson
175d7eecf0 docs: proposal for enhancing scoped repository credentials (#18290)
* docs: proposal for enhancing scoped repository credentials

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* docs: flesh out section on project matching

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* docs: scope down proposal

For the sake of time and simplicity, we will not do any modifications
of `repo-creds` secrets for this proposal.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* docs: added feedback

Feedback from contributors' meeting, part one.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* docs: modification date

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* docs: remove use cases

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* docs: spec update

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* docs: clarify backward-compatability

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* chore: further clarification of backwards compatibility

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* Update docs/proposals/project-scoped-repository-enhancements.md

Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* Update docs/proposals/project-scoped-repository-enhancements.md

Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* Update docs/proposals/project-scoped-repository-enhancements.md

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* chore: behavior in line with current impl

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* docs: add reviewers

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* Update docs/proposals/project-scoped-repository-enhancements.md

Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Co-authored-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-06-05 12:58:38 -10:00
Matthieu MOREL
71e1f30741 fix: enable bool-compare rule from testifylint linter (#18414) 2024-06-05 18:13:45 -04:00
Akram Ben Aissi
75cd97d6d4 feat: Consistent hashing with bounded loads algorithm for sharding (#16564)
* Adds consistent hashing with bound loads sharding algorithm

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

* Make the assignement consistent accross all clusters
- The assignment or running of the algorithm has to be consistent across all the clusters. Changed the function to return a map where the consistent hash will be used to build the map

- Modifications to the createConsistentHashsingWithBoundLoads function. This will create the map for cluster to shard. Note that the list must be consistent across all shards so that is why the cluster list must be sorted before going through the consistent hash algorithm

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

* Extracting constant and simplifying boolean expression

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

* Update docs: consistent-hashing sharding algorithm

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

---------

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>
2024-06-05 18:28:19 +00:00
bhargav joshi
ea909fe820 Update ingress.md (#18491)
https://github.com/argoproj/argo-cd/issues/16611

Signed-off-by: bhargav joshi <bhargav.joshi@gmail.com>
2024-06-05 18:25:43 +00:00
dependabot[bot]
05576fdcd7 chore(deps): bump goreleaser/goreleaser-action from 5.1.0 to 6.0.0 (#18504)
* chore(deps): bump goreleaser/goreleaser-action from 5.1.0 to 6.0.0

Bumps [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) from 5.1.0 to 6.0.0.
- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)
- [Commits](5742e2a039...286f3b13b1)

---
updated-dependencies:
- dependency-name: goreleaser/goreleaser-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* bump goreleaser version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-05 13:42:48 -04:00
Zadkiel AHARONIAN
69e82ccbd6 chore: allow override of default e2e test args (#18415)
Signed-off-by: Zadkiel AHARONIAN <hello@zadkiel.fr>
2024-06-04 22:45:53 -04:00
yyzxw
3703a1ee7d fix: prevent preview changes sync (#18400)
Signed-off-by: xiaowu.zhu <xiaowu.zhu@daocloud.io>
2024-06-04 22:19:19 -04:00
Sn0rt
c99fd49ab2 feat: argocd cli support fish completion (#18484)
* feat: argocd cli support fish completion

Signed-off-by: Sn0rt <wangguohao.2009@gmail.com>

* fix: update user doc for argocd fish completion

Signed-off-by: Sn0rt <wangguohao.2009@gmail.com>

---------

Signed-off-by: Sn0rt <wangguohao.2009@gmail.com>
2024-06-04 17:15:58 -04:00
github-actions[bot]
f19825e79a [Bot] docs: Update Snyk reports (#18471)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-06-04 15:30:07 +03:00
dependabot[bot]
6f43b68aff chore(deps): bump chromedriver from 125.0.2 to 125.0.3 in /ui-test (#18477)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 125.0.2 to 125.0.3.
- [Commits](https://github.com/giggio/node-chromedriver/compare/125.0.2...125.0.3)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-04 15:26:35 +03:00
dependabot[bot]
c1960b5b87 chore(deps): bump @types/selenium-webdriver in /ui-test (#18476)
Bumps [@types/selenium-webdriver](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/selenium-webdriver) from 4.1.22 to 4.1.23.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/selenium-webdriver)

---
updated-dependencies:
- dependency-name: "@types/selenium-webdriver"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-04 15:25:59 +03:00
dependabot[bot]
d959a68450 chore(deps-dev): bump @types/node from 20.12.13 to 20.14.1 in /ui-test (#18493)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.12.13 to 20.14.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-04 15:25:26 +03:00
Mathieu Parent
d90cfafd21 docs: fix indentation (#18494)
Signed-off-by: Mathieu Parent <math.parent@gmail.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-06-04 15:24:32 +03:00
dependabot[bot]
1f0c658e3f chore(deps): bump library/busybox in /test/e2e/multiarch-container (#18492)
Bumps library/busybox from `5eef5ed` to `9ae97d3`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-04 13:51:22 +03:00
Michael Crenshaw
2639c59bc6 chore: use redis secret when running locally (#18489)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-06-03 16:29:27 -04:00
Keith Chong
85ed1b96ea fix: Update braces package to 3.0.3 (#18459)
Signed-off-by: Keith Chong <kykchong@redhat.com>
2024-06-02 10:51:41 +03:00
dependabot[bot]
4fda009ea3 chore(deps): bump foundation-sites from 6.7.5 to 6.8.1 in /ui (#18462)
Bumps [foundation-sites](https://github.com/foundation/foundation-sites) from 6.7.5 to 6.8.1.
- [Release notes](https://github.com/foundation/foundation-sites/releases)
- [Commits](https://github.com/foundation/foundation-sites/compare/v6.7.5...v6.8.1)

---
updated-dependencies:
- dependency-name: foundation-sites
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-31 17:47:14 +03:00
Jann Fischer
ef37b39754 Revert "feat(server): log app Spec along with event (#16416)" (#18458)
This reverts commit 820f4d861a.

Signed-off-by: jannfis <jann@mistrust.net>
2024-05-30 20:03:34 +03:00
Tim Collins
1450f1031c chore: add pipekit to argocd USERS (#18457)
* chore: add pipekit to argocd USERS

Signed-off-by: Tim Collins <tim@thecollins.team>

* Trigger Build

Signed-off-by: Tim Collins <tim@thecollins.team>

---------

Signed-off-by: Tim Collins <tim@thecollins.team>
2024-05-30 13:35:48 +00:00
Tim Collins
7acd9f0659 docs: remove the recommendation to optionally auth redis for secrets mgmnt (#18455)
Signed-off-by: Tim Collins <tim@thecollins.team>
2024-05-30 16:34:12 +03:00
Nabil BENDAFI
7ccf826721 feat: Kyriba is using ArgoCD (#18456)
Signed-off-by: Nabil BENDAFI <nabilbendafi@users.noreply.github.com>
2024-05-30 03:18:20 -10:00
Miguel de Barros
1e2f5987d2 feat(issue/#17003): implement camel.apache.org/Integration CRD health checks (#17004)
* feat: implement camel.apache.org/Integration CRD health checks

Added custom health checks for Camel-K Integration CRDs

Signed-off-by: mdebarros <migueld@debarros.me>

* chore: cleanup up main health.lua

Signed-off-by: mdebarros <miguel@debarros.me>

---------

Signed-off-by: mdebarros <migueld@debarros.me>
Signed-off-by: mdebarros <miguel@debarros.me>
Co-authored-by: mdebarros <migueld@debarros.me>
2024-05-30 14:35:19 +03:00
Soumya Ghosh Dastidar
4d8436b7e1 feat: removed legacy app tracking label (#13203)
* feat: removed legacy app tracking label

Signed-off-by: Soumya Ghosh Dastidar <gdsoumya@gmail.com>

* feat: refactor SetAppInstanceLabel func

Signed-off-by: Soumya Ghosh Dastidar <gdsoumya@gmail.com>

* feat: refactor SetAppInstance func

Signed-off-by: Soumya Ghosh Dastidar <gdsoumya@gmail.com>

* feat: refactor SetAppInstanceAnnotation func

Signed-off-by: Soumya Ghosh Dastidar <gdsoumya@gmail.com>

* feat: refactored SetAppInstance() func

Signed-off-by: Soumya Ghosh Dastidar <gdsoumya@gmail.com>

---------

Signed-off-by: Soumya Ghosh Dastidar <gdsoumya@gmail.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-05-30 11:50:20 +03:00
dependabot[bot]
e3dff07163 chore(deps-dev): bump monaco-editor-webpack-plugin in /ui (#18450)
Bumps [monaco-editor-webpack-plugin](https://github.com/microsoft/monaco-editor) from 7.0.1 to 7.1.0.
- [Release notes](https://github.com/microsoft/monaco-editor/releases)
- [Changelog](https://github.com/microsoft/monaco-editor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/microsoft/monaco-editor/commits)

---
updated-dependencies:
- dependency-name: monaco-editor-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-30 10:37:24 +03:00
dependabot[bot]
ced9a4aa62 chore(deps-dev): bump @types/node from 20.12.12 to 20.12.13 in /ui-test (#18449)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.12.12 to 20.12.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-30 10:34:39 +03:00
dependabot[bot]
807754ce41 chore(deps-dev): bump sass-loader from 12.6.0 to 14.2.1 in /ui (#18451)
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 12.6.0 to 14.2.1.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v12.6.0...v14.2.1)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-30 10:34:21 +03:00
Huseyin Caliskan
2d2fb087ab Update ingress.md (#17766)
Replace argocd-redis-ha-haproxy in the istio documentation with argocd-redis.

Signed-off-by: Huseyin Caliskan <14217365+sakirma@users.noreply.github.com>
2024-05-29 21:12:47 -06:00
dependabot[bot]
55416adfcf chore(deps): bump @fortawesome/fontawesome-free in /ui (#18397)
Bumps [@fortawesome/fontawesome-free](https://github.com/FortAwesome/Font-Awesome) from 6.4.0 to 6.5.2.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/6.x/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/compare/6.4.0...6.5.2)

---
updated-dependencies:
- dependency-name: "@fortawesome/fontawesome-free"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-29 18:04:28 +03:00
Alexandre Gaudreault
ef9de40afa feat(ui): list dependent resources in delete popup (#18116)
* add icon in app table view

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* use defaut menu in tree-grouped

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* use default menu in pod views

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix custom delete actions

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* menu item in list

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix pod wrongly identified as root in network graph

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* update docs error

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* call delete pod action if kind is pod

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* add logs action to pods

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* delete in app details

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* use managed instead of root for menu items

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* lint fix

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix lint again

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* feat(ui): list dependent resources in delete popup

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* linting

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* childs to children

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* update ui dep

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-05-29 10:53:08 -04:00
Philipp Erbelding
a36f50fce8 docs: Fix "core" link in getting started (#18437)
Signed-off-by: Philipp Erbelding <philipp@copythat.de>
Signed-off-by: Philipp Erbelding <philipp.erbelding@cleverbridge.com>
2024-05-29 09:44:55 +03:00
dependabot[bot]
21b1514465 chore(deps): bump docker/login-action from 3.1.0 to 3.2.0 (#18440)
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](e92390c5fb...0d4c9c5ea7)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-29 09:01:30 +03:00
BarAshkenazi
dd3bb2bad4 fix: repo-server should allow not to skip hidden directories (#17957)
* Update repository.go

Signed-off-by: BarAshkenazi <barashkenazi2@gmail.com>
Signed-off-by: Bar <bar.ashkenazi@appsflyer.com>

* support hidden directories in repo server

Signed-off-by: Bar <bar.ashkenazi@appsflyer.com>

* support hidden directories in repo server

Signed-off-by: Bar <bar.ashkenazi@appsflyer.com>

* add dir exclusion pattern

Signed-off-by: Bar <bar.ashkenazi@appsflyer.com>

* support hidden directories

Signed-off-by: Bar <bar.ashkenazi@appsflyer.com>

* support hidden directories in repo server

Signed-off-by: Bar <bar.ashkenazi@appsflyer.com>

* support hidden directories in repo server

Signed-off-by: Bar <bar.ashkenazi@appsflyer.com>

* support hidden directories in repo server

Signed-off-by: Bar <bar.ashkenazi@appsflyer.com>

* support hidden directories in repo server

Signed-off-by: Bar <bar.ashkenazi@appsflyer.com>

* support hidden directories in repo server

Signed-off-by: Bar <bar.ashkenazi@appsflyer.com>

---------

Signed-off-by: BarAshkenazi <barashkenazi2@gmail.com>
Signed-off-by: Bar <bar.ashkenazi@appsflyer.com>
Co-authored-by: Bar <bar.ashkenazi@appsflyer.com>
2024-05-28 14:25:23 -04:00
Matthieu MOREL
9fe1dbfcad fix: enable misspell linter (#18412)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-05-28 12:51:04 +03:00
dependabot[bot]
8a28279921 chore(deps): bump library/redis in /test/container (#18421)
Bumps library/redis from `b32ea6e` to `01afb31`.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-27 10:17:39 +03:00
github-actions[bot]
8f02ec1c3e [Bot] docs: Update Snyk reports (#18413)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-05-27 10:16:28 +03:00
Matthieu MOREL
cd3c478a7a ci(lint): create .golangci.yaml (#18410)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-05-25 18:27:25 -04:00
Ishita Sequeira
d871b7f0c2 fix source ordering issue in manifest generation for multi-source app while using manifests and diff commands (#18395) 2024-05-24 16:50:56 -04:00
dependabot[bot]
1432f11bd9 chore(deps): bump chromedriver from 125.0.1 to 125.0.2 in /ui-test (#18399)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 125.0.1 to 125.0.2.
- [Commits](https://github.com/giggio/node-chromedriver/compare/125.0.1...125.0.2)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-24 13:38:51 +03:00
Rafael Broseghini
97648eeb60 fixes list generator cluster element (#18389)
Signed-off-by: Dan Garfield <dan@codefresh.io>
2024-05-23 14:32:07 -06:00
dependabot[bot]
a95d595394 chore(deps): bump goreleaser/goreleaser-action from 5.0.0 to 5.1.0 (#18376)
Bumps [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) from 5.0.0 to 5.1.0.
- [Release notes](https://github.com/goreleaser/goreleaser-action/releases)
- [Commits](7ec5c2b0c6...5742e2a039)

---
updated-dependencies:
- dependency-name: goreleaser/goreleaser-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-23 11:48:00 -04:00
dependabot[bot]
45832ce1ab chore(deps): bump @types/superagent from 4.1.21 to 8.1.6 in /ui (#17606)
Bumps [@types/superagent](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/superagent) from 4.1.21 to 8.1.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/superagent)

---
updated-dependencies:
- dependency-name: "@types/superagent"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-05-23 13:53:05 +03:00
dependabot[bot]
781261aab4 chore(deps-dev): bump @types/react-autocomplete in /ui (#18374)
Bumps [@types/react-autocomplete](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-autocomplete) from 1.8.6 to 1.8.10.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-autocomplete)

---
updated-dependencies:
- dependency-name: "@types/react-autocomplete"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-23 13:06:45 +03:00
dependabot[bot]
5452bf1250 chore(deps): bump sigstore/cosign-installer from 3.4.0 to 3.5.0 (#18182)
Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 3.4.0 to 3.5.0.
- [Release notes](https://github.com/sigstore/cosign-installer/releases)
- [Commits](e1523de757...59acb6260d)

---
updated-dependencies:
- dependency-name: sigstore/cosign-installer
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-23 11:33:21 +03:00
Blake Pettersson
049900e646 chore: automate mock generation v2 (#18371)
* Add go:generate statements for mockery

Signed-off-by: Will Roden <will@roden.cc>

* revert whitespace change

Signed-off-by: Will Roden <will@roden.cc>

* go generate everything

Signed-off-by: Will Roden <will@roden.cc>

* make gogen

Signed-off-by: Will Roden <will@roden.cc>

* chore: upgrade to mockery v2.40.2

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Will Roden <will@roden.cc>
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Will Roden <will@roden.cc>
2024-05-23 11:15:15 +03:00
dependabot[bot]
9f27197da6 chore(deps): bump chromedriver from 125.0.0 to 125.0.1 in /ui-test (#18375)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 125.0.0 to 125.0.1.
- [Commits](https://github.com/giggio/node-chromedriver/compare/125.0.0...125.0.1)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-23 11:13:19 +03:00
dependabot[bot]
37900ee774 chore(deps-dev): bump @types/react-paginate from 6.2.1 to 7.1.4 in /ui (#18373)
Bumps [@types/react-paginate](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-paginate) from 6.2.1 to 7.1.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-paginate)

---
updated-dependencies:
- dependency-name: "@types/react-paginate"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-22 23:50:52 -04:00
Nikhil Vaidyar
600737abe4 feat: Added the comment to support CLI message to get extended output (#18253)
* feat: Added the comment to support CLI message to get extended output #18226

Signed-off-by: nikzayn <nikhilvaidyar1997@gmail.com>

* feat: Updated proto and swagger #18226

Signed-off-by: nikzayn <nikhilvaidyar1997@gmail.com>

* feat: Updated manifest files

Signed-off-by: nikzayn <nikhilvaidyar1997@gmail.com>

---------

Signed-off-by: nikzayn <nikhilvaidyar1997@gmail.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-05-23 01:35:51 +00:00
May Zhang
d73eb8f7fd fix: remove Egress NetworkPolicy for argocd-redis and argocd-redis-ha-haproxy (#18367)
* fix: runing local failed

Signed-off-by: xiaowu.zhu <xiaowu.zhu@daocloud.io>

* fix: Redis egress removal

Signed-off-by: May Zhang <may_zhang@intuit.com>

---------

Signed-off-by: xiaowu.zhu <xiaowu.zhu@daocloud.io>
Signed-off-by: May Zhang <may_zhang@intuit.com>
Co-authored-by: yyzxw <1020938856@qq.com>
2024-05-22 19:47:09 -04:00
github-actions[bot]
52acbd55a7 [Bot] docs: Update Snyk reports (#18365)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-05-22 10:24:50 -07:00
dependabot[bot]
8776cc1a69 --- (#18362)
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-22 16:08:43 +00:00
Dan Garfield
22a3a68fbb docs: Remove special characters from update doc (#18363)
* Remove special characters from update doc

Signed-off-by: Dan Garfield <dan@codefresh.io>

* remove extra line

* remove additional line

---------

Signed-off-by: Dan Garfield <dan@codefresh.io>
2024-05-22 09:44:50 -06:00
rkriplani76
cd1435608d removing strikeout as it was populating special character issue #14139 (#14823)
Signed-off-by: Rajesh Kriplani <rajesh.kriplani@gmail.com>
2024-05-22 18:26:03 +03:00
Michael Chen
00672a8ff5 docs: Clarify how Argo CD detects and uses Kustomize (#11417)
* Add an example similar to the Helm topic

This topic is missing a simple example like the next topic "Helm" to show how to define a Kustomize based application.
https://argo-cd.readthedocs.io/en/stable/user-guide/helm/

Signed-off-by: Michael Chen <4326639+mcgitty@users.noreply.github.com>

* Clarify how Argo CD detects and use Kustomize

This description seems trivial to the designer of Argo CD, but it is a critical information for people learning Argo CD.

Signed-off-by: Michael Chen <4326639+mcgitty@users.noreply.github.com>

* Also mention 'path' in spec.source

Signed-off-by: Michael Chen <4326639+mcgitty@users.noreply.github.com>

* Update docs/user-guide/kustomize.md

Signed-off-by: Dan Garfield <dan@codefresh.io>

Signed-off-by: Dan Garfield <dan@codefresh.io>

* Update docs/user-guide/kustomize.md

Signed-off-by: Dan Garfield <dan@codefresh.io>

Signed-off-by: Dan Garfield <dan@codefresh.io>

---------

Signed-off-by: Michael Chen <4326639+mcgitty@users.noreply.github.com>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-05-22 15:13:11 +00:00
Cayde6
ee9b38fe5c feat: add ls-remote request fail metric (#18250)
Added argocd_git_lsremote_fail_total metric.
Increment this metric if a git ls-remote request fails.

Signed-off-by: Jack-R-lantern <tjdfkr2421@gmail.com>
2024-05-22 17:37:22 +03:00
Zack Robinson
59ce337d32 fix: app names with non-alphanumeric characters in position 63 break syncs (issue #18237) (#18256)
* Ensure truncated app label does not end in a special character

Signed-off-by: Zack Robinson <robinsoz@arcesium.com>

* Move regex to global variable and add out of bounds check

Signed-off-by: Zack Robinson <robinsoz@arcesium.com>

* Add test for out-of-bounds check

Signed-off-by: Zack Robinson <robinsoz@arcesium.com>

---------

Signed-off-by: Zack Robinson <robinsoz@arcesium.com>
2024-05-22 08:30:54 -06:00
dependabot[bot]
4606476adb --- (#18313)
updated-dependencies:
- dependency-name: selenium-webdriver
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/selenium-webdriver"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-22 15:03:58 +03:00
dependabot[bot]
6a68b95dfc --- (#18352)
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-22 14:16:19 +03:00
Michael Crenshaw
bd671e8473 chore(deps): bump golang.org/x/net from v0.21.0 to v0.25.0 (#18176)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-22 14:15:24 +03:00
dependabot[bot]
96c2a95503 --- (#18346)
updated-dependencies:
- dependency-name: assert
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-22 12:36:50 +03:00
dependabot[bot]
cef69c3bb1 --- (#18345)
updated-dependencies:
- dependency-name: gitpod/workspace-full
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-22 12:29:25 +03:00
dependabot[bot]
0ec7f82fa4 --- (#18349)
updated-dependencies:
- dependency-name: html-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-22 12:26:28 +03:00
dependabot[bot]
4aa62699da --- (#18353)
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-22 12:25:19 +03:00
Mark Tallentire
6110581e97 Update docs for azure workload identity cluster setup (#18357)
Adds a missing step to the docs for declarative setup of an AKS cluster using workload identity for adding annotations to the service accounts.

Signed-off-by: Mark Tallentire <lonelycooler@googlemail.com>
2024-05-22 12:00:53 +03:00
david-wu-octopus
462c9ecd11 fix(ui): Fix jumpy "Source" panel when typing (issue #15961) (#18227)
* Debounce `props.onAppChanged()` with a wait time of 500ms

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Increase debounce wait time to 800ms

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Fix linting error

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

---------

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
2024-05-22 11:59:39 +03:00
Michael Crenshaw
bc53266591 chore(deps): bump golangci/golangci-lint-action from v3.7.0 to 6.0.1 (#18148)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-21 18:06:03 -04:00
Michael Crenshaw
1453dc4c34 fix(ci): codecov (#18335)
* fix(ci): codecov

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* build UI for frontend or backend

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* use token, fail ci on error

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-21 21:09:09 +00:00
Michael Crenshaw
78e0fc4b7d docs: redis-ha registry change (#18329)
* docs: redis-ha registry change

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* update language

Co-Authored-By: Avo Sepp <68659218+avo-sepp@users.noreply.github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Avo Sepp <68659218+avo-sepp@users.noreply.github.com>
2024-05-21 19:30:26 +00:00
May Zhang
8dff209cba Merge pull request from GHSA-9766-5277-j5hr
* fix: Enable Redis authentication in the default installation

Signed-off-by: May Zhang <may_zhang@intuit.com>

* chore: fix git_test unit test

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

---------

Signed-off-by: May Zhang <may_zhang@intuit.com>
Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
Co-authored-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
Co-authored-by: pashakostohrys <pavel@codefresh.io>
2024-05-21 16:23:09 +03:00
May Zhang
13d5803e75 Merge pull request from GHSA-9766-5277-j5hr
* fix: Enable Redis authentication in the default installation

Signed-off-by: May Zhang <may_zhang@intuit.com>

* chore: fix git_test unit test

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

---------

Signed-off-by: May Zhang <may_zhang@intuit.com>
Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
Co-authored-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
Co-authored-by: pashakostohrys <pavel@codefresh.io>
2024-05-21 16:22:43 +03:00
dependabot[bot]
2dd5cd8b9a --- (#18318)
updated-dependencies:
- dependency-name: minimatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-21 13:52:50 +03:00
lenglet-k
f13861740c feat: Implement KafkaConnector,KafkaBridge CRD health checks (#18316) 2024-05-21 12:10:53 +03:00
dependabot[bot]
e0968177e0 --- (#18314)
updated-dependencies:
- dependency-name: mocha
  dependency-type: direct:development
  update-type: version-update:semver-major
- dependency-name: "@types/mocha"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-21 11:46:22 +03:00
A S Rakesh Krishna
43cb8003d1 add fullscreen prop (#18309)
Signed-off-by: Fluder-Paradyne <121793617+Fluder-Paradyne@users.noreply.github.com>
2024-05-21 11:16:11 +03:00
dependabot[bot]
441367ff52 --- (#18307)
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-21 11:01:02 +03:00
dependabot[bot]
fda368b6bb chore(deps-dev): bump @types/node from 14.14.14 to 20.12.12 in /ui-test (#18301)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.14.14 to 20.12.12.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-21 10:35:30 +03:00
dependabot[bot]
e34aa2f4b4 --- (#18315)
updated-dependencies:
- dependency-name: yarn
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-21 10:34:32 +03:00
dependabot[bot]
63743315a6 --- (#18311) 2024-05-21 09:37:12 +03:00
dependabot[bot]
36b8ff51d7 --- (#18312) 2024-05-21 09:36:40 +03:00
Brice Burgess
4c754c8ad4 docs(webhook): include installation instructions on Triggers and Templates page (#18304) 2024-05-21 09:07:05 +03:00
dependabot[bot]
d1135c133b chore(deps-dev): bump dotenv from 8.2.0 to 16.4.5 in /ui-test (#18298) 2024-05-21 09:04:07 +03:00
dependabot[bot]
5d31b03d7d chore(deps): bump gitpod/workspace-full from 511cecd to f569b00 (#17565) 2024-05-21 09:03:37 +03:00
dependabot[bot]
b447dccde8 chore(deps): bump chromedriver from 94.0.0 to 125.0.0 in /ui-test (#18303)
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 94.0.0 to 125.0.0.
- [Commits](https://github.com/giggio/node-chromedriver/compare/94.0.0...125.0.0)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 23:09:47 +03:00
pasha-codefresh
aa7f1c5c2e chore: update jest version (#18295)
* update jest version in order to resolve
https://github.com/argoproj/argo-cd/pull/14585/files

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* update jest version in order to resolve
https://github.com/argoproj/argo-cd/pull/14585/files

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* update ts jest

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* update ts jest

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-05-20 23:06:40 +03:00
dependabot[bot]
ddc85238f4 chore(deps): bump library/node from 21.7.0 to 22.2.0 (#18297)
Bumps library/node from 21.7.0 to 22.2.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 22:20:35 +03:00
dependabot[bot]
90df1e6d5d chore(deps-dev): bump prettier from 1.19.1 to 2.8.8 in /ui-test (#18302)
Bumps [prettier](https://github.com/prettier/prettier) from 1.19.1 to 2.8.8.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/1.19.1...2.8.8)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 22:18:52 +03:00
dependabot[bot]
3c19fdbdc7 chore(deps-dev): bump typescript from 4.1.3 to 5.4.5 in /ui-test (#18300)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.1.3 to 5.4.5.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.1.3...v5.4.5)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 22:18:35 +03:00
Justin Marquis
95d37dc87d fix(deps): upgrade otel dependency (#18285)
Signed-off-by: Justin Marquis <justin@akuity.io>
Co-authored-by: Soumya Ghosh Dastidar <44349253+gdsoumya@users.noreply.github.com>
2024-05-20 13:35:29 -04:00
Cheng Fang
4f6666940b chore(ci): add /ui-test/ directory to dependabot.yml (#16235)
Signed-off-by: Cheng Fang <cfang@redhat.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-05-20 15:17:08 +00:00
dependabot[bot]
8480f5cd87 chore(deps): bump library/node from 21.6.2 to 21.7.0 (#17446)
Bumps library/node from 21.6.2 to 21.7.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-05-20 16:53:51 +03:00
Nikhil Vaidyar
9c8d652471 feat: Adding the domain_hint as an optional field in OIDC configuration (#18214)
* [18066] - Added DomainHint key in OIDCConfig struct

Signed-off-by: nikzayn <nikhilvaidyar1997@gmail.com>

* [18066] - Added DomainHint in options for grantType

Signed-off-by: nikzayn <nikhilvaidyar1997@gmail.com>

* [18066] - Auth0 readme.md --updated

Signed-off-by: nikzayn <nikhilvaidyar1997@gmail.com>

---------

Signed-off-by: nikzayn <nikhilvaidyar1997@gmail.com>
2024-05-20 12:08:28 +03:00
happyso
4d61974d58 fix(ui): Add title for full content without clicking (issue #17600) (#18243)
* fix: Add title for full content without clicking

Signed-off-by: sunyeongchoi <suoung0716@gmail.com>

* fix: apply ui lint

Signed-off-by: sunyeongchoi <suoung0716@gmail.com>

* fix: apply argo-ui Tooltip and define local variable

Signed-off-by: sunyeongchoi <suoung0716@gmail.com>

---------

Signed-off-by: sunyeongchoi <suoung0716@gmail.com>
2024-05-20 11:18:19 +03:00
condaatje
257b242efd add apiVersion so yaml applies properly in-cluster (#18282)
Signed-off-by: condaatje <condaatje@users.noreply.github.com>
2024-05-20 09:53:20 +02:00
david-wu-octopus
22993deb86 fix(ui): Fix excessive padding on system level extension pages (issue #17929) (#18207)
* Remove CSS class `.cd-layout--extension`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Remove all usages of CSS class `.cd-layout--extension`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Remove unused prop `isExtension` from `<Layout />`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Remove unused property `extension` from type `Routes`

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

* Fix linting error

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>

---------

Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
2024-05-19 21:29:52 -04:00
github-actions[bot]
8cf3e05fd4 [Bot] docs: Update Snyk reports (#18276) 2024-05-19 18:54:12 +03:00
Tomáš Novák
210f26ae83 fix(reposerver): fix OCI repository matching (#17955)
Signed-off-by: Tomáš Novák <tomas.novak@bcas.cz>
2024-05-17 22:41:23 +03:00
Justin Marquis
2e43af50da chore(deps): upgrade helm to 3.14.4 (#18255)
* chore(deps): upgrade helm to 3.14.4

Signed-off-by: Justin Marquis <justin@akuity.io>

* place checksums where they belong

Signed-off-by: Justin Marquis <justin@akuity.io>

---------

Signed-off-by: Justin Marquis <justin@akuity.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-05-17 13:58:22 +03:00
dependabot[bot]
e6ea861561 chore(deps): bump bitnami/kubectl in /test/container (#18262)
Bumps bitnami/kubectl from `09c66fb` to `0aef4af`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-17 13:55:59 +03:00
dependabot[bot]
cd21752d25 chore(deps): bump library/node from 22.1.0 to 22.2.0 in /test/container (#18261)
Bumps library/node from 22.1.0 to 22.2.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-17 13:55:42 +03:00
dependabot[bot]
800cc5e2dc chore(deps): bump library/node from 22.1.0 to 22.2.0 in /ui-test (#18260)
Bumps library/node from 22.1.0 to 22.2.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-17 13:55:20 +03:00
Isaac Gaskin
fe02d884fd docs: update workflows readme (#18263)
Signed-off-by: Isaac Gaskin <isaac.gaskin@circle.com>
2024-05-17 13:54:46 +03:00
Nicholas Morey
c9c3c1de24 docs: expand appset post selector examples (#18257)
Signed-off-by: Nicholas Morey <nicholas@morey.tech>
2024-05-16 14:46:27 -06:00
dependabot[bot]
5e6ca70904 chore(deps): bump bitnami/kubectl in /test/container (#18224)
Bumps bitnami/kubectl from `5129237` to `09c66fb`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-16 13:52:05 +03:00
Malte Hviid-Magnussen
5e58bac61b Add proper spacing (#18244)
Signed-off-by: Malte Hviid-Magnussen <maltehviidmagnussen@gmail.com>
2024-05-16 13:51:42 +03:00
hanzala1234
2c5b9738ea Bump gitops-engine-version (#18233)
Signed-off-by: hanzala <muhammadhanzala12@gmail.com>
2024-05-15 18:40:46 +03:00
dependabot[bot]
2b89d6c222 chore(deps): bump library/node in /test/container (#18225) 2024-05-15 09:17:01 +03:00
dependabot[bot]
3862aecc06 chore(deps): bump library/node from f9b4b4b to 5a254b7 in /ui-test (#18222) 2024-05-15 09:16:38 +03:00
Arata Furukawa
36ff5cf1e1 fix: copy visited map #11699 (#12667)
This commit fixed an issue #11699 that caused a warning even if the cycle didn't exist.
Fix false cycle discovery by copying the visited resource map before recursively calling of getAppRecursive.

Fixes #11699

Signed-off-by: Arata Furukawa <old.river.new@gmail.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-05-14 15:37:20 -07:00
dependabot[bot]
346ae95587 chore(deps): bump bitnami/kubectl in /test/container (#18186)
Bumps bitnami/kubectl from `aa73edb` to `5129237`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-14 22:04:27 +03:00
Leonardo Luz Almeida
5ae342a6de chore: fix unit-tests (#18215)
Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
2024-05-14 13:30:57 -04:00
Michael Crenshaw
2abfafd025 chore(deps): bump github/codeql-action bundle to v2.17.2 (#18150)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-14 08:56:59 -04:00
dependabot[bot]
f9f674953d chore(deps): bump library/node from 64c46a6 to f9b4b4b in /ui-test (#18206)
Bumps library/node from `64c46a6` to `f9b4b4b`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-14 14:55:06 +03:00
dependabot[bot]
5729c61421 chore(deps): bump library/node in /test/container (#18204)
Bumps library/node from `64c46a6` to `f9b4b4b`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-14 14:54:47 +03:00
dependabot[bot]
52e94fdd0f chore(deps): bump actions/download-artifact from 4.1.5 to 4.1.7 (#18185)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4.1.5 to 4.1.7.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](8caf195ad4...65a9edc588)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-13 21:20:49 -07:00
dependabot[bot]
2162aaf727 chore(deps): bump ossf/scorecard-action from 2.3.1 to 2.3.3 (#18183)
Bumps [ossf/scorecard-action](https://github.com/ossf/scorecard-action) from 2.3.1 to 2.3.3.
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md)
- [Commits](0864cf1902...dc50aa9510)

---
updated-dependencies:
- dependency-name: ossf/scorecard-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-13 17:17:05 -07:00
Ishita Sequeira
710bb76107 update resolveRevision to use the correct source for multi-source app (#18194) 2024-05-13 23:42:14 +03:00
Andrii Korotkov
532f5a8a43 chore: Add Verkada to ArgoCD users (#18199)
Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-05-13 22:08:51 +02:00
Andrii Korotkov
4faad946f0 chore: Improve appcontroller logs further - Closes [#18113] (#18174)
* chore: Improve appcontroller logs further - Closes [#18113]

Add application fully qualified name as a logrus field to several places that were missing it.
Remove appNamespace field and replace application name with a fully qualified name in a few places for consistency.
Add app project to the log fields.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* chore: Switch to using separate field for application name and qualified name, add a common function for app log entry - Closes[#18113]

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

---------

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>
2024-05-13 16:07:24 -04:00
Alexandre Gaudreault
49059113c2 feat(rbac): fine-grained update/delete for application resources (#18124)
* feat(rbac): fine-grained update/delete for application resources

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* rewrite rbac (draft)

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* add other stuff

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* spellcheck

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* update map

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* spell check

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* linter not happy about deprecated claims

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* not happy about claims at all

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* generated

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix list syntax

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* use same link pattern

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* rewrite permissions to policy when it applies

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* Update docs/operator-manual/rbac.md

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-05-13 15:04:18 -04:00
onee-only
8a0757efc5 Fix logging hash with multiple sources (#18189)
Signed-off-by: onee-only <kimww0306@gmail.com>
2024-05-13 09:22:17 -04:00
github-actions[bot]
c3b89ca015 [Bot] docs: Update Snyk reports (#18171)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-05-11 22:12:34 -04:00
dependabot[bot]
971fc3ef12 chore(deps): bump tar from 6.1.11 to 6.2.1 in /ui (#17791)
Bumps [tar](https://github.com/isaacs/node-tar) from 6.1.11 to 6.2.1.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v6.1.11...v6.2.1)

---
updated-dependencies:
- dependency-name: tar
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-11 22:03:09 -04:00
dependabot[bot]
df3bb3e753 chore(deps): bump js-yaml and @types/js-yaml in /ui (#18168)
* chore(deps): bump js-yaml and @types/js-yaml in /ui

Bumps [js-yaml](https://github.com/nodeca/js-yaml) and [@types/js-yaml](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/js-yaml). These dependencies needed to be updated together.

Updates `js-yaml` from 3.14.1 to 4.1.0
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/3.14.1...4.1.0)

Updates `@types/js-yaml` from 3.12.1 to 4.0.9
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/js-yaml)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-type: direct:production
  update-type: version-update:semver-major
- dependency-name: "@types/js-yaml"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* use new function names

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-11 21:57:02 -04:00
Ha Van
f4fd97d659 fix: BanzaiCloud KafkaCluster healthcheck to return Progressing during rolling update (#17994)
* Update ClusterRollingUpgrading state to always be in Progressing state regardless of broker status

Signed-off-by: Ha Van <musubi7726@gmail.com>

* Retrigger CI pipeline

Signed-off-by: Ha Van <musubi7726@gmail.com>

---------

Signed-off-by: Ha Van <musubi7726@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-05-11 15:36:33 -04:00
Michael Crenshaw
5849a0650f chore(deps): bump actions/cache from v3.3.2 to 4.0.2 (#18146)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-11 15:24:12 -04:00
raweber
653fc8da1f docs: replace image to one which includes ca-certificates (#18068)
* Replace image to include ca-certificates

Signed-off-by: raweber <99535319+raweber42@users.noreply.github.com>

* Update comment

Signed-off-by: raweber <99535319+raweber42@users.noreply.github.com>

* Update docs/operator-manual/config-management-plugins.md

Co-authored-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* Update docs/operator-manual/config-management-plugins.md

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: raweber <99535319+raweber42@users.noreply.github.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-05-10 08:22:17 -06:00
Erik Frederiksen
968dc1ad53 docs: add Andgo Systems to users list (#18157)
Signed-off-by: Erik Frederiksen <rik.the.vik@gmail.com>
2024-05-09 15:12:33 -06:00
Alexander Matyushentsev
5bb3c87370 fix: Argo CD app is out of sync right after sync (#18155)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-05-09 12:52:11 -07:00
Leonardo Luz Almeida
62d9838076 fix: handle nil ParseableType from GVKParser (#18154)
Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
2024-05-09 15:03:38 -04:00
Michael Crenshaw
e0e9dcfc5a chore(deps): bump softprops/action-gh-release from v0.1.15 to 2.0.5 (#18149)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-09 18:01:26 +00:00
Michael Crenshaw
13c7434645 chore(deps): bump docker/setup-qeum-action from v2.2.0 to 3.0.0 (#18145)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-09 17:17:12 +00:00
Michael Crenshaw
408295fb4f chore(deps): bump actions/setup-go from 4.x to 5.0.1 (#18144)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-09 12:57:32 -04:00
Alexandre Gaudreault
a89e3589b4 fix(ui): consistent resource menu across views (#18060) (#18069)
* add icon in app table view

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* use defaut menu in tree-grouped

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* use default menu in pod views

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix custom delete actions

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* menu item in list

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix pod wrongly identified as root in network graph

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* update docs error

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* call delete pod action if kind is pod

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* add logs action to pods

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* delete in app details

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* use managed instead of root for menu items

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* lint fix

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix lint again

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-05-09 09:16:50 -06:00
Blake Pettersson
ebb92d8c3b fix: add endpointslice replace (#18141)
Since #17491 I got a bunch of weird errors in Goland, along with the
error message below:

```
go: k8s.io/endpointslice@v0.0.0: invalid version: unknown revision v0.0.0
```

Adding an endpointslice alias fixes that.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-05-09 08:52:49 -04:00
dependabot[bot]
f65399af14 chore(deps): bump library/node from 22.0.0 to 22.1.0 in /test/container (#18136)
Bumps library/node from 22.0.0 to 22.1.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-05-09 12:05:25 +03:00
dependabot[bot]
bab0ee0821 chore(deps): bump bitnami/kubectl in /test/container (#18135)
Bumps bitnami/kubectl from `b330450` to `aa73edb`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-09 10:49:50 +03:00
dependabot[bot]
0a408a6e30 chore(deps): bump library/busybox in /test/e2e/multiarch-container (#18134)
Bumps library/busybox from `6776a33` to `5eef5ed`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-09 10:49:29 +03:00
Michael Crenshaw
2605a9845b chore(ci): fix release notes (#18132)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-08 16:50:09 -06:00
dependabot[bot]
0ca4f74155 chore(deps): bump library/node from 22.0.0 to 22.1.0 in /ui-test (#18063)
Bumps library/node from 22.0.0 to 22.1.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-08 21:22:24 +03:00
dependabot[bot]
247055207d chore(deps): bump bitnami/kubectl in /test/container (#18085)
Bumps bitnami/kubectl from `b909f3a` to `b330450`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-08 21:18:08 +03:00
Mikael Sennerholm
440fbac12b feat(health): Implement k8s.mariadb.com CRD health checks (#17995)
* Copied MariaDB from old name and change to new name
Adding Backup, SqlJobs, Grant, Database and User

Signed-off-by: Mikael Sennerholm <mikael@sennerholm.net>

* Set progressing as default

Signed-off-by: Mikael Sennerholm <mikael@sennerholm.net>

---------

Signed-off-by: Mikael Sennerholm <mikael@sennerholm.net>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-05-08 19:22:05 +03:00
Togie Mcdogie
1cd6fcac4f feat(health): Added Humio Operator Healthchecks (#11628)
* Added Humio Operator Healthchecks

Signed-off-by: togie6 <22466611+togie6@users.noreply.github.com>

* Retrigger CI pipeline

Signed-off-by: togie6 <22466611+togie6@users.noreply.github.com>

* Removed duplicate if statement from HumioView

Signed-off-by: togie6 <22466611+togie6@users.noreply.github.com>

* Add HumioCluster Health Check

Signed-off-by: togie6 <22466611+togie6@users.noreply.github.com>

---------

Signed-off-by: togie6 <22466611+togie6@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-05-08 19:21:56 +03:00
Parvesh Mourya
9bc9ff9c7a feat: implement keda health-checks (#16715)
Signed-off-by: parmou <parveshmourya96@gmail.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-05-08 15:47:14 +00:00
Mayursinh Sarvaiya
7945b26d95 chore(ui-dev): migrate tslint to eslint (#11652) (#18079)
* feat(ui): setup eslint

Signed-off-by: Mayursinh Sarvaiya <marvinduff97@gmail.com>

* chore(ui): update `lint:fix` command

Signed-off-by: Mayursinh Sarvaiya <marvinduff97@gmail.com>

* fix(ui-lint): run `yarn lint:fix`

> solve remaining manually

Signed-off-by: Mayursinh Sarvaiya <marvinduff97@gmail.com>

* chore(ui): remove tslint from `ui`

Signed-off-by: Mayursinh Sarvaiya <marvinduff97@gmail.com>

* chore(docs-ui): add docs for VSCode configuration eslint

Signed-off-by: Mayursinh Sarvaiya <marvinduff97@gmail.com>

* chore(ui): prettier set `trailingComma` to `none`

> prettier config default is changed after version bump - https://prettier.io/docs/en/options.html#trailing-commas

Signed-off-by: Mayursinh Sarvaiya <marvinduff97@gmail.com>

---------

Signed-off-by: Mayursinh Sarvaiya <marvinduff97@gmail.com>
2024-05-08 11:30:58 -04:00
sivchari
ef96dec5b2 chore: Bump Kubernetes 1.29.2 (#17491)
* run: go mod tidy

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* change interface of Broadcaster

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* modify some logic due to updating controller-runtime version

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* modify some logic due to updating controller-runtime version

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* fix args of GetInformer

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* fix signature for mock

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* update mock

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* use ptr instead of pointer

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* use recommended function instead of deprecated it in wait package

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* run make codegen

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* re-run codegen

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* fix codegen tasks to pass the codegen

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* replace pointer package with ptr package

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* add option to manage subresource

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* fix len args

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* fix: error message for updating lib-version

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* use poll

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* add cache opt

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* use ptr instead of pointer

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* add status subresource

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* use latest commit

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* fix watch namespace

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* use latest gitops-engine

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* delete unnecessary polling

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* revert changes in Makefile

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* re-add openapi-gen

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* codegen w/ correct versions

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* revert

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* extend timeout

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* break loop even if service account does not have secrets

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* fix review points

Signed-off-by: sivchari <shibuuuu5@gmail.com>

* replace gitops-engine

Signed-off-by: sivchari <shibuuuu5@gmail.com>

---------

Signed-off-by: sivchari <shibuuuu5@gmail.com>
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-08 11:16:18 -04:00
Daan Verstraten
2727aec4b7 docs(update): Adding an example for deeplinks in using property that contains - or / (#18119)
* Extending deeplinks documentation with examples for labels or annotations that use / or - 

Signed-off-by: Daan Verstraten <104772968+DaanQ42@users.noreply.github.com>

* Fixing double quotes

Signed-off-by: Daan Verstraten <104772968+DaanQ42@users.noreply.github.com>

* Update docs/operator-manual/deep_links.md

Signed-off-by: Dan Garfield <dan@codefresh.io>

Signed-off-by: Dan Garfield <dan@codefresh.io>

---------

Signed-off-by: Daan Verstraten <104772968+DaanQ42@users.noreply.github.com>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-05-08 14:52:05 +00:00
pgumpoldsberger
20fada8364 Update ingress.md to work wirth traefik 3.0 (#18103)
Signed-off-by: pgumpoldsberger <60177408+pgumpoldsberger@users.noreply.github.com>
2024-05-07 13:31:23 -06:00
Dan Garfield
82db16664e Docs: Clarify that we don't actually follow semver (#18111)
Signed-off-by: Dan Garfield <dan@codefresh.io>
2024-05-07 14:49:05 -04:00
Michael Crenshaw
c1787cff4a docs: document go-based health checks (#18117)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-07 14:47:51 -04:00
Michael Crenshaw
fe6bcc1cb9 docs: clarify local user/SSO scope RBAC ambiguity (#18059)
* docs: clarify local user/SSO scope RBAC ambiguity

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* better phrasing

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-07 12:04:20 -06:00
João Estrela
05d10c870e typo on Cluster Generator doc (#18110)
Signed-off-by: João Estrela <jestrela@barracuda.com>
2024-05-07 18:51:47 +03:00
Michael Crenshaw
414be63696 chore(deps): bump Ubuntu from 22.04 to 24.04 (#17973) (#18093)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-07 09:35:58 -04:00
Yoshitaka Fujii
13506ad5c8 doca: Update argocd_architecture image (#18073)
Signed-off-by: ystkfujii <ystk.fujii0731@gmail.com>
2024-05-07 09:06:03 -04:00
Michael Crenshaw
b0a3433d00 docs: fix 404 styling (#18094)
* docs: fix 404 styling

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* hack around custom tag destruction

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-05-07 09:03:34 -04:00
daftping
e5c0e09651 fix(ui): respect Application destination.name in cluster summary calculation (#18081)
Signed-off-by: daftping <21245083+daftping@users.noreply.github.com>
2024-05-07 09:02:22 -04:00
github-actions[bot]
5c175e38c5 [Bot] docs: Update Snyk reports (#18080)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-05-07 12:57:43 +00:00
Lawrence Aiello
37c813bd82 docs: add rogo to users.md (#18074)
* chore: add Rogo to users

Signed-off-by: aiell0 <lawrence@rogodata.com>

* sign off

Signed-off-by: aiell0 <lawrence@rogodata.com>

---------

Signed-off-by: aiell0 <lawrence@rogodata.com>
2024-05-06 23:22:48 -10:00
dependabot[bot]
8aa88b6731 chore(deps): bump jinja2 from 3.0.3 to 3.1.4 in /docs (#18091)
Bumps [jinja2](https://github.com/pallets/jinja) from 3.0.3 to 3.1.4.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.0.3...3.1.4)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-06 14:36:14 -04:00
Andrew Jeffree
a2a0360cd8 feat(paths): Add support for glob patterns (#18055)
as per https://github.com/argoproj/argo-cd/issues/17825

Signed-off-by: Andrew Jeffree <andrew@jeffree.id.au>
2024-05-03 14:31:11 -04:00
Alexander Matyushentsev
ec09937fe0 fix: status.sync.comparedTo should use replace patch strategy (#18061)
* fix: status.sync.comparedTo should use replace patch strategy

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* add e2e tests

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

---------

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-05-03 11:03:50 -04:00
David Costa
8e66b3e4f2 Update kustomize.md (#18065)
typo in docs: managment -> management

Signed-off-by: David Costa <david@zarel.net>
2024-05-03 00:02:17 -10:00
Joe Bowbeer
4c096ed2cb docs: use compliant name in Generators-List.md (#18062)
Signed-off-by: Joe Bowbeer <joe.bowbeer@gmail.com>
2024-05-02 15:56:02 -04:00
Michael Haigh
220dee0200 Adding astra.netapp.io CRD health checks (#17999) 2024-05-01 19:22:23 +03:00
Rodolfo Martínez Vega
50027733db docs: Update Getting started documentation (#17975)
This PR adds some sentences to explain the process of "Syncing via UI" screenshots to have a good understanding of the process on the UI.

Signed-off-by: Rodolfo Martínez Vega <rodomar@outlook.com>
2024-05-01 08:28:06 -06:00
Max Gautier
b738f1fec4 docs: add soft documentation for ignoreMissingValueFiles (#17996)
The Helm source has the ability to ignore missing values files since
99d1dcad0 (feat: added a new Helm option ignoreMissingValueFiles,
2022-01-03).
This is however not obvious from reading the user guide on Helm.

Document the parameters along with a reference to the use case which
motivated it.

Signed-off-by: Max Gautier <mg@max.gautier.name>
2024-05-01 08:11:41 -06:00
dependabot[bot]
3ab8e266b4 chore(deps): bump library/registry in /test/container (#18040)
Bumps library/registry from `fb9c9ae` to `4fac7a8`.

---
updated-dependencies:
- dependency-name: library/registry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 10:45:01 +03:00
dependabot[bot]
ca75b60692 chore(deps): bump library/busybox in /test/e2e/multiarch-container (#18039)
Bumps library/busybox from `bb02074` to `6776a33`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 10:44:31 +03:00
Marc Arndt
a63068d06f fix: enable sha256 and sha512 for git ssh (#18028)
* fix: bumping the knownhosts to v1.2.2 since this contains a fix that allows for sha256 and sha512 algorithms when using git ssh

Signed-off-by: Marc Arndt <marc@marcarndt.com>
Signed-off-by: Marc Arndt <m.arndt@evana.de>

* chore: remove older version of module from go sum

Signed-off-by: Marc Arndt <m.arndt@evana.de>

---------

Signed-off-by: Marc Arndt <marc@marcarndt.com>
Signed-off-by: Marc Arndt <m.arndt@evana.de>
Co-authored-by: Marc Arndt <m.arndt@evana.de>
2024-04-30 09:12:52 -04:00
dependabot[bot]
1e6ca4d7af chore(deps): bump library/node from 21.7.3 to 22.0.0 in /test/container (#18022)
Bumps library/node from 21.7.3 to 22.0.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-04-30 12:32:30 +03:00
Daniel R. Dagfinrud
ba2ea258c6 docs: update wording in diffing.md (#18027)
* docs: update wording in diffing.md

The wording in "If you have a slash / in your pointer path, you can use the ~1 character" is inaccurate. The ~1 character is mandatory if you have a slash.

Signed-off-by: Daniel R. Dagfinrud <danieldagfinrud@gmail.com>

* docs: update wording in docs/user-guide/diffing.md

Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Daniel R. Dagfinrud <danieldagfinrud@gmail.com>

---------

Signed-off-by: Daniel R. Dagfinrud <danieldagfinrud@gmail.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-04-29 23:27:03 -10:00
dependabot[bot]
7003d06dc4 chore(deps): bump library/busybox in /test/e2e/multiarch-container (#18023)
Bumps library/busybox from `c3839dd` to `bb02074`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-30 10:47:58 +03:00
dependabot[bot]
737f7428a1 chore(deps): bump library/node from 21.7.3 to 22.0.0 in /ui-test (#18024)
Bumps library/node from 21.7.3 to 22.0.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-30 10:27:22 +03:00
Radon Rosborough
ba15569322 Document units for argocd_app_reconcile (#18018)
Signed-off-by: Radon Rosborough <rrosborough@plaid.com>
2024-04-29 20:47:50 -04:00
dependabot[bot]
c38c8a9aa3 chore(deps): bump library/ubuntu from 22.04 to 24.04 in /test/container (#17976)
Bumps library/ubuntu from 22.04 to 24.04.

---
updated-dependencies:
- dependency-name: library/ubuntu
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-29 22:43:30 +03:00
Alex Ellis
2a05ae02ab Add health status for OpenFaaS functions (#18015)
Adds test-case for Progressing, Degraded, Healthy and
Suspended, to avoid users having to update their Argo ConfigMaps
by hand.

Signed-off-by: Alex Ellis (OpenFaaS Ltd) <alexellis2@gmail.com>
2024-04-29 14:19:12 -04:00
dependabot[bot]
17cca81c09 chore(deps): bump bitnami/kubectl from 1.27 to 1.30 in /test/container (#18012)
Bumps bitnami/kubectl from 1.27 to 1.30.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-29 15:14:58 +03:00
github-actions[bot]
7581c20e92 [Bot] docs: Update Snyk reports (#18008)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-04-29 11:26:54 +03:00
Ishita Sequeira
c204f247d3 feat(cli): add support for multiple sources to sync command (#17808)
* update sync command

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* use arrays instead of map to display ApplicationManifetQuery fields in swagger

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* rebase and update logic for sync command

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* update conditions

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* update displayRevisions on OperationState

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* remove rerunreport file

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix index 0 out of bounds error

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* Address comments

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix codegen

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* rename GetSourcePtrBySourceIndex to GetSourcePtrByIndex

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* rename GetSourcePtrBySourcePosition to GetSourcePtrByPosition

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* rebase with master and resolve conflicts

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix codegen

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* Address feedback and add tests

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix unit test

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

---------

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-04-29 11:23:49 +03:00
Takumi Sue
e6200cae12 fix(appset): add debug logs around deleting ownerReferences and add warning docs about policy behavior (#18006)
* chore(appset): add logs for debug

Signed-off-by: mikutas <23391543+mikutas@users.noreply.github.com>

* fix(appset): remove finalizer regardless with deleteAllowed

Signed-off-by: mikutas <23391543+mikutas@users.noreply.github.com>

* docs: update about appset policy

Signed-off-by: mikutas <23391543+mikutas@users.noreply.github.com>

* fix: wrong log message

Signed-off-by: mikutas <23391543+mikutas@users.noreply.github.com>

* fix: log messages

Signed-off-by: mikutas <23391543+mikutas@users.noreply.github.com>

* fix: log message

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Signed-off-by: Takumi Sue <23391543+mikutas@users.noreply.github.com>

* docs: add explanation

Signed-off-by: mikutas <23391543+mikutas@users.noreply.github.com>

---------

Signed-off-by: mikutas <23391543+mikutas@users.noreply.github.com>
Signed-off-by: Takumi Sue <23391543+mikutas@users.noreply.github.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-04-28 19:26:12 -04:00
Lukas Aldershaab
5baba93721 chore: update notifications-engine to f4856710 (#17971)
* update notifications-engine

Signed-off-by: Lukas Peter Aldershaab <lukas.aldershaab@lego.com>

* Fix build of conflicting git-urls libraries

Signed-off-by: Lukas Peter Aldershaab <lukas.aldershaab@lego.com>

* align telegrom dependency with notifications-engine

Signed-off-by: Lukas Peter Aldershaab <lukas.aldershaab@lego.com>

* fix: codegen

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: Lukas Peter Aldershaab <lukas.aldershaab@lego.com>
Signed-off-by: pashakostohrys <pavel@codefresh.io>
Co-authored-by: pashakostohrys <pavel@codefresh.io>
2024-04-28 09:20:16 +00:00
Joe Bowbeer
575575a78a Fix post-delete finalizer in appset (#18003)
Signed-off-by: Joe Bowbeer <joe.bowbeer@gmail.com>
2024-04-26 16:41:32 -07:00
pasha-codefresh
96e796edff chore: fix codegen after security fix (#17982) 2024-04-26 07:44:39 -04:00
pasha-codefresh
57431b2177 Merge pull request from GHSA-9m6p-x4h2-6frq
* feat: limit jq.Run with timeout

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: ignore normalizer jq execution timeout as env variable

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: customize error message and add doc section

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: improve log and change a way how to get variable

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* chore: fix import`s order

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* chore: rename variable inside sts

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* chore: fix import order

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-04-26 12:24:32 +03:00
pasha-codefresh
e23060540f Merge pull request from GHSA-9m6p-x4h2-6frq
* feat: limit jq.Run with timeout

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: ignore normalizer jq execution timeout as env variable

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: customize error message and add doc section

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: improve log and change a way how to get variable

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* chore: fix import`s order

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* chore: rename variable inside sts

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* chore: fix import order

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-04-26 12:24:02 +03:00
yyzxw
334d5c5607 chore:change file name for readthedocs compatibility (#17978)
Signed-off-by: xiaowu.zhu <xiaowu.zhu@daocloud.io>
2024-04-26 12:20:39 +03:00
Cyril Houdellier
badac51530 feat: Add width change and full revision display for badge (#17502)
Signed-off-by: Cyril Houdellier <cyril.houdellier@amadeus.com>
2024-04-26 10:28:06 +05:30
Doug Goldstein
0f11dfb596 docs: document helm fileParameters / helm-set-file (#17822)
Added documentation for fileParameters in a helm source Application or
the --helm-set-file cli option from #2751. Added a note about #13220 so
users are aware. #17941 aims to remove this limitation so the warning
will be adjusted to mention the version that lands that support.

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2024-04-25 11:12:21 -04:00
dependabot[bot]
6d3abb36c2 chore(deps): bump library/node in /test/container (#17959)
Bumps library/node from `c384290` to `bda5312`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-25 00:11:51 -04:00
dependabot[bot]
b19a0d0f76 chore(deps): bump library/node in /test/container (#17946)
Bumps library/node from `162d92c` to `c384290`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-24 21:54:36 -04:00
g1franc
2dbe5c17d1 Update sync-kubectl.md - Correct indentation for a sample (#17953)
Correct indentation for a sample as "hook" element is supposed to be a child of syncStrategy

Signed-off-by: g1franc <guillaume.francois55@gmail.com>
2024-04-24 06:09:38 -07:00
Bulat Saifullin
fcdaee9857 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 <bulat@saifullin.ru>

* add back NormalizeJWTTokens

Signed-off-by: Bulat Saifullin <bulat@saifullin.ru>

* add tests

Signed-off-by: BulatSaif <bulat@parity.io>

* add fix

Signed-off-by: BulatSaif <bulat@parity.io>

---------

Signed-off-by: Bulat Saifullin <bulat@saifullin.ru>
Signed-off-by: BulatSaif <bulat@parity.io>
Co-authored-by: Soumya Ghosh Dastidar <44349253+gdsoumya@users.noreply.github.com>
2024-04-24 17:16:09 +05:30
rumstead
1eec8eb777 fix: use cmp vs reflect.DeepEqual for comparing Applications (#17861) (#17940)
* fix(compare): appset compare the child apps with cmp vs reflect

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* remove debug lines

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* remove debug lines

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

---------

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
2024-04-23 20:50:11 +00:00
Keith Chong
719dc83497 fix: Add Sources tab to show all sources of a multi-source app (#17939)
Signed-off-by: Keith Chong <kykchong@redhat.com>
2024-04-23 16:34:01 -04:00
Jakub Ciolek
56b796dc1c docs: Add AlphaSense to USERS.md (#17942)
Mention AlphaSense as a user.

Signed-off-by: Jakub Ciolek <jakub@ciolek.dev>
2024-04-23 15:54:17 -04:00
ChristianCiach
634645f32c docs: Mention configmap to enable new git file globbing by name (#17936)
Signed-off-by: Christian Ciach <christian.ciach@gmail.com>
2024-04-23 09:39:57 -04:00
dependabot[bot]
4f40c3e3e2 chore(deps): bump jlumbroso/free-disk-space (#17932)
Bumps [jlumbroso/free-disk-space](https://github.com/jlumbroso/free-disk-space) from 4d9e71b726748f254fe64fa44d273194bd18ec91 to 54081f138730dfa15788a46383842cd2f914a1be.
- [Release notes](https://github.com/jlumbroso/free-disk-space/releases)
- [Commits](4d9e71b726...54081f1387)

---
updated-dependencies:
- dependency-name: jlumbroso/free-disk-space
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-23 09:38:44 -04:00
dependabot[bot]
dec655c712 chore(deps): bump peter-evans/create-pull-request from 5.0.2 to 6.0.4 (#17931)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 5.0.2 to 6.0.4.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](153407881e...9153d834b6)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-23 09:38:02 -04:00
dependabot[bot]
589da837d6 chore(deps): bump thehanimo/pr-title-checker from 1.4.0 to 1.4.2 (#17933)
Bumps [thehanimo/pr-title-checker](https://github.com/thehanimo/pr-title-checker) from 1.4.0 to 1.4.2.
- [Release notes](https://github.com/thehanimo/pr-title-checker/releases)
- [Commits](0cf5902181...1d8cd483a2)

---
updated-dependencies:
- dependency-name: thehanimo/pr-title-checker
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-23 09:35:45 -04:00
dependabot[bot]
56a0da8575 chore(deps): bump slsa-framework/slsa-github-generator (#17934)
Bumps [slsa-framework/slsa-github-generator](https://github.com/slsa-framework/slsa-github-generator) from 1.10.0 to 2.0.0.
- [Release notes](https://github.com/slsa-framework/slsa-github-generator/releases)
- [Changelog](https://github.com/slsa-framework/slsa-github-generator/blob/main/CHANGELOG.md)
- [Commits](https://github.com/slsa-framework/slsa-github-generator/compare/v1.10.0...v2.0.0)

---
updated-dependencies:
- dependency-name: slsa-framework/slsa-github-generator
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-23 09:35:16 -04:00
Alexy Mantha
77c27c3c10 feat(appset): implement ResourceTree for ApplicationSets (#15741)
* update types

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* Update generated code

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* wip

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* add resource tree

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* Update generated code

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fix

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* cleanup

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* format

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fix lint

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* Update generated code

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fmt

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* add tests

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* cleanup

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fmt

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fix conflicts

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* codegen

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* regen

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fix codegen

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

---------

Signed-off-by: Alexy Mantha <alexy@mantha.dev>
2024-04-23 09:32:26 -04:00
Nolan Emirot
67e6c6cf94 docs: fix typp (#17927)
Signed-off-by: emirot <nolan.emirot@workday.com>
Co-authored-by: emirot <nolan.emirot@workday.com>
2024-04-22 21:57:50 +02:00
dependabot[bot]
50cec22d10 chore(deps): bump actions/upload-artifact from 4.3.2 to 4.3.3 (#17926)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.2 to 4.3.3.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](1746f4ab65...65462800fd)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-22 17:40:09 +00:00
Michael Crenshaw
f3f55ddd87 chore(deps): bump actions/*-artifact (#17923)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-04-22 12:32:28 -04:00
Michael Crenshaw
85e04f5bd4 docs(cli): remove docs for non-existing argocd admin commands (#17924) 2024-04-22 15:44:42 +00:00
github-actions[bot]
3e4d12c6c2 [Bot] docs: Update Snyk reports (#17912)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-04-22 14:32:44 +00:00
dependabot[bot]
cb32a140e0 chore(deps): bump golang.org/x/net from 0.21.0 to 0.23.0 (#17901)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.21.0 to 0.23.0.
- [Commits](https://github.com/golang/net/compare/v0.21.0...v0.23.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-19 14:32:59 -04:00
Michael Crenshaw
ba2e6acb01 chore: bump go version to 1.22.1 (#17895)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-04-19 11:57:48 +00:00
Ishita Sequeira
4f6a8dce80 remove mention of beta state from apps-in-any-namespace doc (#17896)
Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-04-19 10:52:07 +03:00
Michael Crenshaw
33f5714c83 chore: upgrade controller-gen from 0.4.1 to 0.14.0 (#17893)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-04-18 18:31:14 -04:00
Reed Palmer
3a46e8c1c7 Update USERS.md (#17891)
Signed-off-by: Reed Palmer <81371878+Palmer-Reed-bah@users.noreply.github.com>
2024-04-18 23:08:36 +03:00
dependabot[bot]
73d341a5a9 chore(deps): bump library/ubuntu in /test/container (#17879)
Bumps library/ubuntu from `77906da` to `1b8d8ff`.

---
updated-dependencies:
- dependency-name: library/ubuntu
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-04-18 21:52:45 +03:00
Alexander Matyushentsev
b8b4b51545 fix: UI Error caused by missing RBAC Permission (#10955)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-04-18 11:55:03 -04:00
Michael Crenshaw
1e35e685b2 chore: improve codegen error output (#17873)
* chore: improve codegen error output

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* remove accidental file

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-04-18 15:14:18 +00:00
dependabot[bot]
1f8acf4a30 chore(deps): bump code.gitea.io/sdk/gitea from 0.15.1 to 0.18.0 (#17880)
Bumps code.gitea.io/sdk/gitea from 0.15.1 to 0.18.0.

---
updated-dependencies:
- dependency-name: code.gitea.io/sdk/gitea
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-18 10:30:08 -04:00
Michał Małyska
1cffa15f0d add argocd-secret-replacer (#10494)
Adding new tool that can replace secret from sops. 
It replaces specific string with encrypted values also It provides ability to encode values to base64.
It is different from ksops in a way that it is not dependent on kustomize to generate secrets.

Signed-off-by: Michał Małyska <999598+mmalyska@users.noreply.github.com>
2024-04-18 11:50:15 +03:00
Ragnar Paide
ee020273c0 Update USERS.md (#17881)
Add Pipedrive.

Signed-off-by: Ragnar Paide <16119863+ragnarpa@users.noreply.github.com>
2024-04-18 10:47:30 +03:00
Michael Crenshaw
852f744265 fix(api): respect all allowed audiences, regardless of check order (#17876)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-04-17 20:42:58 -04:00
Alexander Matyushentsev
f91179f07e fix: invalid revision in re-used manifest cache (#17874)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-04-17 22:00:38 +00:00
Josh Wolf
b867c9ea66 fix: remove deprecated default cipher for golang >=1.22 (#17569)
* remove deprecated default cipher

Signed-off-by: Josh Wolf <josh@wolfs.io>

* regenerate CLI docs

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

---------

Signed-off-by: Josh Wolf <josh@wolfs.io>
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
Co-authored-by: Jann Fischer <jann@mistrust.net>
Co-authored-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-04-17 19:38:03 +00:00
Kota Kimura
db615ed1c5 chore: update gitops engine for force sync option (#5882) (#17866)
* chore: update gitops engine version

Signed-off-by: kkk777-7 <kota.kimura0725@gmail.com>

* add: e2e and docs for force sync options

Signed-off-by: kkk777-7 <kota.kimura0725@gmail.com>

* docs: Add warning description of force sync options

Signed-off-by: kkk777-7 <kota.kimura0725@gmail.com>

---------

Signed-off-by: kkk777-7 <kota.kimura0725@gmail.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-04-17 16:31:12 +00:00
Daco
1c6b6eb837 docs: fix metrics labels name in notification monitoring (#17869)
Signed-off-by: philippe.dacosta <philippe.dacosta@adevinta.com>
Co-authored-by: philippe.dacosta <philippe.dacosta@adevinta.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-04-17 17:39:14 +03:00
Matt Hughes
2031a07a51 fix: Pass logger to differ in diff command (#17871)
So that log messages are propagated up, this caused issues for me when
trying to diagnose an issue linked to issue #17811. I've just copied the
approach used e.g. in `controller/appcontroller.go` when calling
`argodiff.NewDiffConfigBuilder`.

Sample output before this change:

    $ argocd --loglevel debug --server argocd-system.dev.aws.uw.systems app diff dev-enablement/dev-enablement

    ===== apps/Deployment dev-enablement/go-docs ======
    272c272
    <             cpu: "0"
    ---
    >             cpu: 0m
    275c275
    <             cpu: "0"
    ---
    >             cpu: 0m

Output with this change:

    $ argocd --loglevel debug --server argocd-system.dev.aws.uw.systems app diff dev-enablement/dev-enablement
    INFO[0000] Could not unmarshal to object of type apps/v1, Kind=Deployment: json: unknown field "restartPolicy"
    INFO[0000] Could not unmarshal to object of type apps/v1, Kind=Deployment: json: unknown field "restartPolicy"

    ===== apps/Deployment dev-enablement/go-docs ======
    272c272
    <             cpu: "0"
    ---
    >             cpu: 0m
    275c275
    <             cpu: "0"
    ---
    >             cpu: 0m
    INFO[0000] Could not create new object of type argoproj.io/v1alpha1, Kind=Application: no kind "Application" is registered for version "argoproj.io/v1alpha1" in scheme "pkg/runtime/scheme.go:100"
    INFO[0000] Could not create new object of type argoproj.io/v1alpha1, Kind=Application: no kind "Application" is registered for version "argoproj.io/v1alpha1" in scheme "pkg/runtime/scheme.go:100"
    INFO[0000] Could not create new object of type traefik.containo.us/v1alpha1, Kind=IngressRoute: no kind "IngressRoute" is registered for version "traefik.containo.us/v1alpha1" in scheme "pkg/runtime/scheme.go:100"
    INFO[0000] Could not create new object of type traefik.containo.us/v1alpha1, Kind=IngressRoute: no kind "IngressRoute" is registered for version "traefik.containo.us/v1alpha1" in scheme "pkg/runtime/scheme.go:100"
    INFO[0000] Could not create new object of type traefik.containo.us/v1alpha1, Kind=IngressRoute: no kind "IngressRoute" is registered for version "traefik.containo.us/v1alpha1" in scheme "pkg/runtime/scheme.go:100"
    INFO[0000] Could not create new object of type traefik.containo.us/v1alpha1, Kind=IngressRoute: no kind "IngressRoute" is registered for version "traefik.containo.us/v1alpha1" in scheme "pkg/runtime/scheme.go:100"

Signed-off-by: Matt Hughes <mhughes@uw.co.uk>
2024-04-17 17:24:56 +03:00
isihu
60f3332568 document possibility to specify request timeout in plugin generator (#17872)
Signed-off-by: isihu <62214125+isihu@users.noreply.github.com>
2024-04-17 17:22:14 +03:00
dependabot[bot]
74805d55f6 chore(deps): bump library/golang in /test/container (#17865)
Bumps library/golang from `7d0dcbe` to `81811f8`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-17 09:16:50 +03:00
Keith Chong
f819870313 feat: Add Sources tab to show all sources of a multi-source app (#17274) (#17275)
* feat: Add Sources tab to show all sources of a multi-source app (#17274)

Signed-off-by: Keith Chong <kykchong@redhat.com>

* Update ui/src/app/applications/components/resource-details/resource-details.tsx

Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Signed-off-by: Keith Chong <kykchong@redhat.com>

* Remove getAppSources

Signed-off-by: Keith Chong <kykchong@redhat.com>

* Add address Ishita's comments. Add missing Ref field

Signed-off-by: Keith Chong <kykchong@redhat.com>

* Use single quotes

Signed-off-by: Keith Chong <kykchong@redhat.com>

---------

Signed-off-by: Keith Chong <kykchong@redhat.com>
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-04-16 17:40:01 -04:00
pasha-codefresh
a1472aed6b chore: add Octopus Deploy to USERS.md (#17858)
Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-04-16 17:34:16 -04:00
pasha-codefresh
48b636e32b chore: native client mock should be generated with go gen (#17864)
* fix: native client mock should be generated with go gen

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix: native client mock should be generated with go gen

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix: native client mock should be generated with go gen

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* adopt repository_test.go to new helm mock client

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-04-16 17:33:47 -04:00
Adrian Berger
e12fae8a5a fix: Excessive HTTP requests when navigating in list view (#17757)
Signed-off-by: Adrian Berger <adria.berger94@gmail.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-04-16 13:35:14 +03:00
Tais P. Hansen
4d527f8705 chore: upgrade redis to 7.0.15 (#17665)
Upgrade to latest stable 7.0.x version to fix CVEs:

CVE-2023-41056

Signed-off-by: Tais P. Hansen <taishansen@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-04-16 11:39:59 +03:00
dependabot[bot]
27b592e2a3 chore(deps): bump library/golang from 7d0dcbe to ff6cfbd (#17794)
Bumps library/golang from `7d0dcbe` to `ff6cfbd`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-16 10:37:43 +03:00
dependabot[bot]
a8b3663087 chore(deps): bump library/node from 21.7.1 to 21.7.3 in /ui-test (#17815)
Bumps library/node from 21.7.1 to 21.7.3.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-16 10:34:37 +03:00
dependabot[bot]
6263604dcd chore(deps): bump library/node from 21.7.1 to 21.7.3 in /test/container (#17816)
Bumps library/node from 21.7.1 to 21.7.3.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-16 10:32:53 +03:00
Soumya Ghosh Dastidar
957170edc8 fix: run codegen check in ci for docs (#17853) 2024-04-15 20:37:15 +00:00
Jann Fischer
c740412639 chore: Add rerunreport.txt to .gitignore (#17848)
Signed-off-by: jannfis <jann@mistrust.net>
2024-04-15 16:07:42 +00:00
github-actions[bot]
831bfc355c [Bot] docs: Update Snyk reports (#17829)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-04-15 17:56:37 +03:00
pullmerge
cbbb99d348 Fix some comments (#17830)
Signed-off-by: pullmerge <watchmessi@outlook.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-04-15 17:19:01 +03:00
pasha-codefresh
44894e9e43 fix: docker build fails due to 'http://deb.debian.org/debian buster-backports Release' does not have a Release file. (#17836)
* fix: docker build fails due to "The repository 'http://deb.debian.org/debian buster-backports Release' does not have a Release file."

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix: linter issue

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix codegen issue

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix e2e tests

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix linter

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-04-15 08:50:06 -04:00
pasha-codefresh
6646c6b102 Merge pull request from GHSA-2gvw-w6fj-7m3c
* chore: Update USERS.md (#17683)

Add Shield.com as one of the users in the USER.md file

Signed-off-by: suhas-chikkanna <162577490+suhas-chikkanna@users.noreply.github.com>

sec: validate project before execute action

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* sec: validate a project before execute an action

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
Co-authored-by: suhas-chikkanna <162577490+suhas-chikkanna@users.noreply.github.com>
2024-04-15 10:20:07 +03:00
Juho Syrjänen
659f426b72 docs: Add Metacore Games to USERS.md (#17827)
This PR adds Metacore Games to USERS.md. Metacore Games uses ArgoCD as part of our Kubernetes Platform and IDP.

Signed-off-by: Juho Syrjänen <juho.syrjanen@metacoregames.com>
2024-04-13 09:25:53 +02:00
Ishita Sequeira
922abefc81 fix(api): use arrays instead of map to display ApplicationManifetQuery fields in swagger (#17804)
* use arrays instead of map to display ApplicationManifetQuery fields in swagger

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix equality conditions for souce-position check

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

---------

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-04-12 16:07:31 -04:00
Jonathan West
5ac8d05201 fix: prevent leak of files to /dev/shm in corner cases (#17658) (#17659)
Signed-off-by: Jonathan West <jonwest@redhat.com>
2024-04-11 11:47:38 +00:00
Anton Hörnquist
0cf6fdb9ee docs: Add IFS to USERS.md (#17806)
Signed-off-by: Anton Hörnquist <anton.hornquist@gmail.com>
2024-04-11 09:37:46 +02:00
rumstead
4e433c6d86 fix(snyk): use version sort (#17798)
Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
2024-04-10 15:39:14 +00:00
Bryce Lowe
c2dfab5560 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 <blowe@patreon.com>

* fix: update verbiage of failing test

Signed-off-by: Bryce Lowe <blowe@patreon.com>

* feedback: test for policy and project

Signed-off-by: Bryce Lowe <blowe@patreon.com>

* fix: update test name

Signed-off-by: Bryce Lowe <blowe@patreon.com>

---------

Signed-off-by: Bryce Lowe <blowe@patreon.com>
2024-04-09 21:52:54 -04:00
Blake Pettersson
ebe4804974 chore: bump protobuf (#17788)
Similar to #17419, with the difference that this builds.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-04-09 18:09:15 -04:00
Keith Chong
4abc992928 docs: Proposal to support multi-source apps in the UI (#17106) (#17108)
* docs: Proposal to support multi-source apps in the UI (#17106)

Signed-off-by: Keith Chong <kykchong@redhat.com>

* Update docs/proposals/multiple-sources-for-applications-ui.md

Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Signed-off-by: Keith Chong <kykchong@redhat.com>

* Update docs/proposals/multiple-sources-for-applications-ui.md

Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Signed-off-by: Keith Chong <kykchong@redhat.com>

* Update docs/proposals/multiple-sources-for-applications-ui.md

Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Signed-off-by: Keith Chong <kykchong@redhat.com>

* Update docs/proposals/multiple-sources-for-applications-ui.md

Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Signed-off-by: Keith Chong <kykchong@redhat.com>

* Update docs/proposals/multiple-sources-for-applications-ui.md

Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Signed-off-by: Keith Chong <kykchong@redhat.com>

* Update docs/proposals/multiple-sources-for-applications-ui.md

Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Signed-off-by: Keith Chong <kykchong@redhat.com>

* Update docs/proposals/multiple-sources-for-applications-ui.md

Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Signed-off-by: Keith Chong <kykchong@redhat.com>

* Minor edits

Signed-off-by: Keith Chong <kykchong@redhat.com>

---------

Signed-off-by: Keith Chong <kykchong@redhat.com>
Co-authored-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2024-04-08 09:57:48 -04:00
Serg Shalavin
1d13dc2ea2 docs: Add CloudGeometry to USERS.md (#17774)
Signed-off-by: Serg Shalavin <sshalavin@cloudgeometry.io>
2024-04-08 07:27:39 -04:00
Alexy Mantha
a539f95597 chore: cleanup follow up for enforce manifest generate path (#15636) (#17761)
* cleanup

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* update docs

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

---------

Signed-off-by: Alexy Mantha <alexy@mantha.dev>
2024-04-07 13:26:33 -04:00
pasha-codefresh
cbafc13bdd feat: support grpc message size as env (#17728) 2024-04-06 04:19:05 +03:00
Young-Zen
496ac5e294 fix(cli): ARGOCD_OPTS supports --header and other parameters (#17553)
Signed-off-by: yanghaojia <2453883990@qq.com>
2024-04-05 09:37:16 -07:00
Ishita Sequeira
35deccb486 chore: rename source-indexes to source-positions (#17746)
* chore: rename source-indexes to source-positions

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* update documentation

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

---------

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-04-05 09:36:43 -04:00
Michael Crenshaw
040eb36740 fix(security): use Chainguard fork of git-urls (#17732)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-04-04 16:44:43 -04:00
AS
6523f251b8 chore(ui): improve the msg to user when deleteing the resource (#17734)
Signed-off-by: ashutosh16 <11219262+ashutosh16@users.noreply.github.com>
2024-04-04 16:06:50 -04:00
Alexy Mantha
4e46a5e8fa feat(controller): use manifest generate path during comparison (#14242) (#15636)
* squash commits

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* Update util/git/client.go

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fix error message

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* add git client options

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* Update generated code

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* run fmt

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fix tests

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* failed gen

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* tweak logs and rename cache

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* validate revisions

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fix tests

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fix tests

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fmt

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fix linting

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fixes from review

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* generate

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* fix

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

* use log context

Signed-off-by: Alexy Mantha <alexy@mantha.dev>

---------

Signed-off-by: Alexy Mantha <alexy@mantha.dev>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-04-04 16:01:11 -04:00
dependabot[bot]
618a4e914b chore(deps): bump library/busybox in /test/e2e/multiarch-container (#17664)
Bumps library/busybox from `650fd57` to `c3839dd`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-04-04 09:27:15 -04:00
dependabot[bot]
3654d7f941 chore(deps): bump library/golang from 1.21.3 to 1.21.9 (#17722)
Bumps library/golang from 1.21.3 to 1.21.9.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-04 09:26:23 -04:00
pasha-codefresh
c09e5b0003 chore: add v2.11 release cadence (#17727) 2024-04-04 12:24:42 +00:00
dependabot[bot]
a4b8c6645b chore(deps): bump library/golang in /test/container (#17721)
Bumps library/golang from 1.21.8 to 1.21.9.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-04 15:08:50 +03:00
Alexander Matyushentsev
44da2063c7 fix: fix calculating patch for respect ignore diff feature (#17693)
* test: unit test for respectIgnoreDifferences bug

Signed-off-by: Jesse Suen <jesse@akuity.io>

* test: simplify unit test

Signed-off-by: Jesse Suen <jesse@akuity.io>

* fix: fix calculating patch for respect ignore diff feature

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

---------

Signed-off-by: Jesse Suen <jesse@akuity.io>
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
Co-authored-by: Jesse Suen <jesse@akuity.io>
2024-04-03 22:56:59 +00:00
Ishita Sequeira
4b11524242 feat(cli): add support for multiple sources to app diff|manifests command with revisions flag (#17650)
* Add support for multiple source to manifests --revision command

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* Update GetManifests to support multiple sources

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* remove testing logs

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* update cli docs

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* add extra validation for diff command

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix lint

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* Empty-Commit

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* revert apimachinery version

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* Update docs based on comments

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

---------

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-04-03 18:26:56 +00:00
Petr Šťastný
c8d912f104 docs/user-guide/helm.md: fix typo valuesFile (#17716)
Signed-off-by: Petr Šťastný <petr@stastny.eu>
2024-04-03 14:08:25 -04:00
Lukasz
614f44c26c feat(server): Add maxPodLogsToRender setting (#14617)
Signed-off-by: lukasz <lukasz.luszczynski@getyourguide.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-04-03 13:06:12 -04:00
Philipp Trulson
affd1cb251 fix(ui): Fix color generation for pod name in logs viewer. Fixes #17704 (#17706)
* Fix color generation for pod name in logs viewer

Signed-off-by: Philipp Trulson <der-eismann@users.noreply.github.com>

* Add rebuy to users.md

Signed-off-by: Philipp Trulson <der-eismann@users.noreply.github.com>

---------

Signed-off-by: Philipp Trulson <der-eismann@users.noreply.github.com>
2024-04-02 16:12:06 -04:00
Kostis (Codefresh)
405949b127 docs: clarify multiple sources example (#17698)
Signed-off-by: Kostis (Codefresh) <39800303+kostis-codefresh@users.noreply.github.com>
2024-04-02 13:07:58 -04:00
suhas-chikkanna
f287daba0d chore: Update USERS.md (#17683)
Add Shield.com as one of the users in the USER.md file

Signed-off-by: suhas-chikkanna <162577490+suhas-chikkanna@users.noreply.github.com>
2024-04-01 11:08:38 -04:00
Suraj yadav
7deafc4014 feat(ui): metadata.annotations: too long message Improved (#17452)
* metadata.annotations: too long

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* added as a default case

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
2024-03-31 22:16:36 -04:00
Mangaal
766a6da2cd feat: Enhance ArgoCD CLI: Dynamic Repo Server Retrieval with --core and --refresh Flags (#17613)
* add const key value for ComponentRepoServer

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* update NewRepoServerClient() to look for service with  ComponentRepoServer labels , if the label exist construct label selector PortForward

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* add comment for the new constants

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* instead of passing nil which leads to  nil ptr referance error, pass empty ClusterSharding{}

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* check for operator install repo server name

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* handle empty nil ptr dereference error

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* handle  nil prt dereference

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* typo correction

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* run clidocsgen

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

---------

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>
2024-03-29 14:49:16 -04:00
Kostis (Codefresh)
b711c5b7d7 docs: added warning for multiple sources (#17670)
* docs: added warning for multiple sources

Signed-off-by: Kostis (Codefresh) <39800303+kostis-codefresh@users.noreply.github.com>

* docs: minor spelling

Signed-off-by: Kostis (Codefresh) <39800303+kostis-codefresh@users.noreply.github.com>

---------

Signed-off-by: Kostis (Codefresh) <39800303+kostis-codefresh@users.noreply.github.com>
2024-03-29 10:00:50 -04:00
Deniz Erdogan
e26f4fbdc1 docs: 2 link fixes + hint (#17657)
* Update security.md

fix RBAC link

Signed-off-by: Deniz Erdogan <91744937+deer-wmde@users.noreply.github.com>

* Update security.md

Signed-off-by: Deniz Erdogan <91744937+deer-wmde@users.noreply.github.com>

* Update security.md

fix link to application-controller role

Signed-off-by: Deniz Erdogan <91744937+deer-wmde@users.noreply.github.com>

* Update security.md

Signed-off-by: Deniz Erdogan <91744937+deer-wmde@users.noreply.github.com>

---------

Signed-off-by: Deniz Erdogan <91744937+deer-wmde@users.noreply.github.com>
2024-03-28 04:36:35 -10:00
Leonardo Luz Almeida
8631e7ef9b docs: fix contrib meeting time description (#17655)
Signed-off-by: Leonardo Luz Almeida <leoluz@users.noreply.github.com>
2024-03-28 09:57:32 -04:00
pasha-codefresh
ae29279cbe Merge pull request from GHSA-jhwx-mhww-rgc3
* sec: limit helm index max size

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* sec: limit helm index max size

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: fix tests and linter

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-03-28 14:38:03 +02:00
dependabot[bot]
53b08426bc chore(deps): bump express from 4.17.3 to 4.19.2 in /ui (#17648)
Bumps [express](https://github.com/expressjs/express) from 4.17.3 to 4.19.2.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.17.3...4.19.2)

---
updated-dependencies:
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-28 13:13:55 +02:00
olivier beyler
4b80393108 Update USERS.md (#17651)
Add arturia as users

Signed-off-by: olivier beyler <beyler_olivier@yahoo.fr>
2024-03-28 00:41:21 -04:00
dependabot[bot]
31aa4d9af9 chore(deps): bump follow-redirects from 1.15.5 to 1.15.6 in /ui-test (#17541)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.5 to 1.15.6.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.5...v1.15.6)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-27 15:56:27 -04:00
github-actions[bot]
e9547bce42 [Bot] docs: Update Snyk reports (#17601)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-03-27 18:16:25 +00:00
treble-snake
442dac12a7 docs(user-guide): fix a typo (#17642)
Signed-off-by: treble-snake <treble.snake@gmail.com>
2024-03-27 16:39:58 +02:00
danqixu
ad372cf716 wrap error for SyncKeyRingFromDirectory (#17633)
Signed-off-by: danqixu <yzxudanqi@gmail.com>
2024-03-27 09:22:21 -04:00
Michael Crenshaw
1bddee2e5d fix(cmp): pass env to plugin discovery (#13947)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Jann Fischer <jann@mistrust.net>
2024-03-26 12:44:00 -04:00
Wout Scheepers
12ccb52498 docs(goTemplate): Fix bullet list (#17611)
Signed-off-by: Wout Scheepers <wscheep@users.noreply.github.com>
2024-03-26 09:38:26 -04:00
Charles Coupal-Jetté
295dff6a38 fix: Appcontroller respects sync windows (#16492)
* fix: Appcontroller keeps op running when denied by sync window

Signed-off-by: Charles Coupal-Jetté <charles.coupaljette@goto.com>

* fix: Update test name

Signed-off-by: Charles Coupal-Jetté <charles.coupaljette@goto.com>

---------

Signed-off-by: Charles Coupal-Jetté <charles.coupaljette@goto.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-03-26 08:45:35 -04:00
Justin Marquis
a5a499a2c6 chore: update and fix scorecard (#17617)
Signed-off-by: Justin Marquis <justin@akuity.io>
2024-03-25 19:18:09 +00:00
Jann Fischer
f87897c53c chore: Bump Golang to 1.21.8 (#17616)
Signed-off-by: jannfis <jann@mistrust.net>
2024-03-25 13:20:13 -04:00
Mangaal
8cf03812a1 fix: flaky test - app history command not printing source in consistent order (#17615)
* instead if ranging over the map varHistory to print the history, inroduced a string array varHistoryKeys

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* update unit test expectation, remove new line in the beginning

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

---------

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>
2024-03-25 16:58:56 +00:00
Mangaal
38d86a911e feat: Update command argocd app history to support multiple sources (#17530)
* update argocd app history command to print app history group by thier sources along with all the REVISIONS

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* upadte unit test to ahve both Source and Sources and update function to overlooked source if sources is persent

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* remove magic no 7 and introduc a variable MAX_ALLOWED_REVISIONS

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* remove extra unit test

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* remove extra unit test TestPrintApplicationHistoryTableForWhenBothSourcesAndSourceFiledsExist()

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

---------

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-03-25 11:29:03 -04:00
Nathan Romriell
c4fdc54195 fix(repo-server): excess git requests, add shared cache lock on revisions (Issue #14725) (#17109)
* fix(repo-server): excess git requests, cache lock on revisions

Signed-off-by: nromriell <nateromriell@gmail.com>

* fix: pr feedback, simplify, add configurable variable

Signed-off-by: nromriell <nateromriell@gmail.com>

* fix: codegen, lint

Signed-off-by: nromriell <nateromriell@gmail.com>

* fix: test print, no opts set, var type nit

Signed-off-by: nromriell <nateromriell@gmail.com>

* chore: add additional logging for unexpected cache error

Signed-off-by: nromriell <nateromriell@gmail.com>

---------

Signed-off-by: nromriell <nateromriell@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-03-25 11:26:14 -04:00
Vipin M S
37c5f4d8ee Adds count of resource on resource tile (#14904)
Signed-off-by: Vipin M S <vipinachar2016@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-03-24 01:56:54 +00:00
Alexandre Gaudreault
a49880e0a5 fix: invalid badge validation (#15507) (#17580)
* fix: invalid badge validation

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* use util methods

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* rfc accept both lower and upper

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix unit test affecting each other with var modification

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Co-authored-by: Jann Fischer <jann@mistrust.net>
2024-03-23 16:35:38 -04:00
dependabot[bot]
2b28683419 chore(deps): bump ip from 1.1.5 to 1.1.9 in /ui (#17256)
Bumps [ip](https://github.com/indutny/node-ip) from 1.1.5 to 1.1.9.
- [Commits](https://github.com/indutny/node-ip/compare/v1.1.5...v1.1.9)

---
updated-dependencies:
- dependency-name: ip
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-03-22 15:45:11 -04:00
dependabot[bot]
ec7b49d82d chore(deps): bump docker/login-action from 2.2.0 to 3.1.0 (#17524)
Bumps [docker/login-action](https://github.com/docker/login-action) from 2.2.0 to 3.1.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](465a07811f...e92390c5fb)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-22 19:08:38 +00:00
dependabot[bot]
f0490090cd chore(deps): bump follow-redirects from 1.15.5 to 1.15.6 in /ui (#17542)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.5 to 1.15.6.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.5...v1.15.6)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-22 14:22:20 -04:00
dependabot[bot]
427965c497 chore(deps-dev): bump postcss from 8.4.37 to 8.4.38 in /ui (#17582)
Bumps [postcss](https://github.com/postcss/postcss) from 8.4.37 to 8.4.38.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.37...8.4.38)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-22 14:21:51 -04:00
dependabot[bot]
7350a55e57 chore(deps): bump webpack-dev-middleware from 5.3.1 to 5.3.4 in /ui (#17598)
Bumps [webpack-dev-middleware](https://github.com/webpack/webpack-dev-middleware) from 5.3.1 to 5.3.4.
- [Release notes](https://github.com/webpack/webpack-dev-middleware/releases)
- [Changelog](https://github.com/webpack/webpack-dev-middleware/blob/v5.3.4/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-middleware/compare/v5.3.1...v5.3.4)

---
updated-dependencies:
- dependency-name: webpack-dev-middleware
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-22 14:21:14 -04:00
dependabot[bot]
3ec63b222c chore(deps): bump slsa-framework/slsa-github-generator (#17593)
Bumps [slsa-framework/slsa-github-generator](https://github.com/slsa-framework/slsa-github-generator) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/slsa-framework/slsa-github-generator/releases)
- [Changelog](https://github.com/slsa-framework/slsa-github-generator/blob/main/CHANGELOG.md)
- [Commits](https://github.com/slsa-framework/slsa-github-generator/compare/v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: slsa-framework/slsa-github-generator
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-22 13:11:54 -04:00
Jann Fischer
d11e146ab5 chore: Fix linter issue with session manager (#17597)
Signed-off-by: jannfis <jann@mistrust.net>
2024-03-22 15:05:18 +00:00
dependabot[bot]
1c938e2aea chore(deps-dev): bump postcss from 8.4.36 to 8.4.37 in /ui (#17573)
Bumps [postcss](https://github.com/postcss/postcss) from 8.4.36 to 8.4.37.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.36...8.4.37)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-20 07:29:58 -04:00
Suraj yadav
5ada5c2810 feat(UI): Added link for docs to add clusters (#17395)
* cluster-add-link

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* docs

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* docs-panel

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* added

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* fixed

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
2024-03-19 23:06:34 -04:00
Ishita Sequeira
ed0218f98e feat: add cli commands to create/set/unset/edit sources for multi-source application (#17425)
* "feat:add cli commands to create/set/unset/edit sources for multi-source app"

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fixed the ci failure

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* update commands

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* error out if source-index not specified for multi-source applications

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fixed the ci failure

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix tests

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* set 0 as default source index for app create

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* add index to ParameterOverrides function

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* do not allow overrides for applications with multiple sources

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* update tests

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* remove create with override example

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* address comments

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* update tests

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* update examples in docs

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* update logs

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* Add test and update docs

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

---------

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-03-18 11:15:08 -07:00
ario0
997688e94b docs: mention that the argocd diff command does not include secrets (#15950)
* doc(cli): update argocd_app_diff

Adding the fact that secrets are ignored by the diff (not really stated in the doc so far)

Signed-off-by: ario0 <118843430+ario0@users.noreply.github.com>

* doc: remove whitespace

Signed-off-by: ario0 <118843430+ario0@users.noreply.github.com>

---------

Signed-off-by: ario0 <118843430+ario0@users.noreply.github.com>
Signed-off-by: Alexis Renard <renard.alexis@hotmail.fr>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-03-18 10:47:47 -07:00
dependabot[bot]
09407a21be chore(deps): bump library/registry in /test/container (#17554)
Bumps library/registry from `f4e1b87` to `fb9c9ae`.

---
updated-dependencies:
- dependency-name: library/registry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-18 19:04:55 +02:00
dependabot[bot]
16fc00841e chore(deps-dev): bump postcss from 8.4.35 to 8.4.36 in /ui (#17555)
Bumps [postcss](https://github.com/postcss/postcss) from 8.4.35 to 8.4.36.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.35...8.4.36)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-18 19:03:38 +02:00
jannfis
d69c61ae1a Merge pull request from GHSA-6v85-wr92-q4p7
* fix: Fix concurrency issue in session manager

Signed-off-by: jannfis <jann@mistrust.net>

* Add note that modification to the map must be done in a thread safe manner

* chore: fix linter issues

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: jannfis <jann@mistrust.net>
Signed-off-by: pashakostohrys <pavel@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: pashakostohrys <pavel@codefresh.io>
2024-03-18 03:59:06 -04:00
pasha-codefresh
6596e088ac Merge pull request from GHSA-2vgg-9h6w-m454
* feat: pick random user and exclude admin user and current user from deletion candidates

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* feat: increase default max cache size

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* add nil protection

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* Update util/session/sessionmanager.go

Signed-off-by: Dan Garfield <dan@codefresh.io>

Signed-off-by: Dan Garfield <dan@codefresh.io>

* chore: fix linter issues

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-03-18 03:58:18 -04:00
Mangaal
63a72ee1e7 docs: Update the status of the feature, app in any namespace, from beta to stable (#17529)
* Update the status of the feature, app in any namespace, from beta to stable

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* adding warning and removing **Current feature state**

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

---------

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>
2024-03-15 17:26:32 -04:00
AS
2f58d73612 fix(ui): add confirmation box in resource summary delete action (#17485)
Signed-off-by: ashutosh16 <11219262+ashutosh16@users.noreply.github.com>
2024-03-15 12:06:25 -04:00
dependabot[bot]
2b75efd24a chore(deps): bump docker/build-push-action from 5.2.0 to 5.3.0 (#17537)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.2.0 to 5.3.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](af5a7ed5ba...2cdde995de)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-15 11:03:28 -04:00
David Bunn
aaabb050b2 chore(deps): upgrade helm to 3.14.3 (#17531)
* chore(deps): upgrade helm to 3.14.3

Signed-off-by: David Bunn <david.bunn@prodigygame.com>

* chore(deps): upgrade helm to 3.14.3

Signed-off-by: David Bunn <david.bunn@prodigygame.com>

---------

Signed-off-by: David Bunn <david.bunn@prodigygame.com>
2024-03-14 17:33:20 +00:00
danqixu
4a92ab782f chore: Add error messages to return statements in BlockingDial function (#17521)
* Add error messages to return statements in BlockingDial function

Signed-off-by: danqixu <yzxudanqi@gmail.com>

* amend error wrapping from %s to %w

Signed-off-by: danqixu <yzxudanqi@gmail.com>

---------

Signed-off-by: danqixu <yzxudanqi@gmail.com>
2024-03-14 03:33:40 +00:00
dependabot[bot]
739fa0c26e chore(deps): bump actions/checkout (#17493)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3df4ab11eba7bda6032a0b82a6bb43b11571feac to 8410ad0602e1e429cee44a835ae9f77f654a6694.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](3df4ab11eb...8410ad0602)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-13 23:27:04 -04:00
Alexander Matyushentsev
138b37bd6c fix: Argo CD unnecessary enforce sequential helm manifest generation for one chart (#17518)
* fix: Argo CD unnecessary enforce sequential helm manifest generation for one chart

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* Update docs/operator-manual/high_availability.md

Signed-off-by: Dan Garfield <dan@codefresh.io>

---------

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-03-13 23:39:39 +00:00
Andreas Hunkeler
77899cb285 docs: add attestation of SBOM to release assets in signed-release-assets.md (#17520)
Closes https://github.com/argoproj/argo-cd/issues/17200.

Signed-off-by: Andreas Hunkeler <karneades@protonmail.com>
2024-03-13 15:06:30 -06:00
Savely Kalinov
f0b03071fc feat: Add support to enable FullTimeStamp in logging (#15127)
* Add support to enable FullTimeStamp in logging
Signed-off-by: skalinov <skalinov@tradingview.com>

* fix: Fix go linter file exist issue
Signed-off-by: skalinov <skalinov@tradingview.com>

* fix: Remove --skip-pkg-cache
Signed-off-by: skalinov <skalinov@tradingview.com>

* Update util/log/logrus_test.go

Use custom set env for prevent linter to be failed

Signed-off-by: pasha-codefresh <pavel@codefresh.io>

* Update common/common.go

Signed-off-by: Dan Garfield <dan@codefresh.io>

* Update util/log/logrus_test.go

Signed-off-by: pasha-codefresh <pavel@codefresh.io>

* Update util/log/logrus_test.go

remove os import

Signed-off-by: pasha-codefresh <pavel@codefresh.io>

* Update util/log/logrus_test.go

sort dependencies

Signed-off-by: pasha-codefresh <pavel@codefresh.io>

* fix formatting

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pasha-codefresh <pavel@codefresh.io>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: pashakostohrys <pavel@codefresh.io>
Co-authored-by: skalinov <skalinov@tradingview.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-03-13 20:19:26 +00:00
Michael Crenshaw
3b8f673f06 Merge pull request from GHSA-g623-jcgg-mhmm
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-03-13 14:28:43 -04:00
RyotaK
479b5544b5 Merge pull request from GHSA-jwv5-8mqv-g387
* fix: Validate external URLs for applicatins

Signed-off-by: Ry0taK <49341894+Ry0taK@users.noreply.github.com>

* fix(ui): remove invalid external-link

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* linting

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

---------

Signed-off-by: Ry0taK <49341894+Ry0taK@users.noreply.github.com>
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-03-13 14:26:47 -04:00
Blake Pettersson
51cfd50dd9 fix: elements should be optional (#17424)
A bug was reported, where an applicationset with an empty elements
array, when created with `argocd appset create <filename>.yaml` gets a
`...list.elements: Required value` error.

My hypothesis is that when calling the K8s API, golang JSON marshalling
mangles the empty `elements` array to `nil`, rather than creating an
empty array when submitting the `POST`.

Still need to figure out why the same setup seemingly works fine when
the same appset is in an app-of-apps.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-03-13 09:52:19 -07:00
Hoang Quoc Trung
85a2145401 Add documentation for google transitive groups (#9487)
Signed-off-by: Trung <trung.hoang@pricehubble.com>
Co-authored-by: Michael Crenshaw <michael@crenshaw.dev>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-03-13 17:39:26 +02:00
Mario Adrián Domínguez González de Eiris
27c174384b docs: Add note in installation step 1 with argocd cli (#8030)
* Add note in installation stesps

Added notes in installation step 1: 
kubectl config set-context --current --namespace=argocd

* Updated doc

* Update docs/getting_started.md

Signed-off-by: Dan Garfield <dan@codefresh.io>

---------

Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-03-13 17:26:50 +02:00
Harshvir Potpose
be69bcc010 docs: added all available fields for applicationset.yaml #16095 (#16104)
* adding all available filds for generators

Signed-off-by: Harshvir Potpose <hpotpose62@gmail.com>

* add remaining fields in applicationset.yml

Signed-off-by: Harshvir Potpose <hpotpose62@gmail.com>

* Update docs/operator-manual/applicationset.yaml

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Harshvir Potpose <122517264+akagami-harsh@users.noreply.github.com>

* Update docs/operator-manual/applicationset.yaml

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Harshvir Potpose <122517264+akagami-harsh@users.noreply.github.com>

* Update docs/operator-manual/applicationset.yaml

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Harshvir Potpose <122517264+akagami-harsh@users.noreply.github.com>

* Update docs/operator-manual/applicationset.yaml

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Harshvir Potpose <122517264+akagami-harsh@users.noreply.github.com>

* fix

Signed-off-by: Harshvir Potpose <hpotpose62@gmail.com>

---------

Signed-off-by: Harshvir Potpose <hpotpose62@gmail.com>
Signed-off-by: Harshvir Potpose <122517264+akagami-harsh@users.noreply.github.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-03-13 15:24:52 +00:00
Dan Garfield
f4bb860fb8 Make evergreen (#17507)
This example uses an old revision `v1.0.1` instead it should just use stable.

Signed-off-by: Dan Garfield <dan@codefresh.io>
2024-03-13 17:23:57 +02:00
dependabot[bot]
565aa8e1f5 chore(deps): bump library/node in /test/container (#17494)
Bumps library/node from `f358dfc` to `b9ccc4a`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-03-13 12:12:57 +02:00
dependabot[bot]
e4885db6ad chore(deps): bump library/redis in /test/container (#17496)
Bumps library/redis from `e647cfe` to `7dd7070`.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-03-13 10:49:02 +02:00
dependabot[bot]
0b5d9afd40 chore(deps): bump library/golang in /test/container (#17495)
Bumps library/golang from `34ce21a` to `0b55ab8`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-13 09:51:49 +02:00
dependabot[bot]
2a747c65ed chore(deps): bump library/node from 21.7.0 to 21.7.1 in /ui-test (#17498)
Bumps library/node from 21.7.0 to 21.7.1.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-13 09:49:43 +02:00
Xavier Krantz
5b77e8d448 docs(EKS): Fix ArgoCD management role AssumeRole policy for IRSA (#17455)
Signed-off-by: Xavier Krantz <xakraz@gmail.com>
2024-03-12 21:46:00 -04:00
similark
86369ca71d fix(appset): keep reconciling even when params error occurred (#17062)
* fix(appset): keep reconcile even when params error occurred

Signed-off-by: Or Koren <or.koren@similarweb.com>

* requeue on generator rendering error

Signed-off-by: Or Koren <or.koren@similarweb.com>

* test ignoring partial rendering errors

Signed-off-by: Or Koren <or.koren@similarweb.com>

* e2e test create app with param error

Signed-off-by: Or Koren <or.koren@similarweb.com>

---------

Signed-off-by: Or Koren <or.koren@similarweb.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-03-12 21:20:28 -04:00
jannfis
7cfb9d6e13 chore: Support running and testing locally using podman instead of docker (#17481)
* chore: Support rootless podman for run/test

Signed-off-by: jannfis <jann@mistrust.net>

* Note DOCKER env in docs

Signed-off-by: jannfis <jann@mistrust.net>

---------

Signed-off-by: jannfis <jann@mistrust.net>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-03-13 00:02:20 +00:00
Michael Crenshaw
ff055300a2 docs: remove configManagementPlugins from argocd-cm.yaml (#17486)
That field is no longer supported.

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-03-12 16:13:19 -04:00
dependabot[bot]
de44e14d90 chore(deps): bump docker/build-push-action from 5.1.0 to 5.2.0 (#17463)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](4a13e500e5...af5a7ed5ba)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-03-12 13:33:37 -04:00
jannfis
e60996814e chore: Fix containerized toolchain (#17480)
Signed-off-by: jannfis <jann@mistrust.net>
2024-03-12 19:09:39 +02:00
Pablo Aguilar
57d6e6557b fix: registry argument to be only the host instead full URL (#17381)
Signed-off-by: Pablo Aguilar <pablo.aguilar@outlook.com.br>
2024-03-12 10:21:53 -04:00
pasha-codefresh
dd29300fc1 fix(notifications): Helm.GetParameterValueByName should take helm.parametes first (#17472)
* fix: Helm.GetParameterValueByName should take helm.parametes first

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix linters

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: pashakostohrys <pavel@codefresh.io>
2024-03-12 10:06:24 -04:00
dependabot[bot]
dc242da748 chore(deps): bump library/golang in /test/container (#17415)
Bumps library/golang from 1.21.3 to 1.22.1.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-12 10:40:54 +02:00
dependabot[bot]
76c64796cc chore(deps): bump library/node from 21.6.2 to 21.7.1 in /test/container (#17475)
Bumps library/node from 21.6.2 to 21.7.1.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-12 10:39:43 +02:00
Jonas Bakken
6ca29a3c0b docs: fix kustomize example resources url (#17468)
Signed-off-by: Jonas Bakken <jonasbakken@protonmail.com>
2024-03-11 19:18:18 +02:00
github-actions[bot]
cc235e4a06 [Bot] docs: Update Snyk reports (#17458)
Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
2024-03-11 15:57:49 +00:00
Anirudh Sudhir
05eea87162 feat: add option manual to the --sync-policy flag of the app create command (#17459)
* feat: add sync policy option 'manual' for app create command

Signed-off-by: Anirudh Sudhir <anirudh.sudhir1@gmail.com>

* chore: Update tests to reflect sync policy option changes

Signed-off-by: Anirudh Sudhir <anirudh.sudhir1@gmail.com>

---------

Signed-off-by: Anirudh Sudhir <anirudh.sudhir1@gmail.com>
2024-03-11 16:36:15 +02:00
avoidalone
085ed0f65a chore: remove repetitive words (#17464)
Signed-off-by: avoidalone <wuguangdong@outlook.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-03-11 14:27:46 +00:00
dependabot[bot]
9b965700b3 chore(deps): bump library/ubuntu in /test/container (#17414)
Bumps library/ubuntu from `f9d633f` to `77906da`.

---
updated-dependencies:
- dependency-name: library/ubuntu
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-11 16:24:24 +02:00
mamccorm
31776d49f4 make CGO_ENABLED configurable (#17462)
Signed-off-by: Mark McCormick <mark.mccormick@chainguard.dev>
2024-03-11 13:51:53 +02:00
dependabot[bot]
de4cac4165 chore(deps): bump library/node from 21.6.2 to 21.7.0 in /ui-test (#17444)
Bumps library/node from 21.6.2 to 21.7.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-11 13:19:18 +02:00
dependabot[bot]
0fe1acb357 chore(deps): bump library/busybox in /test/e2e/multiarch-container (#17445)
Bumps library/busybox from `3fbc632` to `650fd57`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-11 13:17:13 +02:00
Joe Wingard
da49d3eed9 add Oncourse Home (#17457) 2024-03-11 10:50:40 +00:00
Ikko Eltociear Ashimine
542890f739 docs: Update site.md (#17454)
erros -> errors

Signed-off-by: Ikko Eltociear Ashimine <eltociear@gmail.com>
2024-03-09 08:12:48 -05:00
Aiman Ismail
fd3462e9c0 docs: dex google oidc: add note on dex connector type (#17453)
Signed-off-by: Aiman Ismail <m.aimanismail@gmail.com>
2024-03-08 18:58:03 -05:00
Justin Marquis
1901cb56bc chore: update slsa3 generate (#17451)
Signed-off-by: Justin Marquis <justin@akuity.io>
2024-03-08 18:44:19 +00:00
Justin Marquis
3fee8cbf81 chore: update cosign and version (#17441)
* chore: update cosign and version

Signed-off-by: Justin Marquis <justin@akuity.io>

* fix typo

Signed-off-by: Justin Marquis <justin@akuity.io>

---------

Signed-off-by: Justin Marquis <justin@akuity.io>
2024-03-08 07:09:02 -05:00
Nguyen Thai
98a888ed52 Fixed project parameter docs for Gitlab pull request generator (#17429)
Signed-off-by: Nguyen Thai <tknguyen@linagora.com>
2024-03-07 22:32:34 -05:00
Albin Björk
7bb92d7d61 docs: re-worded updated a link in release-process-and-cadance.md (#17438)
Signed-off-by: AlbinB97 <devalbinbjork@gmail.com>
2024-03-07 22:19:01 -05:00
Collin Walker
2b6b9bf93e chore: Fix Helm Installation Breaking on Mac (#17426)
* fix helm installation to work with mac

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* fix checksums

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* change install filename and makefile

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* change name to just helm - fix dockerfile

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

---------

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>
2024-03-07 20:35:37 -05:00
dependabot[bot]
2ad06a6308 chore(deps): bump github.com/go-jose/go-jose/v3 from 3.0.1 to 3.0.3 (#17442)
Bumps [github.com/go-jose/go-jose/v3](https://github.com/go-jose/go-jose) from 3.0.1 to 3.0.3.
- [Release notes](https://github.com/go-jose/go-jose/releases)
- [Changelog](https://github.com/go-jose/go-jose/blob/v3.0.3/CHANGELOG.md)
- [Commits](https://github.com/go-jose/go-jose/compare/v3.0.1...v3.0.3)

---
updated-dependencies:
- dependency-name: github.com/go-jose/go-jose/v3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-07 19:36:25 -05:00
Carlos Santana
edc6f5f39e feat: Allow mkdocs to livereload when using docker (#17383)
* feat: Allow mkdocs to livereload when using docker

Signed-off-by: Carlos Santana <csantana23@gmail.com>

* update the docs

Signed-off-by: Carlos Santana <csantana23@gmail.com>

---------

Signed-off-by: Carlos Santana <csantana23@gmail.com>
2024-03-07 15:03:26 -05:00
Alexander Matyushentsev
138a112172 docs: proposal to implement sync timeout and termination settings (#16630)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-03-07 16:46:02 +00:00
Caio Paiva
fda25d0b93 fix(ui): align resource nodegroup (#17427)
Signed-off-by: Caio Paiva <cclp94@gmail.com>
2024-03-07 09:52:54 -05:00
Pelen
d76976ff12 fix: add retry condition with kube-apiserver sent GOAWAY (#17422)
Signed-off-by: penglongli <pelenli@tencent.com>
2024-03-07 09:50:34 -05:00
Nate Douglas
8aa9625870 docs: Small edits to docs/user-guide/application-set.md (#17434)
* Update application-set.md

Signed-off-by: Nate Douglas <ndouglas@users.noreply.github.com>

* Make example code consistent with examples elsewhere.

Signed-off-by: Nathan Douglas <github@darkdell.net>

---------

Signed-off-by: Nate Douglas <ndouglas@users.noreply.github.com>
Signed-off-by: Nathan Douglas <github@darkdell.net>
2024-03-07 09:34:53 -05:00
Takahiro Suzuki
0c2934a339 docs: Clarify for valueFiles behaviour with path field (#17431)
This commit adds clarification by explaining that `valueFiles` must be a relative path to the root of sources, even if the `path` field is set.

Signed-off-by: Takahiro Suzuki <tkasuz.dev@gmail.com>
Signed-off-by: tkasuz <takahiro.suzuki@hennge.com>
2024-03-07 08:53:48 -05:00
Mangaal
0d020f0079 feat(cli): enable --app-namespace flag for argocd app subcommand (#17437)
* add --app-namespace flag for set/unset command

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* add --app-namespace flag for add-source/remove-source command

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* fix bug, handle array out of-bound when --source-index=len(source)

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* add documentation

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

---------

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>
2024-03-07 13:38:43 +00:00
John
d0331eefe4 docs: remove repetitive words (#17430)
Signed-off-by: hishope <csqiye@126.com>
2024-03-07 10:49:22 +01:00
Duncan
1b919879ab docs (aks cluster): update workloadidentity documentation (#17401)
Signed-off-by: duncan485 <bakkerduncan@gmail.com>
2024-03-06 13:18:59 -07:00
Nate Douglas
58993b1a01 docs: Fix some awkward phrasing in core.md (#17412)
Signed-off-by: Nate Douglas <ndouglas@users.noreply.github.com>
2024-03-06 21:06:16 +01:00
Bogay
4db89427a8 fix(grpcproxy): parse headers contain colon (#13274) (#14294)
* fix(grpcproxy): parse headers contain colon

Signed-off-by: bogay <pojay11523@gmail.com>

* test(apiclient): headers in wrong format

Signed-off-by: bogay <pojay11523@gmail.com>

---------

Signed-off-by: bogay <pojay11523@gmail.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-03-06 14:23:50 -05:00
Leonardo Luz Almeida
8786ec243a chore: add more unit tests around useDiffCache function (#17404)
* chore: add more unit tests around useDiffCache function

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* fix doc

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

---------

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
2024-03-05 19:19:09 -05:00
Suraj yadav
ee78d02a42 fix(ui): application-summary-help-icon fix (#17385)
* Update application-summary.tsx

revision-history icon fix

Signed-off-by: Suraj yadav <harrypotter1108@gmail.com>

* icons

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Suraj yadav <harrypotter1108@gmail.com>
Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
2024-03-05 16:56:01 -05:00
Suraj yadav
24ac326384 fix(ui): Highlight failing containers in the UI (#17143)
* failing container icon added

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* lint-fix

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* ..

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* tried yarn lint-fix

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* margin

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* running

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
2024-03-04 18:15:30 -05:00
Collin Walker
839526e976 feat: Allow Kustomize common labels to not apply to selectors (#17329)
* modify crds

Signed-off-by: Collin <cwalker@ancestry.com>
Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* cmd opts and test

Signed-off-by: Collin <cwalker@ancestry.com>
Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* kustomize build and test

Signed-off-by: Collin <cwalker@ancestry.com>
Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* fix option order and add ancestry to users

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* fix users format

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* generated files

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* set flag value

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* modify crds

Signed-off-by: Collin <cwalker@ancestry.com>
Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* chore(deps): bump library/registry in /test/container (#17317)

Bumps library/registry from `b209a41` to `f4e1b87`.

---
updated-dependencies:
- dependency-name: library/registry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Collin <cwalker@ancestry.com>
Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* generated files

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* add docs

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* fix doc

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* remove debug prints

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

* fix autogen docs

Signed-off-by: lets-call-n-walk <cw404@hotmail.com>

---------

Signed-off-by: Collin <cwalker@ancestry.com>
Signed-off-by: lets-call-n-walk <cw404@hotmail.com>
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Collin Walker <10523817+lets-call-n-walk@users.noreply.github.com>
Co-authored-by: Collin <cwalker@ancestry.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-04 18:13:34 -05:00
DongHo Jung
7eda6e01f4 docs: use service-name instead of service-id (#17389)
* use service-name instead of service-id

Signed-off-by: DongHo Jung <dongho971220@gmail.com>

* trigger CICD

Signed-off-by: DongHo Jung <dongho971220@gmail.com>

---------

Signed-off-by: DongHo Jung <dongho971220@gmail.com>
2024-03-04 10:48:28 -07:00
Soumya Ghosh Dastidar
88e4da625e fix: disable rate limiting sompletely by default (#17355)
Signed-off-by: Soumya Ghosh Dastidar <gdsoumya@gmail.com>
2024-03-04 10:46:55 -05:00
Eric Bissonnette
e2f87940e4 fix: preserve escape codes in repo url of git webhook payload (#17376)
Signed-off-by: Eric Bissonnette <ebisso.dev@gmail.com>
2024-03-04 11:03:19 +02:00
Mangaal
82e20a4fc9 feat: enable users to run commands related to Argo Applications in any namespace (#17360)
* enable --app-namespace falg for application get command

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* enable --app-namespace falg for application diff command

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* enable --app-namespace falg for application wait command

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* enable --app-namespace falg for application rollback command

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* enable --app-namespace falg for application patch command

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* enable --app-namespace falg for application edit command

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* enable --app-namespace falg for application history command

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* enable --app-namespace falg for application sync  command

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* enable --app-namespace falg for application delete  command

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* cli doc generated

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

---------

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-03-01 17:35:31 -05:00
Ishita Sequeira
3cf54af2be feat: add cli commands to add/remove sources for multi-source applications (#17310)
* Initial commit

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* add cli commands to add/remove sources for multi-source app

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* add checks

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* add docs

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* refactor code and update tests

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* add removed additional switch case

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix suggested nits

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

---------

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-03-01 22:13:14 +00:00
Suraj yadav
e3ee9ee831 fix(ui): Dark-mode-enhancements (#17241)
* dark-mode-enhancements

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* monaco

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
Signed-off-by: Suraj yadav <harrypotter1108@gmail.com>
2024-03-01 15:56:09 -05:00
Michael Crenshaw
28112c65a4 chore(ci): free up disk space for goreleaser (#17373)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-03-01 20:39:31 +00:00
Blake Pettersson
99128c27f5 feat: add ability to auto label clusters from k8s clusterinfo (#17289)
* feat: add ability to auto label clusters

This gives the ability to automatically label cluster secrets on a cluster-by-cluster basis. If `enableClusterInfoLabels` is set on a cluster secret, the controller will (eventually) label the cluster secret with the current k8s version detected by the cluster info.

This needs documentation, e2e tests, as well as CLI/UI additions.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* refactor: use labels instead of secret data

This is easier to work with, especially in the context where we need
this feature.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* docs: add description on how to use dynamic labeling

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-03-01 15:18:19 -05:00
Raghavi
e9b1af5885 feat: add cli commands to add/delete sourceNamespaces from AppProject (#17337)
* Add cli to add/delete sourceNamespaces

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>

* update command/comments

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>

* update command/comments(1)

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>

* update user-guide docs

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>

* Retrigger CI pipeline

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>

* add check for '*' & rename command to remove-source-namespace

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>

* update command/comments(2)

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>

* update command/comments(3)

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>

* Retrigger CI pipeline

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>

---------

Signed-off-by: Raghavi Shirur <rshirur@redhat.com>
2024-03-01 14:07:27 -05:00
Andrea Sannuto
f132628866 docs: Update USERS.md (#17371)
Hi, I added IABAI as using officially ArgoCD

Signed-off-by: Andrea Sannuto <andrea@iab.ai>
2024-03-01 13:58:02 -05:00
Enclavet
d73304ea1c feat: Add app data to sharding cache to allow sharding by apps (#17014)
* Adding app list to sharding cache

Signed-off-by: Andrew Lee <andrewkl@enclavenet.com>

* Add shard by apps test

Signed-off-by: Andrew Lee <andrewkl@enclavenet.com>

* Fix lint

Signed-off-by: Andrew Lee <andrewkl@enclavenet.com>

* Add coverage to test

Signed-off-by: Andrew Lee <andrewkl@enclavenet.com>

* Fix lint

Signed-off-by: Andrew Lee <andrewkl@enclavenet.com>

* Converted cluster/app accesors to private, add apps-in-any-namespace suport in shardingcache init, added read lock to GetAppDistribution

Signed-off-by: Andrew Lee <andrewkl@enclavenet.com>

* Fix tests

Signed-off-by: Andrew Lee <andrewkl@enclavenet.com>

---------

Signed-off-by: Andrew Lee <andrewkl@enclavenet.com>
2024-03-01 13:56:48 -05:00
Arthur Outhenin-Chalandre
62003f0152 feat: allow webhook settings to be referenced by external secret (#16262)
Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@ledger.fr>
2024-02-29 13:58:38 +02:00
Michael Firestone
d4251ef7cf chore(notifications): remove unneeded operations from templates (#17307)
* chore(deps): bump library/ubuntu in /test/container (#13409)

Bumps library/ubuntu from `9a0bdde` to `67211c1`.

---
updated-dependencies:
- dependency-name: library/ubuntu
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Signed-off-by: Michael Firestone <mike.firestone@electriphi.ai>

* rm unneeded operations from templates

Signed-off-by: Michael Firestone <firestonem@gmail.com>
Signed-off-by: Michael Firestone <mike.firestone@electriphi.ai>

* rm more unneeded ops

Signed-off-by: Michael Firestone <mike.firestone@electriphi.ai>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Michael Firestone <mike.firestone@electriphi.ai>
Signed-off-by: Michael Firestone <firestonem@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Michael Firestone <mike.firestone@electriphi.ai>
2024-02-29 13:54:15 +02:00
Rafal
a4b5051538 fix(ui): The tiles in Applications List are too wide #17220 (#17340)
* fix(ui): The tiles in Applications List are too wide

Signed-off-by: Rafal Pelczar <rafal@akuity.io>

* change min width of app tiles

Signed-off-by: Rafal Pelczar <rafal@akuity.io>

---------

Signed-off-by: Rafal Pelczar <rafal@akuity.io>
2024-02-28 19:42:20 +00:00
Alexander Matyushentsev
bb4e47a12d fix: The argocd server api-content-type flag does not allow empty content-type header (#17331)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-02-28 09:45:44 -08:00
dependabot[bot]
c973f7013b chore(deps): bump library/node from 21.6.1 to 21.6.2 in /test/container (#17316)
Bumps library/node from 21.6.1 to 21.6.2.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-28 11:47:58 +02:00
David Bunn
e492e1469c chore(deps): upgrade helm to 3.14.2 (#17330)
* chore(deps): upgrade helm to 3.14.2

Signed-off-by: David Bunn <david.bunn@prodigygame.com>

* Signing commit

Signed-off-by: David Bunn <david.bunn@prodigygame.com>

---------

Signed-off-by: David Bunn <david.bunn@prodigygame.com>
2024-02-27 20:48:41 -05:00
Keith Chong
48f4392b26 fix: multi-source app breaks application parameters UI (#16910) (#17033)
Signed-off-by: Keith Chong <kykchong@redhat.com>
2024-02-27 20:15:50 -05:00
Suraj yadav
8b89722eee fix(ui): Added dashed line between collapsed sections in Compact-diff (#17173)
* dashed-line-breaker

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* dark-mode

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* dark-mode-text-fix

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
2024-02-27 16:39:47 -05:00
Juliusz Jaksa
5ffbca4cce docs: fixed name of environment variable and config map property enabling scm providers for applicationsets (#17326)
Signed-off-by: Juliusz <juliusz.jaksa@xylem.com>
Co-authored-by: Juliusz <juliusz.jaksa@xylem.com>
2024-02-27 16:36:07 -05:00
dependabot[bot]
d42004fa86 chore(deps): bump library/registry in /test/container (#17317)
Bumps library/registry from `b209a41` to `f4e1b87`.

---
updated-dependencies:
- dependency-name: library/registry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-27 19:48:59 +02:00
Carlos Santana
891d089304 fix: use simple python image to build mkdocs (#17313)
* fix: use simple python image to build mkdocs

Signed-off-by: Carlos Santana <csantana23@gmail.com>

* use python 3.7

Signed-off-by: Carlos Santana <csantana23@gmail.com>

---------

Signed-off-by: Carlos Santana <csantana23@gmail.com>
2024-02-26 14:12:21 -05:00
dependabot[bot]
2ac96a55ba chore(deps): bump library/busybox in /test/e2e/multiarch-container (#14592)
Bumps library/busybox from `2376a0c` to `3fbc632`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-26 14:45:03 +02:00
dependabot[bot]
09798b5713 chore(deps): bump library/registry in /test/container (#13050)
Bumps library/registry from `41f413c` to `b209a41`.

---
updated-dependencies:
- dependency-name: library/registry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-26 12:48:21 +02:00
dependabot[bot]
4d1eb5515f chore(deps): bump library/redis in /test/container (#17309)
Bumps library/redis from `11c3e41` to `e647cfe`.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-26 11:09:22 +02:00
dependabot[bot]
37eacec208 chore(deps): bump library/ubuntu in /test/container (#13409)
Bumps library/ubuntu from `9a0bdde` to `67211c1`.

---
updated-dependencies:
- dependency-name: library/ubuntu
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-25 19:07:58 +02:00
Debdut Chakraborty
8712d03e9e chore: add Rocket.Chat to users (#17306)
Signed-off-by: Debdut Chakraborty <debdutdeb@outlook.com>
2024-02-25 11:52:47 +01:00
dependabot[bot]
99723143b9 chore(deps): bump bitnami/kubectl in /test/container (#14220)
Bumps bitnami/kubectl from `670fe3f` to `14ab746`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-24 23:36:59 +02:00
dependabot[bot]
6de1037eb3 chore(deps): bump react-helmet and @types/react-helmet in /ui (#11556)
Bumps [react-helmet](https://github.com/nfl/react-helmet) and [@types/react-helmet](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-helmet). These dependencies needed to be updated together.

Updates `react-helmet` from 5.2.1 to 6.1.0
- [Release notes](https://github.com/nfl/react-helmet/releases)
- [Changelog](https://github.com/nfl/react-helmet/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nfl/react-helmet/commits/6.1.0)

Updates `@types/react-helmet` from 5.0.19 to 6.1.6
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-helmet)

---
updated-dependencies:
- dependency-name: react-helmet
  dependency-type: direct:production
  update-type: version-update:semver-major
- dependency-name: "@types/react-helmet"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-24 22:44:42 +02:00
dependabot[bot]
e4c8568393 chore(deps): bump library/redis in /test/container (#17137)
Bumps library/redis from `cc8b0b8` to `11c3e41`.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-24 22:03:47 +02:00
dependabot[bot]
c435260f13 chore(deps-dev): bump postcss from 8.2.13 to 8.4.35 in /ui (#17140)
Bumps [postcss](https://github.com/postcss/postcss) from 8.2.13 to 8.4.35.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.2.13...8.4.35)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-24 15:44:12 +02:00
Carlos Santana
8bb41eda04 fix: Update test image ssl/crypto libs (#17303)
Signed-off-by: Carlos Santana <csantana23@gmail.com>
2024-02-24 14:52:09 +02:00
Sonam
7fe1263300 fix(ui): Include application name in status badge (#17126)
* Added application name to badge

Signed-off-by: sshenoy6 <sonamkaup_shenoy@intuit.com>

* Rever svg change

Signed-off-by: sshenoy6 <sonamkaup_shenoy@intuit.com>

* Doc for disabling application name

Signed-off-by: sshenoy6 <sonamkaup_shenoy@intuit.com>

* Flag to not display application name

Signed-off-by: sshenoy6 <sonamkaup_shenoy@intuit.com>

* Added tests

Signed-off-by: sshenoy6 <sonamkaup_shenoy@intuit.com>

* Make no app name the default

Signed-off-by: sshenoy6 <sonamkaup_shenoy@intuit.com>

* Have enable app name as a query parameter

Signed-off-by: sshenoy6 <sonamkaup_shenoy@intuit.com>

* Have enable app name as a query parameter

Signed-off-by: sshenoy6 <sonamkaup_shenoy@intuit.com>

* argocd to original

Signed-off-by: sshenoy6 <sonamkaup_shenoy@intuit.com>

* Update docs/user-guide/status-badge.md

Signed-off-by: Dan Garfield <dan@codefresh.io>

Signed-off-by: Dan Garfield <dan@codefresh.io>

---------

Signed-off-by: sshenoy6 <sonamkaup_shenoy@intuit.com>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: sshenoy6 <sonamkaup_shenoy@intuit.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-02-24 14:04:30 +02:00
Blake Pettersson
5bc1850aa1 chore(ci): use changed files action (#17180)
`dorny/paths-filter` doesn't seem to handle (multiple) negations well.
Therefore, this PR switches to `tj-actions/changed-files`, since it is
already successfully used in argo-workflows.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-02-23 10:51:09 -05:00
Muhammad Zain ul abidin
4dc91dcb9d docs for PR #9791 (#16021)
Signed-off-by: mzain <zainawan89@gmail.com>
2024-02-22 10:01:44 -07:00
Damon Edstrom
262d287645 docs: Added examples for alternate EKS cluster authentication methods (#17270)
* Added examples for alternate EKS cluster authentication methods
Signed-off-by: Damon Edstrom <dedstrom@venerated.io>

* Update docs/operator-manual/declarative-setup.md

Signed-off-by: Dan Garfield <dan@codefresh.io>

Signed-off-by: Dan Garfield <dan@codefresh.io>

---------

Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-02-22 16:10:11 +00:00
Oscar Wieman
df2b0e2711 fix typo (#17272)
Signed-off-by: Oscar Wieman <oscar@oscarr.nl>
2024-02-22 02:07:44 +00:00
Wilson Wang
5d4c0ecdee reduce unnecessary unmarshal (#17187)
Signed-off-by: Wilson Wang <wilson.wang@bytedance.com>
2024-02-21 20:56:06 -05:00
Dan Garfield
6aa79f283c Update contributors-quickstart.md (#17266)
Signed-off-by: Dan Garfield <dan@codefresh.io>
2024-02-21 09:14:02 -08:00
Adrian Moisey
17ef8b9579 docs: Fix typo in notifications example (#17250)
* Fix typo in notifications example

I'm not too sure what the example should look like, so I'm taking a guess here.

Signed-off-by: Adrian Moisey <adrian@changeover.za.net>

* Update docs/operator-manual/notifications/troubleshooting.md

Co-authored-by: Soumya Ghosh Dastidar <44349253+gdsoumya@users.noreply.github.com>
Signed-off-by: Adrian Moisey <adrian@changeover.za.net>

---------

Signed-off-by: Adrian Moisey <adrian@changeover.za.net>
Co-authored-by: Soumya Ghosh Dastidar <44349253+gdsoumya@users.noreply.github.com>
2024-02-21 20:21:01 +05:30
Gaston Festari
4761255608 docs(metrics): add release label to haproxy (#17264)
Add missing `release` label to `argocd-redis-haproxy-metrics`
ServiceMonitor example.

Signed-off-by: Gaston Festari <cilindrox@gmail.com>
2024-02-21 16:36:14 +02:00
itayvolo
d55e926a63 docs: Update USERS.md (#17248)
* Update USERS.md

Signed-off-by: itayvolo <72027444+itayvolo@users.noreply.github.com>

* Update USERS.md

Signed-off-by: itayvolo <72027444+itayvolo@users.noreply.github.com>

* Update USERS.md

Signed-off-by: itayvolo <72027444+itayvolo@users.noreply.github.com>

---------

Signed-off-by: itayvolo <72027444+itayvolo@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-21 14:34:43 +00:00
dependabot[bot]
3cc02779ca chore(deps): bump library/node from 50703e6 to 65998e3 (#17243)
Bumps library/node from `50703e6` to `65998e3`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-20 13:23:01 +02:00
Dong Wang
fa1ad0c375 Add AppName to the RepoServerAppDetailsQuery for notification-controller (#17233)
Signed-off-by: Dong Wang <wd@wdicc.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-20 12:24:32 +02:00
dependabot[bot]
b80015e27e chore(deps): bump library/golang in /test/remote (#17244)
Bumps library/golang from `ef61a20` to `7b297d9`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-20 10:33:55 +02:00
dependabot[bot]
8a866492db chore(deps): bump library/node from 6fb1883 to 65998e3 in /ui-test (#17245)
Bumps library/node from `6fb1883` to `65998e3`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-20 10:33:31 +02:00
Luke
078eb6c56d feat(grafana-dashboard): Update example dashboard, add AppSet Telemetry (#17232)
Signed-off-by: lukepatrick <lukephilips@gmail.com>
2024-02-19 19:29:27 +02:00
dependabot[bot]
d9e0666795 chore(deps): bump library/golang in /test/remote (#17138)
Bumps library/golang from `094e47e` to `ef61a20`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-19 18:42:02 +02:00
dependabot[bot]
47eddf169e chore(deps): bump library/node from 21.6.1 to 21.6.2 (#17223)
Bumps library/node from 21.6.1 to 21.6.2.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-19 14:58:46 +02:00
dependabot[bot]
4e224ee878 chore(deps): bump library/node from 21.6.1 to 21.6.2 in /ui-test (#17226)
Bumps library/node from 21.6.1 to 21.6.2.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-19 13:56:27 +02:00
Mikołaj Przybysz
50284f7c5c Count git checkout failures (#15657)
Signed-off-by: Mikołaj Przybysz <1093404+mikolajprzybysz@users.noreply.github.com>
Co-authored-by: Mikołaj Przybysz <1093404+mikolajprzybysz@users.noreply.github.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-02-19 12:44:44 +02:00
Keith Chong
c0e679a66c fix: Permission Denied error when calling GetAppDetails API (#17221) (#17229)
Signed-off-by: Keith Chong <kykchong@redhat.com>
2024-02-16 12:20:08 -08:00
NextBasket-Petyo
d5a4f81b8e docs: Add Nextbasket to USERS.md (#17228)
Signed-off-by: NextBasket-Petyo <100193556+NextBasket-Petyo@users.noreply.github.com>
2024-02-16 17:55:40 +01:00
Matt Menzenski
d5b0a4f029 docs: Add PayIt to USERS.md (#17215)
* docs: Add PayIt to USERS.md

Signed-off-by: Matt Menzenski <matt@payitgov.com>

* docs: Add PayIt to USERS.md

Signed-off-by: Matt Menzenski <matt@payitgov.com>

---------

Signed-off-by: Matt Menzenski <matt@payitgov.com>
2024-02-15 17:56:40 -05:00
Alexandre Gaudreault
79e94b8fe0 chore(deps): upgrade helm to 3.14.1 (#17213)
* chore(deps): upgrade helm to 3.14.1

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* move files to folder......

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-02-15 08:26:32 -07:00
Alexandre Gaudreault
ff7192bfc5 fix(controller): add missing workqueue metrics (#16315) (#17013)
* fix(controller): add missing kubernetes metrics

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* validate workqueue metrics are present

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* use newer metrics registry

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* fix duplicated

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* init runtime controller in test to have correct metrics

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* fix lint error

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* update controller-runtime to remove metrics with high cardinality

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-02-14 11:48:39 -05:00
Michael Morris
6d0ba1fad7 feat: wait until resources are deleted #6085 (#16733)
* feat: wait until resources are deleted

Signed-off-by: MichaelMorris <michael.morris@est.tech>

* Added unit and e2e test

Signed-off-by: MichaelMorris <michael.morris@est.tech>

---------

Signed-off-by: MichaelMorris <michael.morris@est.tech>
2024-02-14 15:01:34 +02:00
Lukas Wöhrl
5d6111b745 fix: infer correct shard in statefulset setup (#17124, #17016) (#17167)
* fix: infer correct shard in statefulset setup

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* fix the case if only a single replica

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* fix: resolving pointer on shard compare

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* fix: add readlock for cluster accessor

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* fix: use defer to protect access of 'shard'

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* fix: revert locking in getclusteraccessor

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* fix: handle nil shard case

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* fix: handle any nil shard value as false

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* fix: handle nil case and fix another missing pointer dereference 

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* revert

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* fix: added tests and fixed some behaviour bugs

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* test: add test to validate that Shard value is not overriden

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* fix: added tests and fixe the case when server is changed inside a secret

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

* tests: add test cases for infering the shard logic

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>

---------

Signed-off-by: Lukas Wöhrl <lukas.woehrl@plentymarkets.com>
2024-02-13 11:51:41 -05:00
Suraj yadav
db34f98451 docs: Private-helm-repo section target added to helm.md (#16697)
* helm-repo

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* Update docs/user-guide/helm.md

Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Suraj yadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>
Signed-off-by: Suraj yadav <harrypotter1108@gmail.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-02-13 14:16:09 +01:00
Ajay Chidambaram
5406a1a5e8 docs: fixes Template.md targetRevision typo (#17190)
* Template.md targetRevision typo fixed

Signed-off-by: Ajay Chidambaram <105060495+chidambaram27@users.noreply.github.com>

* retrigger checks

Signed-off-by: Ajay Chidambaram <105060495+chidambaram27@users.noreply.github.com>

* sign off

Signed-off-by: chidambaram27 <chidambaramk.27@gmail.com>
Signed-off-by: Ajay Chidambaram <105060495+chidambaram27@users.noreply.github.com>

* sign off

Signed-off-by: Ajay Chidambaram <105060495+chidambaram27@users.noreply.github.com>

---------

Signed-off-by: Ajay Chidambaram <105060495+chidambaram27@users.noreply.github.com>
Signed-off-by: chidambaram27 <chidambaramk.27@gmail.com>
2024-02-13 13:03:16 +01:00
David Grizzanti
c082a0cca5 Update triggers doc to fix typo (#17185)
Signed-off-by: David Grizzanti <dgrizzanti@users.noreply.github.com>
2024-02-12 22:35:22 -05:00
Jan Schumann
82433ff1a8 feat: query escape function for notifications (#16343)
Signed-off-by: Jan Schumann <js@schumann-it.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-12 12:34:16 +02:00
Soumya Ghosh Dastidar
4458d5fa80 fix: stop initializing deployment informer if dynamic sharding is disabled (#17097)
* fix: stop initializing deployment informer if dynamic sharding is disabled

Signed-off-by: Soumya Ghosh Dastidar <gdsoumya@gmail.com>

* feat: updated sharding cache getter func

Signed-off-by: Soumya Ghosh Dastidar <gdsoumya@gmail.com>

---------

Signed-off-by: Soumya Ghosh Dastidar <gdsoumya@gmail.com>
2024-02-11 13:32:17 -05:00
shlomi tubul
adceae9ec8 feat: Add support for passing Redis Sentinel username(ACL) and password (#17168)
* Add support for passing Sentinel username and password

Signed-off-by: ShlomiTubul <shlomi.tubul@placer.ai>

* fix align with var naming

Signed-off-by: ShlomiTubul <shlomi.tubul@placer.ai>

* fix align with var naming

Signed-off-by: ShlomiTubul <shlomi.tubul@placer.ai>

---------

Signed-off-by: ShlomiTubul <shlomi.tubul@placer.ai>
Co-authored-by: ShlomiTubul <shlomi.tubul@placer.ai>
2024-02-11 00:48:15 -05:00
AS
bb1c1ed44d chore(dex): 2.37.0 to 2.38.0 (#17157)
Signed-off-by: asingh51 <ashutosh_singh@intuit.com>
Co-authored-by: asingh51 <ashutosh_singh@intuit.com>
2024-02-09 09:37:04 -05:00
Alexandre Gaudreault
d7da05f3aa docs: fix error in toolchain setup (#17154)
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
2024-02-08 18:09:17 -08:00
Blake Pettersson
7e80f1e8e5 chore(ci): tweak backend filters (#17134)
The existing backend filters get triggered even on frontend-only or
docs-only changes, which should not be the case. The reason for this
seems to be the fact that each filter line is ORed rather than ANDed.
To remedy this, we put all the filters on the same line.

I tried the filter out in a REPL
(https://runkit.com/blakepettersson/65c3daba99653f0008c74eda). This is
a filter using picomatch (the same library `dorny/paths-filter` uses).

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-02-07 18:43:50 -05:00
Prune Sebastien THOMAS
f77cf94908 fix(kustomize): set build dir (#15057) #16229 #16652 (#16653)
* use repo root, not app path

Signed-off-by: Prune <prune@lecentre.net>

correct patch

Signed-off-by: Prune <prune@lecentre.net>

* use Getwd to find the root path for diff commands

Signed-off-by: Prune <prune@lecentre.net>

* set dot a default for argo app commands

Signed-off-by: Prune <prune@lecentre.net>

* revert default values

Signed-off-by: Prune <prune@lecentre.net>

* patch diff in TestNamespacedResourceDiffing

Signed-off-by: Prune <prune@lecentre.net>

* patching some diff and sync

Signed-off-by: Prune <prune@lecentre.net>

* patch remaining diff in error

Signed-off-by: Prune <prune@lecentre.net>

---------

Signed-off-by: Prune <prune@lecentre.net>
2024-02-07 14:00:00 -05:00
fsl
52ffd7df4d chore(deps): bump library/node from 20.7.0 to 21.6.1 (#17065)
Signed-off-by: fengshunli <1171313930@qq.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-07 16:21:00 +02:00
dependabot[bot]
3c9a2fbc59 chore(deps): bump library/node from 20.6.1 to 21.6.1 (#17053)
Bumps library/node from 20.6.1 to 21.6.1.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-07 15:06:57 +02:00
Sorav Kumar Sharma
93a668ac09 fix the typo (#17116) 2024-02-07 18:32:07 +05:30
dependabot[bot]
98d5a2bf86 chore(deps-dev): bump yarn from 1.22.10 to 1.22.21 in /ui (#17096)
Bumps [yarn](https://github.com/yarnpkg/yarn) from 1.22.10 to 1.22.21.
- [Release notes](https://github.com/yarnpkg/yarn/releases)
- [Changelog](https://github.com/yarnpkg/yarn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yarnpkg/yarn/compare/1.22.10...v1.22.21)

---
updated-dependencies:
- dependency-name: yarn
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-07 14:11:05 +02:00
dependabot[bot]
7ce342fb88 chore(deps): bump library/redis from 7.0.11 to 7.2.4 in /test/container (#16806)
Bumps library/redis from 7.0.11 to 7.2.4.

---
updated-dependencies:
- dependency-name: library/redis
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-07 12:55:20 +02:00
dependabot[bot]
b23e71f578 chore(deps-dev): bump yarn from 1.22.10 to 1.22.13 in /ui-test (#17092)
Bumps [yarn](https://github.com/yarnpkg/yarn) from 1.22.10 to 1.22.13.
- [Release notes](https://github.com/yarnpkg/yarn/releases)
- [Changelog](https://github.com/yarnpkg/yarn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yarnpkg/yarn/compare/1.22.10...v1.22.13)

---
updated-dependencies:
- dependency-name: yarn
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-07 11:54:46 +02:00
dependabot[bot]
8ac7b6da38 chore(deps): bump library/golang from 1.21.3 to 1.22.0 in /test/remote (#17111)
Bumps library/golang from 1.21.3 to 1.22.0.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-07 10:53:43 +02:00
Soumya Ghosh Dastidar
d494d3a331 fix: ci failures (#17107)
Signed-off-by: Soumya Ghosh Dastidar <gdsoumya@gmail.com>
2024-02-07 00:56:14 +01:00
borisssmidtCET
b93874e741 Add a description for using contour httpproxy CRD (#14614)
Which allows you to reuse the same hostname.

Co-authored-by: Boris Smidt <boris.smidt@restore.eu>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>
2024-02-06 23:56:30 +02:00
jcourteau
af20dae498 docs: Update Okta OIDC SSO docs (#13811)
* Update the Okta SSO docs

* fill out the OIDC section with step-by-step instructions on using Okta
  with custom authorization servers
* adjust outdated docs about updating the docs

Signed-off-by: Jonas Courteau <jonas.courteau@abcellera.com>

* Add the Okta version that these docs are written against

Signed-off-by: Jonas Courteau <jonas.courteau@abcellera.com>

---------

Signed-off-by: Jonas Courteau <jonas.courteau@abcellera.com>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>
2024-02-06 13:33:12 -07:00
Petr Studeny
4bf4629231 docs(webhook): use real cm name instead of placeholder (#17002)
The document says I should registed configMap named argocd-notifications-cm but then uses placeholder in examples.

Signed-off-by: Petr Studeny <studenyp@gmail.com>
2024-02-07 01:31:13 +05:30
Tal Yitzhak
c4a9df6570 Updated otelgrpc to remediate CVE found by JFrog Xray (#17084)
Signed-off-by: Tal Yitzhak <taly@lightrun.com>
Co-authored-by: Tal Yitzhak <taly@lightrun.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-02-07 00:04:54 +05:30
Adam Huganir
ca27c41bc2 typo registires -> registries (#17099)
Signed-off-by: Adam Huganir <adam@huganir.com>
2024-02-06 09:54:11 -07:00
Eshwar Hebbur Shivakumar
0b22a1198a fix(ui): Change path to "root" when path is root directory (#14949)
* change path to display root

Signed-off-by: Eshwar Hebbur Shivakumar <eshwar1011235@gmail.com>

* Fix inequality typo

Signed-off-by: Eshwar Hebbur Shivakumar <eshwar1011235@gmail.com>

* Fix lint issues

Signed-off-by: Eshwar Hebbur Shivakumar <eshwar1011235@gmail.com>

---------

Signed-off-by: Eshwar Hebbur Shivakumar <eshwar1011235@gmail.com>
2024-02-06 10:27:05 -05:00
Blake Pettersson
228eda5e1e chore(ci): run ci checks conditionally (#16982)
* chore(ci): run ci checks conditionally

This should prevent docs changes from having the need to run e2e tests
etc, and prevent backend changes from needing to run ui tests, and vice
versa.

This is similar to previous attempts (see #16706 and #13507), with the
difference here that we add the if checks on each _step_ rather than
each _job_ - the reason being that most of these jobs are required, and
if we skip whole jobs any PR which does this will be left hanging
indefinitely, so Github forces us to do this on a step level instead.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* chore(ci): run ci checks conditionally

Try conditional jobs, according to https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/troubleshooting-required-status-checks#handling-skipped-but-required-checks

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* chore(ci): add composite test-e2e action

This is a workaround for the e2e tests which do not run yet report `pending` when they are actually skipped.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Remington Breeze <remington@breeze.software>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-02-06 10:26:38 -05:00
Anand Francis Joseph
555f6f42d2 docs(proposal): decoupling app sync from control plane user w/ impersonation (#14255)
* Proposal for decoupling application sync from control plane user using impersonation

Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>

* Moved the proposal document to the right directory

Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>

* Update docs/decouple-application-sync-user-using-impersonation

Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Anand Francis Joseph <anandfrancis.joseph@gmail.com>

* Update docs/decouple-application-sync-user-using-impersonation

Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Anand Francis Joseph <anandfrancis.joseph@gmail.com>

* Update docs/decouple-application-sync-user-using-impersonation

Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Anand Francis Joseph <anandfrancis.joseph@gmail.com>

* Modified the proposal to have control in AppProjects alone instead of Application and AppProject

Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>

* Removed proposal placed in wrong directory and corrected examples

Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>

* Update docs/proposals/decouple-application-sync-user-using-impersonation

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Anand Francis Joseph <anandfrancis.joseph@gmail.com>

* Update docs/proposals/decouple-application-sync-user-using-impersonation

Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Signed-off-by: Anand Francis Joseph <anandfrancis.joseph@gmail.com>

* Addressed review comments

Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>

* Additional corrections

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed alternative proposals section to include only AppProject based approach

Signed-off-by: anandf <anjoseph@redhat.com>

* Added information on impersonation and added related links

Signed-off-by: anandf <anjoseph@redhat.com>

* Added examples for remote cluster destination with the required RBAC access

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed clusterrole and clusterrolebinding creation commands

Signed-off-by: anandf <anjoseph@redhat.com>

* Addressed review comments from Akram

Signed-off-by: anandf <anjoseph@redhat.com>

* Corrected RBAC to include serviceaccounts that can be impersonated as swell

Signed-off-by: anandf <anjoseph@redhat.com>

* Address few more review comments from Ishita, Akram

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed a typo and updated the last updated date field

Signed-off-by: anandf <anjoseph@redhat.com>

* Added information of the sync hook behaviour and also corrected the namespace to match that of destination

Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>

* Changed proposal to meet the latest api design using destinationServiceAccounts

Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>

* Fixed proposal document to use destinationServiceAccounts struct

Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>

* Renamed proposal file to have .md extension

Signed-off-by: anandf <anjoseph@redhat.com>

* Using glob pattern instead of regex, and corrected the order of precedence when multiple matches are available

Signed-off-by: anandf <anjoseph@redhat.com>

---------

Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>
Signed-off-by: Anand Francis Joseph <anandfrancis.joseph@gmail.com>
Signed-off-by: anandf <anjoseph@redhat.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Co-authored-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-02-06 10:18:00 -05:00
Thomas Decaux
5100726fd6 feat: add health-checks for eck elastic beat (#16563)
* feat: add health-checks for eck elastic beat

Signed-off-by: ebuildy <ebuildy@gmail.com>

* fix tests

Signed-off-by: ebuildy <ebuildy@gmail.com>

---------

Signed-off-by: ebuildy <ebuildy@gmail.com>
2024-02-06 03:01:04 +00:00
Michael Crenshaw
769836e6ea fix: log all token verification failures (#16625)
* fix: log all token verification failures

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* better

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-02-06 02:56:39 +00:00
Linghao Su
2082a21121 fix(ui): prevent app name too long hide open icon (#16983)
* fix(ui): prevent app name too long hide open icon

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

* fix(ui): fix app resource list lint

Signed-off-by: linghaoSu <linghao.su@daocloud.io>

---------

Signed-off-by: linghaoSu <linghao.su@daocloud.io>
2024-02-05 20:56:58 -05:00
Gustavo Esser
b1c6dc5742 DOC: add Fly Security and Telavita in USERS.md (#17076)
Signed-off-by: Gustavo Esser <esser1997@hotmail.com>
2024-02-06 02:26:17 +01:00
Bardia Heydari
5246429cad chore: improve error logs (#10592) (#17089)
Signed-off-by: Bardia Heydari <az.bardia13@gmail.com>
2024-02-05 16:42:20 -05:00
Ishita Sequeira
3fda27e8d9 fix(controller): fix application controller deployment crashing (#16984)
* fix application controller deployment crashing and update manifests

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* remove environment variable ARGOCD_ENABLE_DYNAMIC_CLUSTER_DISTRIBUTION

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* fix auto-generated docs

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

---------

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-02-05 21:09:35 +00:00
Michael Crenshaw
55713b3474 fix(ci): correct helm checksum path (#17081)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-02-02 20:03:12 +00:00
Leonardo Luz Almeida
dc1ccea568 feat: add prometheus metrics around proxy extension requests (#17012)
* feat: add prometheus metrics around proxy extension requests

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* update go.mod

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* fix metrics bugs

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* fix unit-test

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* Add unit suffix in the duration metric

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* update doc

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

---------

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
2024-02-02 16:56:48 +00:00
Michael Crenshaw
fa31c2323a chore(ci): bump k3s versions to latest patches (#17060)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-02-01 13:39:20 -05:00
Kerwood
b8aeb781a6 fix: removed pkce code challange check for WebUI (#16730)
Signed-off-by: Patrick Kerwood <patrick@kerwood.dk>
2024-02-01 08:27:30 -08:00
Carlos Santana
0c8bc1d61e chore(deps): Upgrade aws-sdk-go to support eks pod identity (#17063)
* chore: Upgrade aws-sdk-go to support eks pod identity

---------

Signed-off-by: Carlos Santana <carrlos@amazon.com>
Co-authored-by: Mathieu Bruneau <brunemat@amazon.com>

* add cogen for notifications

Signed-off-by: Carlos Santana <carrlos@amazon.com>

---------

Signed-off-by: Carlos Santana <carrlos@amazon.com>
Co-authored-by: Mathieu Bruneau <brunemat@amazon.com>
2024-01-31 21:30:32 -05:00
dependabot[bot]
28f362b886 chore(deps): bump github.com/evanphx/json-patch (#17021)
Bumps [github.com/evanphx/json-patch](https://github.com/evanphx/json-patch) from 5.6.0+incompatible to 5.9.0+incompatible.
- [Release notes](https://github.com/evanphx/json-patch/releases)
- [Commits](https://github.com/evanphx/json-patch/compare/v5.6.0...v5.9.0)

---
updated-dependencies:
- dependency-name: github.com/evanphx/json-patch
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-31 15:29:36 -05:00
Simon HEGE
f4019b7657 chore(deps): bump Helm to 3.14.0 (#17031) (#17032)
* bump helm to 3.14.0

Signed-off-by: Simon HEGE <simonhege@gmail.com>

* Add a note about helm bump in upgrade instructions

Signed-off-by: Simon HEGE <simonhege@gmail.com>

---------

Signed-off-by: Simon HEGE <simonhege@gmail.com>
2024-01-31 15:26:28 -05:00
Shyukri Shyukriev
291445f132 chore: use kubernetes 1.29.0 in CI (#17050)
Keeping 1.25 for now.

Signed-off-by: Shyukri Shyukriev <shukera@gmail.com>
2024-01-31 15:23:45 -05:00
Andrew Block
c691d366a5 Corrected certificate managment for OCI helm charts (#16656)
Signed-off-by: Andrew Block <andy.block@gmail.com>
Co-authored-by: Soumya Ghosh Dastidar <44349253+gdsoumya@users.noreply.github.com>
2024-01-30 21:45:11 -05:00
Nicholas Morey
7f749c62b8 docs(hooks): add postdelete to table (#17048)
Add `PostDelete` to the hooks table, and clean up wording and old availability statement (all the way back to v1, probably irrelevant).

Signed-off-by: Nicholas Morey <nicholas@morey.tech>
2024-01-30 20:51:25 -05:00
Nicholas Morey
55918abd77 docs(argocd-cm): add timeout.reconciliation.jitter example (#17044)
Signed-off-by: Nicholas Morey <nicholas@morey.tech>
2024-01-30 10:21:49 -08:00
Nicholas Morey
4d53d36268 docs(kustomize): add components yaml example (#17043)
Signed-off-by: Nicholas Morey <nicholas@morey.tech>
2024-01-30 10:21:29 -08:00
Nicholas Morey
981bceecb0 docs(applicationset): explain impact of empty spec in templatePatch (#17042)
* docs: explain impact of empty spec in templatePatch

Signed-off-by: Nicholas Morey <nicholas@morey.tech>

* fix: not conditional helm values

Signed-off-by: Nicholas Morey <nicholas@morey.tech>

---------

Signed-off-by: Nicholas Morey <nicholas@morey.tech>
2024-01-30 09:55:50 -08:00
Siddhesh Ghadi
e5c88c914b feat: Prune resources in reverse order of syncwave during sync (#15074) (#16748)
* Add e2e & doc for prune order during sync

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

* Point gitops-engine to fork with reverse prune changes

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

* Fix ci linting failures

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

* Update gitops-engine commit ref

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>

---------

Signed-off-by: Siddhesh Ghadi <sghadi1203@gmail.com>
2024-01-30 10:08:59 -05:00
saeedhosseini
3c21242356 Fix typo in documentation (#17022)
Signed-off-by: saeedhosseini <saeedhosseini21@gmail.com>
2024-01-29 21:04:01 +05:30
Yudi A Phanama
be1f0eafb8 fix(redis): go-redis v9 regression missing metrics and reconnect hook (#13415) (#15275)
* fix(redis): go-redis v9 regression missing metrics and reconnect hook

Signed-off-by: phanama <yudiandreanp@gmail.com>

* fix: golangci lint return values not checked in tests

Signed-off-by: phanama <yudiandreanp@gmail.com>

* chore: move dnsError var locally into func

Signed-off-by: phanama <yudiandreanp@gmail.com>

---------

Signed-off-by: phanama <yudiandreanp@gmail.com>
2024-01-29 10:31:15 -05:00
Nicholas Morey
4e084ace8c docs(helm): fix yaml formatting on code block (#17001)
Signed-off-by: Nicholas Morey <nicholas@morey.tech>
2024-01-26 15:38:49 -05:00
Sonam
8c9abb27ef Badge for apps in any namespace (#16739)
Signed-off-by: sshenoy6 <sonamkaup_shenoy@intuit.com>
Co-authored-by: sshenoy6 <sonamkaup_shenoy@intuit.com>
2024-01-26 15:01:30 -05:00
Nicholas Morey
344f23b5e8 docs(helm): add example of public oci chart (#17000)
There doesn't appear to be an example of using an OCI helm chart repository, so this adds a simple declarative example. This is a common question from the community.

Signed-off-by: Nicholas Morey <nicholas@morey.tech>
2024-01-26 15:42:52 +00:00
Fish-pro
85009d941c Clean up repeated package import (#16987)
Signed-off-by: Zechun Chen <zechun.chen@daocloud.io>
2024-01-25 09:51:43 -05:00
Michael Crenshaw
8932036d53 fix(server): allow disabling content-type check (#16959)
* fix(server): allow disabling content-type check

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix spacing

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-01-24 14:45:09 -05:00
fsl
6d0850749b chore(deps): rm go-jose Cxb6dee8d5-b814 high vuln (#16947)
Signed-off-by: fengshunli <1171313930@qq.com>
2024-01-24 09:42:42 -05:00
1102
666499f610 feat(health): support for resourcerecordsets aws.crossplane.io resource (#16823)
Signed-off-by: nueavv <nuguni@kakao.com>
2024-01-24 00:23:58 -05:00
Christian Hernandez
0012e787f3 docs: Added an example of downloading the latest stable version (#16968)
* added an example of downloading the latest stable version

Signed-off-by: Christian Hernandez <christian@chernand.io>

* Update docs/cli_installation.md

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Signed-off-by: Christian Hernandez <christianh814@users.noreply.github.com>

---------

Signed-off-by: Christian Hernandez <christian@chernand.io>
Signed-off-by: Christian Hernandez <christianh814@users.noreply.github.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-01-24 03:32:29 +00:00
Keith Chong
fec5708ea5 docs: Update argocd-cm.yaml bannerposition description (#16961) (#16962)
Signed-off-by: Keith Chong <kykchong@redhat.com>
2024-01-23 18:32:52 -05:00
Anand Francis Joseph
97727cbb59 fix(appcontroller): Uptake fix in gitops engine which fixes application sync with auto create ns and server side apply (#16942)
* Uptake fix in gitops engine to fix auto create ns with server side apply

Signed-off-by: anandf <anjoseph@redhat.com>

* Moved the new e2e test to different location

Signed-off-by: anandf <anjoseph@redhat.com>

* Fix test name to be less than 63 char for creating ns

Signed-off-by: anandf <anjoseph@redhat.com>

* update gitops-engine with latest master

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

---------

Signed-off-by: anandf <anjoseph@redhat.com>
Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
Co-authored-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
2024-01-23 12:55:30 -05:00
Linghao Su
b234264d79 fix(ui): fix display banner when not explicit set position (#16741)
Signed-off-by: linghaoSu <linghao.su@daocloud.io>
2024-01-23 12:09:00 -05:00
Ishita Sequeira
c29f6da00c separate application controller roles into a separate manifests directory (#16884)
Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-01-22 15:39:56 -05:00
Arnold
f7236d794b feat: Add PITS Globale Datenrettungsdienste to user list (#16765)
* Add PITS Globale Datenrettungsdienste to user list

Signed-off-by: Arnold <87698848+arnoldberlin@users.noreply.github.com>

* Update USERS.md

Signed-off-by: Arnold <87698848+arnoldberlin@users.noreply.github.com>

---------

Signed-off-by: Arnold <87698848+arnoldberlin@users.noreply.github.com>
Co-authored-by: Soumya Ghosh Dastidar <44349253+gdsoumya@users.noreply.github.com>
2024-01-22 15:26:26 +00:00
Blake Pettersson
9042f415b7 Revert "chore: Preventing runnings jobs when updating documentation (#16706)" (#16943)
This reverts commit 65869a3860.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-01-22 08:49:50 -05:00
Sergey Lanzman
397063fea4 fix(action): Add validation for Kustomize Build Options white space (#16704)
Signed-off-by: Sergey Lanzman <sergeylanz@gmail.com>
2024-01-21 12:18:36 +05:30
Alexandre Gaudreault
7302a52ea1 feat(controller): add sync jitter(#14241) (#16820)
* feat(controller): add sync jitter

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* convert to duration for simplicity

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* docs

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* add config to manifests

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* fix tests

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>
2024-01-21 11:52:32 +05:30
Michael Crenshaw
9ecc5aec2a fix(ui): set content-type for certain UI requests (#16923) (#16930)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-01-19 16:47:14 +00:00
1102
21c384f423 feat(health): support for distribution aws.crossplane.io resource (#16827)
Signed-off-by: nueavv <nuguni@kakao.com>
2024-01-19 11:20:10 -05:00
Siddhesh Ghadi
32e373829b Initialize & send forceHttpBasicAuth & enableOCI params correctly during repo update from UI (#16794) 2024-01-19 10:14:38 -05:00
Aymen Ben Tanfous
80683acb71 docs: Fixed Slugify doc in GoTemplate.md (#16685)
* docs: Fixed Slugify doc in  GoTemplate.md

Signed-off-by: Aymen Ben Tanfous <aymen.bentanfous@gmail.com>

* Update docs/operator-manual/applicationset/GoTemplate.md

Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Aymen Ben Tanfous <aymen.bentanfous@gmail.com>

* Update docs/operator-manual/applicationset/GoTemplate.md

Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
Signed-off-by: Aymen Ben Tanfous <aymen.bentanfous@gmail.com>

---------

Signed-off-by: Aymen Ben Tanfous <aymen.bentanfous@gmail.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-01-19 15:12:22 +00:00
Sergiy Kulanov
8a0bf41863 fix(cli): add support for Application in any namespace for app delete cmd (#16898)
Use fully qualified application names when operate with Applications

Closes: #16896

Signed-off-by: Sergiy Kulanov <sergiy_kulanov@epam.com>
2024-01-18 10:57:16 -05:00
dependabot[bot]
f0cbf516fc chore(deps): bump github.com/go-git/go-git/v5 from 5.8.1 to 5.11.0 (#16711)
Bumps [github.com/go-git/go-git/v5](https://github.com/go-git/go-git) from 5.8.1 to 5.11.0.
- [Release notes](https://github.com/go-git/go-git/releases)
- [Commits](https://github.com/go-git/go-git/compare/v5.8.1...v5.11.0)

---
updated-dependencies:
- dependency-name: github.com/go-git/go-git/v5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-18 10:25:06 -05:00
Aymen Ben Tanfous
65869a3860 chore: Preventing runnings jobs when updating documentation (#16706)
* Preventing runnings jobs when updating documentation

Signed-off-by: Aymen Ben Tanfous <aymen.bentanfous@cimpress.com>

* Empty line added to .md file

Signed-off-by: Aymen Ben Tanfous <aymen.bentanfous@cimpress.com>

---------

Signed-off-by: Aymen Ben Tanfous <aymen.bentanfous@cimpress.com>
Co-authored-by: Aymen Ben Tanfous <aymen.bentanfous@cimpress.com>
2024-01-18 10:27:14 +01:00
Ryan Flynn
2b95bc0d3e docs: Update Azure AD to Entra ID (#16869)
* Update Azure AD to Entra ID

https://learn.microsoft.com/en-us/entra/fundamentals/new-name

Signed-off-by: Ryan Flynn <mr.ryanflynn@gmail.com>

* Add formerly known as azuread

Signed-off-by: Ryan Flynn <mr.ryanflynn@gmail.com>

---------

Signed-off-by: Ryan Flynn <mr.ryanflynn@gmail.com>
2024-01-17 22:55:27 +00:00
Chetan Deshmukh
d5e119c251 Adding CNCF blog to readme file (#16893)
Signed-off-by: Chetan Deshmukh <cdeshmukh@infracloud.io>
2024-01-17 14:12:34 +00:00
Blake Pettersson
d367b727c8 chore: allow @approvers-docs to approve readme.md (#16897)
Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-01-17 09:09:43 -05:00
Regina Scott
3997dbef8e update follow-redirects to 1.15.5 (#16899)
Signed-off-by: Regina Scott <rescott@redhat.com>
2024-01-17 09:08:41 -05:00
Yuan Tang
c7bf0648e5 docs: Add LinkedIn badge to README.md (#16889)
Signed-off-by: Yuan Tang <terrytangyuan@gmail.com>
2024-01-17 11:15:17 +05:30
Sergiy Kulanov
256c2ae5dc fix(cli): add support for Application in any namespace for app wait (argoproj#16812) (#16816)
Use fully qualified application names in ApplicationWaitCommand

Closes: #16812

Signed-off-by: Sergiy Kulanov <sergiy_kulanov@epam.com>
2024-01-16 22:51:54 -05:00
doxsch
180b99010e fix: added logging if repo credentials collide (#16833)
Signed-off-by: doxsch <28098153+doxsch@users.noreply.github.com>
2024-01-16 22:51:03 -05:00
Zubair Haque
15060e1d73 adding tests for githandlers (#16678)
Signed-off-by: zhaque44 <haque.zubair@gmail.com>
2024-01-16 22:27:20 -05:00
Alexander Matyushentsev
7ec9999b01 fix: enforce content type header for API requests (#16860)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-01-16 18:54:13 +00:00
Isaac Gaskin
d9df2525c5 feat: adding option to specify an aws profile to use by the argocd-server when adding a EKS cluster (#16767)
useful for argocd-servers which are not running in AWS and want to add multiple EKS clusters using
separate keys instead of assuming roles

#16766

Signed-off-by: Isaac Gaskin <isaac.gaskin@circle.com>
Co-authored-by: Soumya Ghosh Dastidar <44349253+gdsoumya@users.noreply.github.com>
2024-01-12 18:39:41 -05:00
eddimull
b12630c4be typo in comment (#16834)
Signed-off-by: eddimull <eddimull@gmail.com>
2024-01-11 18:08:42 +01:00
mugi
54de532940 fix(manifests): applicationset-controller dir is not added to cluster-rbac/kustomization.yaml. (#16810)
* fix(manifests): applicationset-controller dir is not added to cluster-rbac/kustomization.yaml.

Related PR: https://github.com/argoproj/argo-cd/pull/16699.

I missed adding a new folder(applicationset-controller) to kustomization.yaml.

So, i addressed it.

Signed-off-by: mugioka <okamugi0722@gmail.com>

* chore: exec `make manifests`.

Signed-off-by: mugioka <okamugi0722@gmail.com>

* chore: exec `make manifests`.

Signed-off-by: mugioka <okamugi0722@gmail.com>

---------

Signed-off-by: mugioka <okamugi0722@gmail.com>
2024-01-11 07:52:18 -05:00
Akram Ben Aissi
cd4fc97c9d fix: Use the cache for sharding (#15237)
* feat(sharding): use a cache

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* cluster cmd

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* - Assign shard 0 to in-cluster cluster and nil check updates
- Caching clusters while sharding: Fixing unit tests
- Update generated docs
- Debug e2e tests
- Default the shardNumber to the number of replicas if it is calculated to a higher value
- defered Unlock only when a lock is set
- Disabling temporarly other versions of k3s to check if e2e passes
- Do not fail if hostname format is not abc-n
- Fix unit test and skip some e2e
- Skip TestGitSubmoduleHTTPSSupport test
- Remove breaking defer c.lock.Unlock()
- Reverting testing all k3s version
- Default sharding fix
Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

* fixes related to code review: renaming structure param, moving db initialisation

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

* Code review

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

* Set default shard to 0

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

* Set different default value for Sts and Deployment mode

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

* Expose ClusterShardingCache

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

* Removing use of argoDB.db for DistributionFunction

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

* Update generated documentation

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

* Fix comment about NoShardingDistributionFunction and NoShardingAlgorithm

Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>
Signed-off-by: Akram Ben Aissi <akram.benaissi@gmail.com>
Co-authored-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>
2024-01-11 01:32:11 -05:00
Alexandre Gaudreault
54f1572d46 fix: allow to run codegen outside GOPATH (#16511)
* fix: allow to run codegen outside GOPATH

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* clientgen

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* openapigen

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

* remove ensure-gopath

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre.gaudreault@logmein.com>
2024-01-09 21:09:34 -05:00
Mahesh Kasbe
d6da9f2a15 Added Openkruise workload integration health check scripts (#16238)
Signed-off-by: Mahesh <maheshkasbe010@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
2024-01-09 21:05:07 -05:00
Anand Francis Joseph
9b27aeb1a4 Added socks5 proxy support for ssh based git URL, upgraded go-git to 5.10.1 (#15864)
Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>
2024-01-09 09:41:12 -05:00
mugi
2024659696 chore(manifests): add ClsuterRole/ClusterRoleBinding for applicationset controller. (#16699)
Closes https://github.com/argoproj/argo-cd/issues/16698.

Signed-off-by: mugioka <okamugi0722@gmail.com>
2024-01-08 22:57:27 -05:00
Ishita Sequeira
8ebe1cd3c4 fix: add list permission deployments (#16785)
* add list permissions for deployments to application controller

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* revert redis-ha chart changes

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

* revert redis-ha chart changes

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>

---------

Signed-off-by: ishitasequeira <ishiseq29@gmail.com>
2024-01-08 21:58:34 -05:00
Alexander Matyushentsev
c5b9c67073 fix: support specifying username/password for redis holding manifests in argocd-server (#16786)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-01-09 00:04:46 +00:00
Lie Ryan
40760eb852 Document restarting argocd after modifying argocd-cm (#12405)
Signed-off-by: Lie Ryan <lie.1296@gmail.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>
2024-01-07 17:48:54 +01:00
mfreeman451
ecbd24da10 docs: Update signed-release-assets.md (#16755)
Missing \ in example

Signed-off-by: mfreeman451 <mfreeman451@gmail.com>
2024-01-05 19:04:54 -05:00
Michael Crenshaw
c4ac5aaa97 docs: add context to configmap example (#16763)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-01-05 20:13:35 +00:00
Alexander Matyushentsev
4afddf71cc feat: webhook should use 'rename' to copy app manifests of previous commit (#16754)
Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
2024-01-05 08:53:52 -08:00
Yi Cai
1372529d56 fix(ui):Fixed log horizontal scroll for issue #16411 (#16727)
* Fixed log horizontal scroll

Signed-off-by: Yi Cai <yicai@redhat.com>

* Updated log line-height

Signed-off-by: Yi Cai <yicai@redhat.com>

---------

Signed-off-by: Yi Cai <yicai@redhat.com>
2024-01-05 08:53:08 -08:00
Greg Werner
d5955508da Update USERS.md with IllumiDesk (#16742)
Signed-off-by: Greg Werner <werner.greg@gmail.com>
2024-01-04 11:05:33 +05:30
Nicholas Morey
1975074de5 docs: remove core install commands from getting started (#16735)
* docs: remove core install commands from getting started

I often accidentally run the core install commands when quickly copying and pasting commands from the getting started guide, which leads to confusion. I've also spent plenty of time helping newcomers to Argo CD who have done the same and are confused when they can't reach the UI.

Given that this is a "getting started" guide, it's ideal to provide only the commands required. I've removed the commands and left the link out to the core install page for those who are interested in going down that path.

Signed-off-by: Nicholas Morey <nicholas@morey.tech>

* fix: use link to install commands in core docs

Signed-off-by: Nicholas Morey <nicholas@morey.tech>

* fix: use tip and improve wording

Signed-off-by: Nicholas Morey <nicholas@morey.tech>

---------

Signed-off-by: Nicholas Morey <nicholas@morey.tech>
2024-01-03 17:58:26 +00:00
Michael Crenshaw
a40330f5c8 docs: configmap items are strings (#16737)
Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
2024-01-03 17:08:24 +00:00
Noam Gal
80ca563909 fix broken link (#16722)
Signed-off-by: Noam Gal <noam.gal@codefresh.io>
2023-12-31 17:46:58 +01:00
Nenad Strainovic
f0f4a4e438 Multiple hook delete policies can be specified as a comma separated list (#16659)
Based on https://github.com/argoproj/gitops-engine/blob/master/pkg/sync/hook/delete_policy.go#L13 multiple hook delete policies are also allowed.

Signed-off-by: Nenad Strainovic <nenad.strainovic@asseco-see.rs>
2023-12-28 12:32:15 +01:00
Mark Estiller
20f7182489 Update contributors-quickstart.md to include a link to Go's installation guide (#16691)
Signed-off-by: Mark Estiller <markalestiller@gmail.com>
2023-12-28 11:17:00 +01:00
Sanchaai Mathiyarasan
7d1f6a1e94 Update contributors-quickstart.md to include minikube as local cluster alternative. (#16690)
Signed-off-by: Sanchaai Mathiyarasan <sanchaai.mathi@gmail.com>
2023-12-28 11:15:36 +01:00
Robin Lieb
0e67ed89ac feat: add initiated by in history and rollback view (#16654)
Signed-off-by: Robin Lieb <robin.j.lieb@gmail.com>
2023-12-22 16:50:33 +00:00
Abhishek Veeramalla
7847e7f393 chore: fix typo in application controller description (#16671)
Signed-off-by: iam-veeramalla <abhishek.veeramalla@gmail.com>
2023-12-21 08:34:06 +00:00
dependabot[bot]
3224102664 chore(deps): bump golang.org/x/crypto from 0.14.0 to 0.17.0 (#16645)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.14.0 to 0.17.0.
- [Commits](https://github.com/golang/crypto/compare/v0.14.0...v0.17.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-19 00:25:22 +00:00
2037 changed files with 252465 additions and 81252 deletions

View File

@@ -8,6 +8,7 @@ ignore:
- "pkg/client/.*"
- "vendor/.*"
- "test/.*"
- "**/mocks/*"
coverage:
status:
# we've found this not to be useful

13
.gitattributes vendored Normal file
View File

@@ -0,0 +1,13 @@
**/*.pb.go linguist-generated=true
**/mocks/*.go linguist-generated=true
assets/swagger.json linguist-generated=true
docs/operator-manual/resource_actions_builtin.md linguist-generated=true
docs/operator-manual/server-commands/argocd-*.md linguist-generated=true
docs/user-guide/commands/argocd_*.md linguist-generated=true
manifests/core-install.yaml linguist-generated=true
manifests/crds/*-crd.yaml linguist-generated=true
manifests/ha/install.yaml linguist-generated=true
manifests/ha/namespace-install.yaml linguist-generated=true
manifests/install.yaml linguist-generated=true
manifests/namespace-install.yaml linguist-generated=true
pkg/apis/api-rules/violation_exceptions.list linguist-generated=true

43
.github/ISSUE_TEMPLATE/new_dev_tool.md vendored Normal file
View File

@@ -0,0 +1,43 @@
---
name: New Dev Tool Request
about: This is a request for adding a new tool for setting up a dev environment.
title: ''
labels: ''
assignees: ''
---
Checklist:
* [ ] I am willing to maintain this tool, or have another Argo CD maintainer who is.
* [ ] I have another Argo CD maintainer who is willing to help maintain this tool (there needs to be at least two maintainers willing to maintain this tool)
* [ ] I have a lead sponsor who is a core Argo CD maintainer
* [ ] There is a PR which adds said tool - this is so that the maintainers can assess the impact of having this in the tree
* [ ] I have given a motivation why this should be added
### The proposer
<-- The username(s) of the person(s) proposing the tool -->
### The proposed tool
<!-- The tool itself, with a link to the tools website -->
### Motivation
<!-- Why this tool would be useful to have in the tree. -->
### Link to PR (Optional)
<!-- A PR adding the tool to the tree -->
### Lead Sponsor(s)
Final approval requires sponsorship from at least one core maintainer.
- @<sponsor-1>
### Co-sponsors
These will be the co-maintainers of the specified tool.
- @<sponsor-1>

View File

@@ -4,8 +4,13 @@ updates:
directory: "/"
schedule:
interval: "daily"
open-pull-requests-limit: 20
ignore:
- dependency-name: k8s.io/*
groups:
otel:
patterns:
- "^go.opentelemetry.io/.*"
- package-ecosystem: "github-actions"
directory: "/"
@@ -17,10 +22,20 @@ updates:
schedule:
interval: "daily"
- package-ecosystem: "npm"
directory: "/ui-test/"
schedule:
interval: "daily"
- package-ecosystem: "docker"
directory: "/"
schedule:
interval: "daily"
ignore:
# We use consistent go and node versions across a lot of different files, and updating via dependabot would cause
# drift among those files, instead we let renovate bot handle them.
- dependency-name: "library/golang"
- dependency-name: "library/node"
- package-ecosystem: "docker"
directory: "/test/container/"

View File

@@ -6,9 +6,10 @@
| codeql.yaml | CodeQL analysis |
| image-reuse.yaml | Build, push, and Sign container images |
| image.yaml | Build container image for PR's & publish for push events |
| pr-title-check.yaml| Lint PR for semantic information |
| init-release.yaml | Build manifests and version then create a PR for release branch|
| pr-title-check.yaml| Lint PR for semantic information |
| release.yaml | Build images, cli-binaries, provenances, and post actions |
| scorecard.yaml | Generate scorecard for supply-chain security |
| update-snyk.yaml | Scheduled snyk reports |
# Reusable workflows

View File

@@ -1,5 +1,5 @@
name: Integration tests
on:
on:
push:
branches:
- 'master'
@@ -13,7 +13,8 @@ on:
env:
# Golang version to use across CI steps
GOLANG_VERSION: '1.21'
# renovate: datasource=golang-version packageName=golang
GOLANG_VERSION: '1.23.3'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
@@ -23,36 +24,65 @@ permissions:
contents: read
jobs:
changes:
runs-on: ubuntu-latest
outputs:
backend: ${{ steps.filter.outputs.backend_any_changed }}
frontend: ${{ steps.filter.outputs.frontend_any_changed }}
docs: ${{ steps.filter.outputs.docs_any_changed }}
steps:
- uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
- uses: tj-actions/changed-files@bab30c2299617f6615ec02a68b9a40d10bd21366 # v45.0.5
id: filter
with:
# Any file which is not under docs/, ui/ or is not a markdown file is counted as a backend file
files_yaml: |
backend:
- '!ui/**'
- '!**.md'
- '!**/*.md'
- '!docs/**'
frontend:
- 'ui/**'
- Dockerfile
docs:
- 'docs/**'
check-go:
name: Ensure Go modules synchronicity
if: ${{ needs.changes.outputs.backend == 'true' }}
runs-on: ubuntu-22.04
needs:
- changes
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
- name: Setup Golang
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.0.0
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: ${{ env.GOLANG_VERSION }}
- name: Download all Go modules
run: |
go mod download
- name: Check for tidyness of go.mod and go.sum
- name: Check for tidiness of go.mod and go.sum
run: |
go mod tidy
git diff --exit-code -- .
build-go:
name: Build & cache Go code
if: ${{ needs.changes.outputs.backend == 'true' }}
runs-on: ubuntu-22.04
needs:
- changes
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
- name: Setup Golang
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.0.0
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: ${{ env.GOLANG_VERSION }}
- name: Restore go build cache
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/.cache/go-build
key: ${{ runner.os }}-go-build-v1-${{ github.run_id }}
@@ -67,37 +97,43 @@ jobs:
contents: read # for actions/checkout to fetch code
pull-requests: read # for golangci/golangci-lint-action to fetch pull requests
name: Lint Go code
if: ${{ needs.changes.outputs.backend == 'true' }}
runs-on: ubuntu-22.04
needs:
- changes
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
- name: Setup Golang
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.0.0
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: ${{ env.GOLANG_VERSION }}
- name: Run golangci-lint
uses: golangci/golangci-lint-action@3a919529898de77ec3da873e3063ca4b10e7f5cc # v3.7.0
uses: golangci/golangci-lint-action@971e284b6050e8a5849b72094c50ab08da042db8 # v6.1.1
with:
version: v1.54.0
args: --enable gofmt --timeout 10m --exclude SA5011 --verbose --max-issues-per-linter 0 --max-same-issues 0
# renovate: datasource=go packageName=github.com/golangci/golangci-lint versioning=regex:^v(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)?$
version: v1.62.2
args: --verbose
test-go:
name: Run unit tests for Go packages
if: ${{ needs.changes.outputs.backend == 'true' }}
runs-on: ubuntu-22.04
needs:
- build-go
- changes
env:
GITHUB_TOKEN: ${{ secrets.E2E_TEST_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
GITLAB_TOKEN: ${{ secrets.E2E_TEST_GITLAB_TOKEN }}
GITLAB_TOKEN: ${{ secrets.E2E_TEST_GITLAB_TOKEN }}
steps:
- name: Create checkout directory
run: mkdir -p ~/go/src/github.com/argoproj
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
- name: Create symlink in GOPATH
run: ln -s $(pwd) ~/go/src/github.com/argoproj/argo-cd
- name: Setup Golang
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.0.0
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: ${{ env.GOLANG_VERSION }}
- name: Install required packages
@@ -117,7 +153,7 @@ jobs:
run: |
echo "/usr/local/bin" >> $GITHUB_PATH
- name: Restore go build cache
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/.cache/go-build
key: ${{ runner.os }}-go-build-v1-${{ github.run_id }}
@@ -137,34 +173,31 @@ jobs:
go mod download
- name: Run all unit tests
run: make test-local
- name: Generate code coverage artifacts
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
with:
name: code-coverage
path: coverage.out
- name: Generate test results artifacts
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3
with:
name: test-results
path: test-results/
path: test-results
test-go-race:
name: Run unit tests with -race for Go packages
if: ${{ needs.changes.outputs.backend == 'true' }}
runs-on: ubuntu-22.04
needs:
- build-go
- changes
env:
GITHUB_TOKEN: ${{ secrets.E2E_TEST_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
GITLAB_TOKEN: ${{ secrets.E2E_TEST_GITLAB_TOKEN }}
GITLAB_TOKEN: ${{ secrets.E2E_TEST_GITLAB_TOKEN }}
steps:
- name: Create checkout directory
run: mkdir -p ~/go/src/github.com/argoproj
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
- name: Create symlink in GOPATH
run: ln -s $(pwd) ~/go/src/github.com/argoproj/argo-cd
- name: Setup Golang
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.0.0
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: ${{ env.GOLANG_VERSION }}
- name: Install required packages
@@ -184,7 +217,7 @@ jobs:
run: |
echo "/usr/local/bin" >> $GITHUB_PATH
- name: Restore go build cache
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/.cache/go-build
key: ${{ runner.os }}-go-build-v1-${{ github.run_id }}
@@ -205,19 +238,22 @@ jobs:
- name: Run all unit tests
run: make test-race-local
- name: Generate test results artifacts
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3
with:
name: race-results
path: test-results/
codegen:
name: Check changes to generated code
if: ${{ needs.changes.outputs.backend == 'true' || needs.changes.outputs.docs == 'true'}}
runs-on: ubuntu-22.04
needs:
- changes
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
- name: Setup Golang
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.0.0
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: ${{ env.GOLANG_VERSION }}
- name: Create symlink in GOPATH
@@ -260,17 +296,22 @@ jobs:
build-ui:
name: Build, test & lint UI code
# We run UI logic for backend changes so that we have a complete set of coverage documents to send to codecov.
if: ${{ needs.changes.outputs.backend == 'true' || needs.changes.outputs.frontend == 'true' }}
runs-on: ubuntu-22.04
needs:
- changes
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
- name: Setup NodeJS
uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
with:
node-version: '20.7.0'
# renovate: datasource=node-version packageName=node versioning=node
node-version: '22.9.0'
- name: Restore node dependency cache
id: cache-dependencies
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ui/node_modules
key: ${{ runner.os }}-node-dep-v2-${{ hashFiles('**/yarn.lock') }}
@@ -285,6 +326,8 @@ jobs:
NODE_ENV: production
NODE_ONLINE_ENV: online
HOST_ARCH: amd64
# If we're on the master branch, set the codecov token so that we upload bundle analysis
CODECOV_TOKEN: ${{ github.ref == 'refs/heads/master' && secrets.CODECOV_TOKEN || '' }}
working-directory: ui/
- name: Run ESLint
run: yarn lint
@@ -292,79 +335,86 @@ jobs:
analyze:
name: Process & analyze test artifacts
if: ${{ needs.changes.outputs.backend == 'true' || needs.changes.outputs.frontend == 'true' }}
runs-on: ubuntu-22.04
needs:
- test-go
- build-ui
- changes
- test-e2e
env:
sonar_secret: ${{ secrets.SONAR_TOKEN }}
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
with:
fetch-depth: 0
- name: Restore node dependency cache
id: cache-dependencies
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ui/node_modules
key: ${{ runner.os }}-node-dep-v2-${{ hashFiles('**/yarn.lock') }}
- name: Remove other node_modules directory
run: |
rm -rf ui/node_modules/argo-ui/node_modules
- name: Create test-results directory
run: |
mkdir -p test-results
- name: Get code coverage artifiact
uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3.0.2
- name: Get e2e code coverage
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: code-coverage
- name: Get test result artifact
uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3.0.2
name: e2e-code-coverage
path: e2e-code-coverage
- name: Get unit test code coverage
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: test-results
path: test-results
- name: combine-go-coverage
# We generate coverage reports for all Argo CD components, but only the applicationset-controller,
# app-controller, repo-server, and commit-server report contain coverage data. The other components currently
# don't shut down gracefully, so no coverage data is produced. Once those components are fixed, we can add
# references to their coverage output directories.
run: |
go tool covdata percent -i=test-results,e2e-code-coverage/applicationset-controller,e2e-code-coverage/repo-server,e2e-code-coverage/app-controller,e2e-code-coverage/commit-server -o test-results/full-coverage.out
- name: Upload code coverage information to codecov.io
uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # v3.1.4
uses: codecov/codecov-action@b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238 # v4.6.0
with:
file: coverage.out
file: test-results/full-coverage.out
fail_ci_if_error: true
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
- name: Upload test results to Codecov
if: github.ref == 'refs/heads/master' && github.event_name == 'push' && github.repository == 'argoproj/argo-cd'
uses: codecov/test-results-action@9739113ad922ea0a9abb4b2c0f8bf6a4aa8ef820 # v1.0.1
with:
file: test-results/junit.xml
fail_ci_if_error: true
token: ${{ secrets.CODECOV_TOKEN }}
- name: Perform static code analysis using SonarCloud
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
SCANNER_VERSION: 4.2.0.1873
SCANNER_PATH: /tmp/cache/scanner
OS: linux
run: |
# We do not use the provided action, because it does contain an old
# version of the scanner, and also takes time to build.
set -e
mkdir -p ${SCANNER_PATH}
export SONAR_USER_HOME=${SCANNER_PATH}/.sonar
if [[ ! -x "${SCANNER_PATH}/sonar-scanner-${SCANNER_VERSION}-${OS}/bin/sonar-scanner" ]]; then
curl -Ol https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-${SCANNER_VERSION}-${OS}.zip
unzip -qq -o sonar-scanner-cli-${SCANNER_VERSION}-${OS}.zip -d ${SCANNER_PATH}
fi
chmod +x ${SCANNER_PATH}/sonar-scanner-${SCANNER_VERSION}-${OS}/bin/sonar-scanner
chmod +x ${SCANNER_PATH}/sonar-scanner-${SCANNER_VERSION}-${OS}/jre/bin/java
# Explicitly set NODE_MODULES
export NODE_MODULES=${PWD}/ui/node_modules
export NODE_PATH=${PWD}/ui/node_modules
${SCANNER_PATH}/sonar-scanner-${SCANNER_VERSION}-${OS}/bin/sonar-scanner
uses: SonarSource/sonarqube-scan-action@1b442ee39ac3fa7c2acdd410208dcb2bcfaae6c4 # v4.1.0
if: env.sonar_secret != ''
test-e2e:
name: Run end-to-end tests
if: ${{ needs.changes.outputs.backend == 'true' }}
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
k3s-version: [v1.28.2, v1.27.6, v1.26.9, v1.25.14]
needs:
k3s:
- version: v1.31.0
# We designate the latest version because we only collect code coverage for that version.
latest: true
- version: v1.30.4
latest: false
- version: v1.29.8
latest: false
- version: v1.28.13
latest: false
needs:
- build-go
- changes
env:
GOPATH: /home/runner/go
ARGOCD_FAKE_IN_CLUSTER: "true"
@@ -377,12 +427,12 @@ jobs:
ARGOCD_APPLICATION_NAMESPACES: "argocd-e2e-external,argocd-e2e-external-2"
ARGOCD_SERVER: "127.0.0.1:8088"
GITHUB_TOKEN: ${{ secrets.E2E_TEST_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
GITLAB_TOKEN: ${{ secrets.E2E_TEST_GITLAB_TOKEN }}
GITLAB_TOKEN: ${{ secrets.E2E_TEST_GITLAB_TOKEN }}
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
- name: Setup Golang
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.0.0
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: ${{ env.GOLANG_VERSION }}
- name: GH actions workaround - Kill XSP4 process
@@ -390,7 +440,7 @@ jobs:
sudo pkill mono || true
- name: Install K3S
env:
INSTALL_K3S_VERSION: ${{ matrix.k3s-version }}+k3s1
INSTALL_K3S_VERSION: ${{ matrix.k3s.version }}+k3s1
run: |
set -x
curl -sfL https://get.k3s.io | sh -
@@ -401,7 +451,7 @@ jobs:
sudo chmod go-r $HOME/.kube/config
kubectl version
- name: Restore go build cache
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/.cache/go-build
key: ${{ runner.os }}-go-build-v1-${{ github.run_id }}
@@ -427,7 +477,7 @@ jobs:
git config --global user.email "john.doe@example.com"
- name: Pull Docker image required for tests
run: |
docker pull ghcr.io/dexidp/dex:v2.37.0
docker pull ghcr.io/dexidp/dex:v2.41.1
docker pull argoproj/argo-cd-ci-builder:v1.0.0
docker pull redis:7.0.15-alpine
- name: Create target directory for binaries in the build-process
@@ -442,7 +492,7 @@ jobs:
# port 8080 which is not visible in netstat -tulpen, but still there
# with a HTTP listener. We have API server listening on port 8088
# instead.
make start-e2e-local 2>&1 | sed -r "s/[[:cntrl:]]\[[0-9]{1,3}m//g" > /tmp/e2e-server.log &
make start-e2e-local COVERAGE_ENABLED=true 2>&1 | sed -r "s/[[:cntrl:]]\[[0-9]{1,3}m//g" > /tmp/e2e-server.log &
count=1
until curl -f http://127.0.0.1:8088/healthz; do
sleep 10;
@@ -456,9 +506,40 @@ jobs:
run: |
set -x
make test-e2e-local
- name: Upload e2e-server logs
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
goreman run stop-all || echo "goreman trouble"
sleep 30
- name: Upload e2e coverage report
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3
with:
name: e2e-server-k8s${{ matrix.k3s-version }}.log
name: e2e-code-coverage
path: /tmp/coverage
if: ${{ matrix.k3s.latest }}
- name: Upload e2e-server logs
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3
with:
name: e2e-server-k8s${{ matrix.k3s.version }}.log
path: /tmp/e2e-server.log
if: ${{ failure() }}
# workaround for status checks -- check this one job instead of each individual E2E job in the matrix
# this allows us to skip the entire matrix when it doesn't need to run while still having accurate status checks
# see:
# https://github.com/argoproj/argo-workflows/pull/12006
# https://github.com/orgs/community/discussions/9141#discussioncomment-2296809
# https://github.com/orgs/community/discussions/26822#discussioncomment-3305794
test-e2e-composite-result:
name: E2E Tests - Composite result
if: ${{ always() }}
needs:
- test-e2e
- changes
runs-on: ubuntu-22.04
steps:
- run: |
result="${{ needs.test-e2e.result }}"
# mark as successful even if skipped
if [[ $result == "success" || $result == "skipped" ]]; then
exit 0
else
exit 1
fi

View File

@@ -23,23 +23,23 @@ jobs:
actions: read # for github/codeql-action/init to get workflow details
contents: read # for actions/checkout to fetch code
security-events: write # for github/codeql-action/autobuild to send a status report
if: github.repository == 'argoproj/argo-cd'
if: github.repository == 'argoproj/argo-cd' || vars.enable_codeql
# CodeQL runs on ubuntu-latest and windows-latest
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
# Use correct go version. https://github.com/github/codeql-action/issues/1842#issuecomment-1704398087
- name: Setup Golang
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.0.0
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: go.mod
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@8aff97f12c99086bdb92ff62ae06dbbcdf07941b # v2.1.33
uses: github/codeql-action/init@8fcfedf57053e09257688fce7a0beeb18b1b9ae3 # v2.17.2
# Override language selection by uncommenting this and choosing your languages
# with:
# languages: go, javascript, csharp, python, cpp, java
@@ -47,7 +47,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@8aff97f12c99086bdb92ff62ae06dbbcdf07941b # v2.1.33
uses: github/codeql-action/autobuild@8fcfedf57053e09257688fce7a0beeb18b1b9ae3 # v2.17.2
# Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
@@ -61,4 +61,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@8aff97f12c99086bdb92ff62ae06dbbcdf07941b # v2.1.33
uses: github/codeql-action/analyze@8fcfedf57053e09257688fce7a0beeb18b1b9ae3 # v2.17.2

View File

@@ -58,26 +58,26 @@ jobs:
image-digest: ${{ steps.image.outputs.digest }}
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}
if: ${{ github.ref_type == 'tag'}}
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
if: ${{ github.ref_type != 'tag'}}
- name: Setup Golang
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: ${{ inputs.go-version }}
- name: Install cosign
uses: sigstore/cosign-installer@e1523de7571e31dbe865fd2e80c5c7c23ae71eb4 # v3.4.0
uses: sigstore/cosign-installer@dc72c7d5c4d10cd6bcb8cf6e3fd625a9e5e537da # v3.7.0
- uses: docker/setup-qemu-action@2b82ce82d56a2a04d2637cd93a637ae1b359c0a7 # v2.2.0
- uses: docker/setup-buildx-action@f95db51fddba0c2d1ec667646a06c2ce06100226 # v3.0.0
- uses: docker/setup-qemu-action@49b3bc8e6bdd4a60e6116a5414239cba5943d3cf # v3.2.0
- uses: docker/setup-buildx-action@c47758b77c9736f4b2ef4073d4d51994fabfe349 # v3.7.1
- name: Setup tags for container image as a CSV type
run: |
@@ -104,7 +104,7 @@ jobs:
echo 'EOF' >> $GITHUB_ENV
- name: Login to Quay.io
uses: docker/login-action@465a07811f14bebb1938fbed4728c6a1ff8901fc # v2.2.0
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0
with:
registry: quay.io
username: ${{ secrets.quay_username }}
@@ -112,7 +112,7 @@ jobs:
if: ${{ inputs.quay_image_name && inputs.push }}
- name: Login to GitHub Container Registry
uses: docker/login-action@465a07811f14bebb1938fbed4728c6a1ff8901fc # v2.2.0
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0
with:
registry: ghcr.io
username: ${{ secrets.ghcr_username }}
@@ -120,7 +120,7 @@ jobs:
if: ${{ inputs.ghcr_image_name && inputs.push }}
- name: Login to dockerhub Container Registry
uses: docker/login-action@465a07811f14bebb1938fbed4728c6a1ff8901fc # v2.2.0
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0
with:
username: ${{ secrets.docker_username }}
password: ${{ secrets.docker_password }}
@@ -134,7 +134,7 @@ jobs:
echo "GIT_TREE_STATE=$(if [ -z "`git status --porcelain`" ]; then echo "clean" ; else echo "dirty"; fi)" >> $GITHUB_ENV
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@4d9e71b726748f254fe64fa44d273194bd18ec91
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be
with:
large-packages: false
docker-images: false
@@ -143,7 +143,7 @@ jobs:
- name: Build and push container image
id: image
uses: docker/build-push-action@4a13e500e55cf31b7a5d59a38ab2040ab0f42f56 #v5.1.0
uses: docker/build-push-action@48aba3b46d1b1fec4febb7c5d0c644b249a11355 #v6.10.0
with:
context: .
platforms: ${{ inputs.platforms }}

View File

@@ -25,7 +25,7 @@ jobs:
image-tag: ${{ steps.image.outputs.tag}}
platforms: ${{ steps.platforms.outputs.platforms }}
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
- uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
- name: Set image tag for ghcr
run: echo "tag=$(cat ./VERSION)-${GITHUB_SHA::8}" >> $GITHUB_OUTPUT
@@ -52,7 +52,8 @@ jobs:
uses: ./.github/workflows/image-reuse.yaml
with:
# Note: cannot use env variables to set go-version (https://docs.github.com/en/actions/using-workflows/reusing-workflows#limitations)
go-version: 1.21
# renovate: datasource=golang-version packageName=golang
go-version: 1.23.3
platforms: ${{ needs.set-vars.outputs.platforms }}
push: false
@@ -68,7 +69,8 @@ jobs:
quay_image_name: quay.io/argoproj/argocd:latest
ghcr_image_name: ghcr.io/argoproj/argo-cd/argocd:${{ needs.set-vars.outputs.image-tag }}
# Note: cannot use env variables to set go-version (https://docs.github.com/en/actions/using-workflows/reusing-workflows#limitations)
go-version: 1.21
# renovate: datasource=golang-version packageName=golang
go-version: 1.23.3
platforms: ${{ needs.set-vars.outputs.platforms }}
push: true
secrets:
@@ -86,7 +88,7 @@ jobs:
packages: write # for uploading attestations. (https://github.com/slsa-framework/slsa-github-generator/blob/main/internal/builders/container/README.md#known-issues)
if: ${{ github.repository == 'argoproj/argo-cd' && github.event_name == 'push' }}
# Must be refernced by a tag. https://github.com/slsa-framework/slsa-github-generator/blob/main/internal/builders/container/README.md#referencing-the-slsa-generator
uses: slsa-framework/slsa-github-generator/.github/workflows/generator_container_slsa3.yml@v2.1.0
uses: slsa-framework/slsa-github-generator/.github/workflows/generator_container_slsa3.yml@v2.0.0
with:
image: ghcr.io/argoproj/argo-cd/argocd
digest: ${{ needs.build-and-publish.outputs.image-digest }}
@@ -104,7 +106,7 @@ jobs:
if: ${{ github.repository == 'argoproj/argo-cd' && github.event_name == 'push' }}
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
- uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
- run: git clone "https://$TOKEN@github.com/argoproj/argoproj-deployments"
env:
TOKEN: ${{ secrets.TOKEN }}

View File

@@ -23,7 +23,7 @@ jobs:
runs-on: ubuntu-22.04
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}
@@ -64,7 +64,7 @@ jobs:
git stash pop
- name: Create pull request
uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38 # v5.0.2
uses: peter-evans/create-pull-request@5e914681df9dc83aa4e4905692ca88beb2f9e91f # v7.0.5
with:
commit-message: "Bump version to ${{ inputs.TARGET_VERSION }}"
title: "Bump version to ${{ inputs.TARGET_VERSION }} on ${{ inputs.TARGET_BRANCH }} branch"

View File

@@ -23,7 +23,7 @@ jobs:
name: Validate PR Title
runs-on: ubuntu-latest
steps:
- uses: thehanimo/pr-title-checker@0cf5902181e78341bb97bb06646396e5bd354b3f # v1.4.0
- uses: thehanimo/pr-title-checker@7fbfe05602bdd86f926d3fb3bccb6f3aed43bc70 # v1.4.3
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
configuration_path: ".github/pr-title-checker-config.json"

View File

@@ -10,7 +10,8 @@ on:
permissions: {}
env:
GOLANG_VERSION: '1.21' # Note: go-version must also be set in job argocd-image.with.go-version
# renovate: datasource=golang-version packageName=golang
GOLANG_VERSION: '1.23.3' # Note: go-version must also be set in job argocd-image.with.go-version
jobs:
argocd-image:
@@ -23,7 +24,8 @@ jobs:
with:
quay_image_name: quay.io/argoproj/argocd:${{ github.ref_name }}
# Note: cannot use env variables to set go-version (https://docs.github.com/en/actions/using-workflows/reusing-workflows#limitations)
go-version: 1.21
# renovate: datasource=golang-version packageName=golang
go-version: 1.23.3
platforms: linux/amd64,linux/arm64,linux/s390x,linux/ppc64le
push: true
secrets:
@@ -31,20 +33,20 @@ jobs:
quay_password: ${{ secrets.RELEASE_QUAY_TOKEN }}
argocd-image-provenance:
needs: [argocd-image]
permissions:
actions: read # for detecting the Github Actions environment.
id-token: write # for creating OIDC tokens for signing.
packages: write # for uploading attestations. (https://github.com/slsa-framework/slsa-github-generator/blob/main/internal/builders/container/README.md#known-issues)
# Must be refernced by a tag. https://github.com/slsa-framework/slsa-github-generator/blob/main/internal/builders/container/README.md#referencing-the-slsa-generator
if: github.repository == 'argoproj/argo-cd'
uses: slsa-framework/slsa-github-generator/.github/workflows/generator_container_slsa3.yml@v2.1.0
with:
image: quay.io/argoproj/argocd
digest: ${{ needs.argocd-image.outputs.image-digest }}
secrets:
registry-username: ${{ secrets.RELEASE_QUAY_USERNAME }}
registry-password: ${{ secrets.RELEASE_QUAY_TOKEN }}
needs: [argocd-image]
permissions:
actions: read # for detecting the Github Actions environment.
id-token: write # for creating OIDC tokens for signing.
packages: write # for uploading attestations. (https://github.com/slsa-framework/slsa-github-generator/blob/main/internal/builders/container/README.md#known-issues)
# Must be refernced by a tag. https://github.com/slsa-framework/slsa-github-generator/blob/main/internal/builders/container/README.md#referencing-the-slsa-generator
if: github.repository == 'argoproj/argo-cd'
uses: slsa-framework/slsa-github-generator/.github/workflows/generator_container_slsa3.yml@v2.0.0
with:
image: quay.io/argoproj/argocd
digest: ${{ needs.argocd-image.outputs.image-digest }}
secrets:
registry-username: ${{ secrets.RELEASE_QUAY_USERNAME }}
registry-password: ${{ secrets.RELEASE_QUAY_TOKEN }}
goreleaser:
needs:
@@ -59,7 +61,7 @@ jobs:
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}
@@ -67,20 +69,16 @@ jobs:
- name: Fetch all tags
run: git fetch --force --tags
- name: Set GORELEASER_PREVIOUS_TAG # Workaround, GoReleaser uses 'git-describe' to determine a previous tag. Our tags are created in realease branches.
run: |
set -xue
if echo ${{ github.ref_name }} | grep -E -- '-rc1+$';then
echo "GORELEASER_PREVIOUS_TAG=$(git -c 'versionsort.suffix=-rc' tag --list --sort=version:refname | tail -n 2 | head -n 1)" >> $GITHUB_ENV
else
echo "This is not the first release on the branch, Using GoReleaser defaults"
fi
- name: Setup Golang
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.0.0
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: ${{ env.GOLANG_VERSION }}
- name: Set GORELEASER_PREVIOUS_TAG # Workaround, GoReleaser uses 'git-describe' to determine a previous tag. Our tags are created in release branches.
run: |
set -xue
echo "GORELEASER_PREVIOUS_TAG=$(go run hack/get-previous-release/get-previous-version-for-release-notes.go ${{ github.ref_name }})" >> $GITHUB_ENV
- name: Set environment variables for ldflags
id: set_ldflag
run: |
@@ -88,7 +86,7 @@ jobs:
echo "GIT_TREE_STATE=$(if [ -z "`git status --porcelain`" ]; then echo "clean" ; else echo "dirty"; fi)" >> $GITHUB_ENV
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@4d9e71b726748f254fe64fa44d273194bd18ec91
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be
with:
large-packages: false
docker-images: false
@@ -96,14 +94,14 @@ jobs:
tool-cache: false
- name: Run GoReleaser
uses: goreleaser/goreleaser-action@7ec5c2b0c6cdda6e8bbb49444bc797dd33d74dd8 # v5.0.0
uses: goreleaser/goreleaser-action@9ed2f89a662bf1735a48bc8557fd212fa902bebf # v6.1.0
id: run-goreleaser
with:
version: latest
args: release --clean --timeout 55m
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
KUBECTL_VERSION: ${{ env.KUBECTL_VERSION }}
KUBECTL_VERSION: ${{ env.KUBECTL_VERSION }}
GIT_TREE_STATE: ${{ env.GIT_TREE_STATE }}
- name: Generate subject for provenance
@@ -128,7 +126,7 @@ jobs:
contents: write # Needed for release uploads
if: github.repository == 'argoproj/argo-cd'
# Must be refernced by a tag. https://github.com/slsa-framework/slsa-github-generator/blob/main/internal/builders/container/README.md#referencing-the-slsa-generator
uses: slsa-framework/slsa-github-generator/.github/workflows/generator_generic_slsa3.yml@v2.1.0
uses: slsa-framework/slsa-github-generator/.github/workflows/generator_generic_slsa3.yml@v2.0.0
with:
base64-subjects: "${{ needs.goreleaser.outputs.hashes }}"
provenance-name: "argocd-cli.intoto.jsonl"
@@ -147,13 +145,13 @@ jobs:
runs-on: ubuntu-22.04
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}
- name: Setup Golang
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version: ${{ env.GOLANG_VERSION }}
@@ -186,7 +184,7 @@ jobs:
fi
cd /tmp && tar -zcf sbom.tar.gz *.spdx
- name: Generate SBOM hash
shell: bash
id: sbom-hash
@@ -195,15 +193,15 @@ jobs:
# base64 -w0 encodes to base64 and outputs on a single line.
# sha256sum /tmp/sbom.tar.gz ... | base64 -w0
echo "hashes=$(sha256sum /tmp/sbom.tar.gz | base64 -w0)" >> "$GITHUB_OUTPUT"
- name: Upload SBOM
uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844 # v0.1.15
uses: softprops/action-gh-release@7b4da11513bf3f43f9999e90eabced41ab8bb048 # v2.2.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
files: |
/tmp/sbom.tar.gz
sbom-provenance:
needs: [generate-sbom]
permissions:
@@ -212,12 +210,12 @@ jobs:
contents: write # Needed for release uploads
if: github.repository == 'argoproj/argo-cd'
# Must be referenced by a tag. https://github.com/slsa-framework/slsa-github-generator/blob/main/internal/builders/container/README.md#referencing-the-slsa-generator
uses: slsa-framework/slsa-github-generator/.github/workflows/generator_generic_slsa3.yml@v2.1.0
uses: slsa-framework/slsa-github-generator/.github/workflows/generator_generic_slsa3.yml@v2.0.0
with:
base64-subjects: "${{ needs.generate-sbom.outputs.hashes }}"
provenance-name: "argocd-sbom.intoto.jsonl"
upload-assets: true
post-release:
needs:
- argocd-image
@@ -230,7 +228,7 @@ jobs:
runs-on: ubuntu-22.04
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}
@@ -291,11 +289,11 @@ jobs:
# Replace the 'project-release: vX.X.X-rcX' line in SECURITY-INSIGHTS.yml
sed -i "s/project-release: v.*$/project-release: v${{ env.NEW_VERSION }}/" SECURITY-INSIGHTS.yml
# Update the 'commit-hash: XXXXXXX' line in SECURITY-INSIGHTS.yml
sed -i "s/commit-hash: .*/commit-hash: ${{ env.NEW_VERSION }}/" SECURITY-INSIGHTS.yml
sed -i "s/commit-hash: .*/commit-hash: ${{ env.COMMIT_HASH }}/" SECURITY-INSIGHTS.yml
if: ${{ env.UPDATE_VERSION == 'true' }}
- name: Create PR to update VERSION on master branch
uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38 # v5.0.2
uses: peter-evans/create-pull-request@5e914681df9dc83aa4e4905692ca88beb2f9e91f # v7.0.5
with:
commit-message: Bump version in master
title: "chore: Bump version in master"

View File

@@ -30,12 +30,12 @@ jobs:
steps:
- name: "Checkout code"
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
persist-credentials: false
- name: "Run analysis"
uses: ossf/scorecard-action@08b4669551908b1024bb425080c797723083c031 # v2.2.0
uses: ossf/scorecard-action@62b2cac7ed8198b15735ed49ab1e5cf35480ba46 # v2.4.0
with:
results_file: results.sarif
results_format: sarif
@@ -54,7 +54,7 @@ jobs:
# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
# format to the repository Actions tab.
- name: "Upload artifact"
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3
with:
name: SARIF file
path: results.sarif
@@ -62,6 +62,6 @@ jobs:
# Upload the results to GitHub's code scanning dashboard.
- name: "Upload to code-scanning"
uses: github/codeql-action/upload-sarif@3ebbd71c74ef574dbc558c82f70e52732c8b44fe # v2.2.1
uses: github/codeql-action/upload-sarif@8fcfedf57053e09257688fce7a0beeb18b1b9ae3 # v2.17.2
with:
sarif_file: results.sarif

View File

@@ -17,7 +17,7 @@ jobs:
runs-on: ubuntu-22.04
steps:
- name: Checkout code
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
uses: actions/checkout@8410ad0602e1e429cee44a835ae9f77f654a6694 # v4.0.0
with:
token: ${{ secrets.GITHUB_TOKEN }}
- name: Build reports

2
.gitignore vendored
View File

@@ -1,6 +1,7 @@
.vscode/
.idea/
.DS_Store
.run/
vendor/
dist/*
ui/dist/app/*
@@ -19,6 +20,7 @@ node_modules/
./test/cmp/*.sock
.envrc.remote
.*.swp
rerunreport.txt
# ignore built binaries
cmd/argocd/argocd

2
.gitpod.Dockerfile vendored
View File

@@ -1,4 +1,4 @@
FROM gitpod/workspace-full@sha256:511cecde4dc129ca9eb4cc4c479d61f95e5485ebe320a07f5b902f11899956a3
FROM gitpod/workspace-full@sha256:230285e0b949e6d728d384b2029a4111db7b9c87c182f22f32a0be9e36b225df
USER root

59
.golangci.yaml Normal file
View File

@@ -0,0 +1,59 @@
issues:
exclude:
- SA5011
max-issues-per-linter: 0
max-same-issues: 0
exclude-rules:
- path: '(.+)_test\.go'
linters:
- unparam
linters:
enable:
- errcheck
- errorlint
- gocritic
- gofumpt
- goimports
- gosimple
- govet
- ineffassign
- misspell
- perfsprint
- staticcheck
- testifylint
- thelper
- unparam
- unused
- usestdlibvars
- whitespace
linters-settings:
gocritic:
disabled-checks:
- appendAssign
- assignOp # Keep it disabled for readability
- badCond
- commentFormatting
- exitAfterDefer
- ifElseChain
- mapKey
- singleCaseSwitch
- typeSwitchVar
goimports:
local-prefixes: github.com/argoproj/argo-cd/v2
perfsprint:
# Optimizes even if it requires an int or uint type cast.
int-conversion: true
# Optimizes into `err.Error()` even if it is only equivalent for non-nil errors.
err-error: false
# Optimizes `fmt.Errorf`.
errorf: false
# Optimizes `fmt.Sprintf` with only one argument.
sprintf1: true
# Optimizes into strings concatenation.
strconcat: false
testifylint:
enable-all: true
disable:
- go-require
run:
timeout: 50m

View File

@@ -1,3 +1,5 @@
version: 2
project_name: argocd
before:

76
.mockery.yaml Normal file
View File

@@ -0,0 +1,76 @@
# global config
filename: "{{.InterfaceName}}.go"
dir: "{{.InterfaceDir}}/mocks"
outpkg: "mocks"
mockname: "{{.InterfaceName}}"
with-expecter: false
# individual interface config
packages:
github.com/argoproj/argo-cd/v2/applicationset/generators:
interfaces:
Generator:
github.com/argoproj/argo-cd/v2/applicationset/services:
interfaces:
Repos:
github.com/argoproj/argo-cd/v2/applicationset/services/scm_provider:
config:
dir: "applicationset/services/scm_provider/aws_codecommit/mocks"
interfaces:
AWSCodeCommitClient:
AWSTaggingClient:
github.com/microsoft/azure-devops-go-api/azuredevops/git:
config:
dir: "applicationset/services/scm_provider/azure_devops/git/mocks"
interfaces:
Client:
github.com/argoproj/argo-cd/v2/applicationset/utils:
interfaces:
Renderer:
github.com/argoproj/argo-cd/v2/commitserver/commit:
interfaces:
RepoClientFactory:
github.com/argoproj/argo-cd/v2/commitserver/apiclient:
interfaces:
CommitServiceClient:
Clientset:
github.com/argoproj/argo-cd/v2/controller/cache:
interfaces:
LiveStateCache:
github.com/argoproj/argo-cd/v2/reposerver/apiclient:
interfaces:
RepoServerServiceClient:
RepoServerService_GenerateManifestWithFilesClient:
github.com/argoproj/argo-cd/v2/server/application:
interfaces:
Broadcaster:
github.com/argoproj/argo-cd/v2/server/extension:
interfaces:
ApplicationGetter:
ExtensionMetricsRegistry:
ProjectGetter:
RbacEnforcer:
SettingsGetter:
UserGetter:
github.com/argoproj/argo-cd/v2/util/db:
interfaces:
ArgoDB:
github.com/argoproj/argo-cd/v2/util/git:
interfaces:
Client:
github.com/argoproj/argo-cd/v2/util/helm:
interfaces:
Client:
github.com/argoproj/argo-cd/v2/util/io:
interfaces:
TempPaths:
github.com/argoproj/argo-cd/v2/util/notification/argocd:
interfaces:
Service:
# These mocks are not currently used, but they are part of the public API of this package.
github.com/argoproj/argo-cd/v2/pkg/apiclient/session:
interfaces:
SessionServiceServer:
SessionServiceClient:
github.com/argoproj/argo-cd/v2/pkg/apiclient/cluster:
interfaces:
ClusterServiceServer:

View File

@@ -8,4 +8,4 @@ python:
build:
os: "ubuntu-22.04"
tools:
python: "3.7"
python: "3.12"

View File

@@ -2,10 +2,13 @@
** @argoproj/argocd-approvers
# Docs
/docs/** @argoproj/argocd-approvers @argoproj/argocd-approvers-docs
/USERS.md @argoproj/argocd-approvers @argoproj/argocd-approvers-docs
/mkdocs.yml @argoproj/argocd-approvers @argoproj/argocd-approvers-docs
/docs/** @argoproj/argocd-approvers @argoproj/argocd-approvers-docs
/USERS.md @argoproj/argocd-approvers @argoproj/argocd-approvers-docs
/README.md @argoproj/argocd-approvers @argoproj/argocd-approvers-docs
/mkdocs.yml @argoproj/argocd-approvers @argoproj/argocd-approvers-docs
# CI
/.github/** @argoproj/argocd-approvers @argoproj/argocd-approvers-ci
/.goreleaser.yaml @argoproj/argocd-approvers @argoproj/argocd-approvers-ci
/.codecov.yml @argoproj/argocd-approvers @argoproj/argocd-approvers-ci
/.github/** @argoproj/argocd-approvers @argoproj/argocd-approvers-ci
/.goreleaser.yaml @argoproj/argocd-approvers @argoproj/argocd-approvers-ci
/sonar-project.properties @argoproj/argocd-approvers @argoproj/argocd-approvers-ci

View File

@@ -1,10 +1,10 @@
ARG BASE_IMAGE=docker.io/library/ubuntu:22.04@sha256:0bced47fffa3361afa981854fcabcd4577cd43cebbb808cea2b1f33a3dd7f508
ARG BASE_IMAGE=docker.io/library/ubuntu:24.04@sha256:3f85b7caad41a95462cf5b787d8a04604c8262cdcdf9a472b8c52ef83375fe15
####################################################################################################
# Builder image
# Initial stage which pulls prepares build dependencies and CLI tooling we need for our final image
# Also used as the image in CI jobs so needs all dependencies
####################################################################################################
FROM docker.io/library/golang:1.21.10@sha256:16438a8e66c0c984f732e815ee5b7d715b8e33e81bac6d6a3750b1067744e7ca AS builder
FROM docker.io/library/golang:1.23.3@sha256:d56c3e08fe5b27729ee3834854ae8f7015af48fd651cd25d1e3bcf3c19830174 AS builder
RUN echo 'deb http://archive.debian.org/debian buster-backports main' >> /etc/apt/sources.list
@@ -28,7 +28,7 @@ WORKDIR /tmp
COPY hack/install.sh hack/tool-versions.sh ./
COPY hack/installers installers
RUN ./install.sh helm-linux && \
RUN ./install.sh helm && \
INSTALL_PATH=/usr/local/bin ./install.sh kustomize
####################################################################################################
@@ -51,7 +51,7 @@ RUN groupadd -g $ARGOCD_USER_ID argocd && \
apt-get update && \
apt-get dist-upgrade -y && \
apt-get install -y \
git git-lfs tini gpg tzdata && \
git git-lfs tini gpg tzdata connect-proxy && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
@@ -83,7 +83,7 @@ WORKDIR /home/argocd
####################################################################################################
# Argo CD UI stage
####################################################################################################
FROM --platform=$BUILDPLATFORM docker.io/library/node:20.6.1@sha256:14bd39208dbc0eb171cbfb26ccb9ac09fa1b2eba04ccd528ab5d12983fd9ee24 AS argocd-ui
FROM --platform=$BUILDPLATFORM docker.io/library/node:23.0.0@sha256:e643c0b70dca9704dff42e12b17f5b719dbe4f95e6392fc2dfa0c5f02ea8044d AS argocd-ui
WORKDIR /src
COPY ["ui/package.json", "ui/yarn.lock", "./"]
@@ -101,7 +101,7 @@ RUN HOST_ARCH=$TARGETARCH NODE_ENV='production' NODE_ONLINE_ENV='online' NODE_OP
####################################################################################################
# Argo CD Build stage which performs the actual build of Argo CD binaries
####################################################################################################
FROM --platform=$BUILDPLATFORM docker.io/library/golang:1.21.10@sha256:16438a8e66c0c984f732e815ee5b7d715b8e33e81bac6d6a3750b1067744e7ca AS argocd-build
FROM --platform=$BUILDPLATFORM docker.io/library/golang:1.23.3@sha256:d56c3e08fe5b27729ee3834854ae8f7015af48fd651cd25d1e3bcf3c19830174 AS argocd-build
WORKDIR /go/src/github.com/argoproj/argo-cd
@@ -140,7 +140,8 @@ RUN ln -s /usr/local/bin/argocd /usr/local/bin/argocd-server && \
ln -s /usr/local/bin/argocd /usr/local/bin/argocd-dex && \
ln -s /usr/local/bin/argocd /usr/local/bin/argocd-notifications && \
ln -s /usr/local/bin/argocd /usr/local/bin/argocd-applicationset-controller && \
ln -s /usr/local/bin/argocd /usr/local/bin/argocd-k8s-auth
ln -s /usr/local/bin/argocd /usr/local/bin/argocd-k8s-auth && \
ln -s /usr/local/bin/argocd /usr/local/bin/argocd-commit-server
USER $ARGOCD_USER_ID
ENTRYPOINT ["/usr/bin/tini", "--"]

136
Makefile
View File

@@ -3,6 +3,7 @@ CURRENT_DIR=$(shell pwd)
DIST_DIR=${CURRENT_DIR}/dist
CLI_NAME=argocd
BIN_NAME=argocd
CGO_FLAG=0
GEN_RESOURCES_CLI_NAME=argocd-resources-gen
@@ -22,14 +23,21 @@ KUBECTL_VERSION=$(shell go list -m k8s.io/client-go | head -n 1 | rev | cut -d'
GOPATH?=$(shell if test -x `which go`; then go env GOPATH; else echo "$(HOME)/go"; fi)
GOCACHE?=$(HOME)/.cache/go-build
# Docker command to use
DOCKER?=docker
ifeq ($(DOCKER),podman)
PODMAN_ARGS=--userns keep-id
else
PODMAN_ARGS=
endif
DOCKER_SRCDIR?=$(GOPATH)/src
DOCKER_WORKDIR?=/go/src/github.com/argoproj/argo-cd
ARGOCD_PROCFILE?=Procfile
# Strict mode has been disabled in latest versions of mkdocs-material.
# Thus pointing to the older image of mkdocs-material matching the version used by argo-cd.
MKDOCS_DOCKER_IMAGE?=squidfunk/mkdocs-material:4.1.1
# pointing to python 3.7 to match https://github.com/argoproj/argo-cd/blob/master/.readthedocs.yml
MKDOCS_DOCKER_IMAGE?=python:3.7-alpine
MKDOCS_RUN_ARGS?=
# Configuration for building argocd-test-tools image
@@ -76,7 +84,7 @@ SUDO?=
# Runs any command in the argocd-test-utils container in server mode
# Server mode container will start with uid 0 and drop privileges during runtime
define run-in-test-server
$(SUDO) docker run --rm -it \
$(SUDO) $(DOCKER) run --rm -it \
--name argocd-test-server \
-u $(CONTAINER_UID):$(CONTAINER_GID) \
-e USER_ID=$(CONTAINER_UID) \
@@ -101,13 +109,14 @@ define run-in-test-server
-p ${ARGOCD_E2E_APISERVER_PORT}:8080 \
-p 4000:4000 \
-p 5000:5000 \
$(PODMAN_ARGS) \
$(TEST_TOOLS_PREFIX)$(TEST_TOOLS_IMAGE):$(TEST_TOOLS_TAG) \
bash -c "$(1)"
endef
# Runs any command in the argocd-test-utils container in client mode
define run-in-test-client
$(SUDO) docker run --rm -it \
$(SUDO) $(DOCKER) run --rm -it \
--name argocd-test-client \
-u $(CONTAINER_UID):$(CONTAINER_GID) \
-e HOME=/home/user \
@@ -122,13 +131,14 @@ define run-in-test-client
-v ${HOME}/.kube:/home/user/.kube${VOLUME_MOUNT} \
-v /tmp:/tmp${VOLUME_MOUNT} \
-w ${DOCKER_WORKDIR} \
$(PODMAN_ARGS) \
$(TEST_TOOLS_PREFIX)$(TEST_TOOLS_IMAGE):$(TEST_TOOLS_TAG) \
bash -c "$(1)"
endef
#
define exec-in-test-server
$(SUDO) docker exec -it -u $(CONTAINER_UID):$(CONTAINER_GID) -e ARGOCD_E2E_RECORD=$(ARGOCD_E2E_RECORD) -e ARGOCD_E2E_K3S=$(ARGOCD_E2E_K3S) argocd-test-server $(1)
$(SUDO) $(DOCKER) exec -it -u $(CONTAINER_UID):$(CONTAINER_GID) -e ARGOCD_E2E_RECORD=$(ARGOCD_E2E_RECORD) -e ARGOCD_E2E_K3S=$(ARGOCD_E2E_K3S) argocd-test-server $(1)
endef
PATH:=$(PATH):$(PWD)/hack
@@ -143,6 +153,13 @@ DEV_IMAGE?=false
ARGOCD_GPG_ENABLED?=true
ARGOCD_E2E_APISERVER_PORT?=8080
ifeq (${COVERAGE_ENABLED}, true)
# We use this in the cli-local target to enable code coverage for e2e tests.
COVERAGE_FLAG=-cover
else
COVERAGE_FLAG=
endif
override LDFLAGS += \
-X ${PACKAGE}.version=${VERSION} \
-X ${PACKAGE}.buildDate=${BUILD_DATE} \
@@ -175,29 +192,25 @@ endif
.PHONY: all
all: cli image
# We have some legacy requirements for being checked out within $GOPATH.
# The ensure-gopath target can be used as dependency to ensure we are running
# within these boundaries.
.PHONY: ensure-gopath
ensure-gopath:
ifneq ("$(PWD)","$(LEGACY_PATH)")
@echo "Due to legacy requirements for codegen, repository needs to be checked out within \$$GOPATH"
@echo "Location of this repo should be '$(LEGACY_PATH)' but is '$(PWD)'"
@exit 1
endif
.PHONY: mockgen
mockgen:
./hack/generate-mock.sh
.PHONY: gogen
gogen: ensure-gopath
gogen:
export GO111MODULE=off
go generate ./util/argo/...
go generate ./...
.PHONY: protogen
protogen: ensure-gopath mod-vendor-local
protogen: mod-vendor-local protogen-fast
.PHONY: protogen-fast
protogen-fast:
export GO111MODULE=off
./hack/generate-proto.sh
.PHONY: openapigen
openapigen: ensure-gopath
openapigen:
export GO111MODULE=off
./hack/update-openapi.sh
@@ -212,19 +225,25 @@ notification-docs:
.PHONY: clientgen
clientgen: ensure-gopath
clientgen:
export GO111MODULE=off
./hack/update-codegen.sh
.PHONY: clidocsgen
clidocsgen: ensure-gopath
clidocsgen:
go run tools/cmd-docs/main.go
.PHONY: actionsdocsgen
actionsdocsgen:
hack/generate-actions-list.sh
.PHONY: codegen-local
codegen-local: ensure-gopath mod-vendor-local gogen protogen clientgen openapigen clidocsgen manifests-local notification-docs notification-catalog
codegen-local: mod-vendor-local mockgen gogen protogen clientgen openapigen clidocsgen actionsdocsgen manifests-local notification-docs notification-catalog
rm -rf vendor/
.PHONY: codegen-local-fast
codegen-local-fast: mockgen gogen protogen-fast clientgen openapigen clidocsgen manifests-local notification-docs notification-catalog
.PHONY: codegen
codegen: test-tools-image
$(call run-in-test-client,make codegen-local)
@@ -235,11 +254,11 @@ cli: test-tools-image
.PHONY: cli-local
cli-local: clean-debug
CGO_ENABLED=0 GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/${CLI_NAME} ./cmd
CGO_ENABLED=${CGO_FLAG} GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -gcflags="all=-N -l" $(COVERAGE_FLAG) -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/${CLI_NAME} ./cmd
.PHONY: gen-resources-cli-local
gen-resources-cli-local: clean-debug
CGO_ENABLED=0 GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/${GEN_RESOURCES_CLI_NAME} ./hack/gen-resources/cmd
CGO_ENABLED=${CGO_FLAG} GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/${GEN_RESOURCES_CLI_NAME} ./hack/gen-resources/cmd
.PHONY: release-cli
release-cli: clean-debug build-ui
@@ -254,8 +273,8 @@ release-cli: clean-debug build-ui
.PHONY: test-tools-image
test-tools-image:
ifndef SKIP_TEST_TOOLS_IMAGE
$(SUDO) docker build --build-arg UID=$(CONTAINER_UID) -t $(TEST_TOOLS_PREFIX)$(TEST_TOOLS_IMAGE) -f test/container/Dockerfile .
$(SUDO) docker tag $(TEST_TOOLS_PREFIX)$(TEST_TOOLS_IMAGE) $(TEST_TOOLS_PREFIX)$(TEST_TOOLS_IMAGE):$(TEST_TOOLS_TAG)
$(SUDO) $(DOCKER) build --build-arg UID=$(CONTAINER_UID) -t $(TEST_TOOLS_PREFIX)$(TEST_TOOLS_IMAGE) -f test/container/Dockerfile .
$(SUDO) $(DOCKER) tag $(TEST_TOOLS_PREFIX)$(TEST_TOOLS_IMAGE) $(TEST_TOOLS_PREFIX)$(TEST_TOOLS_IMAGE):$(TEST_TOOLS_TAG)
endif
.PHONY: manifests-local
@@ -269,25 +288,25 @@ manifests: test-tools-image
# consolidated binary for cli, util, server, repo-server, controller
.PHONY: argocd-all
argocd-all: clean-debug
CGO_ENABLED=0 GOOS=${GOOS} GOARCH=${GOARCH} GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/${BIN_NAME} ./cmd
CGO_ENABLED=${CGO_FLAG} GOOS=${GOOS} GOARCH=${GOARCH} GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/${BIN_NAME} ./cmd
.PHONY: server
server: clean-debug
CGO_ENABLED=0 GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/argocd-server ./cmd
CGO_ENABLED=${CGO_FLAG} GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/argocd-server ./cmd
.PHONY: repo-server
repo-server:
CGO_ENABLED=0 GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/argocd-repo-server ./cmd
CGO_ENABLED=${CGO_FLAG} GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/argocd-repo-server ./cmd
.PHONY: controller
controller:
CGO_ENABLED=0 GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/argocd-application-controller ./cmd
CGO_ENABLED=${CGO_FLAG} GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/argocd-application-controller ./cmd
.PHONY: build-ui
build-ui:
DOCKER_BUILDKIT=1 docker build -t argocd-ui --platform=$(TARGET_ARCH) --target argocd-ui .
DOCKER_BUILDKIT=1 $(DOCKER) build -t argocd-ui --platform=$(TARGET_ARCH) --target argocd-ui .
find ./ui/dist -type f -not -name gitkeep -delete
docker run -v ${CURRENT_DIR}/ui/dist/app:/tmp/app --rm -t argocd-ui sh -c 'cp -r ./dist/app/* /tmp/app/'
$(DOCKER) run -v ${CURRENT_DIR}/ui/dist/app:/tmp/app --rm -t argocd-ui sh -c 'cp -r ./dist/app/* /tmp/app/'
.PHONY: image
ifeq ($(DEV_IMAGE), true)
@@ -296,29 +315,29 @@ ifeq ($(DEV_IMAGE), true)
# the dist directory is under .dockerignore.
IMAGE_TAG="dev-$(shell git describe --always --dirty)"
image: build-ui
DOCKER_BUILDKIT=1 docker build --platform=$(TARGET_ARCH) -t argocd-base --target argocd-base .
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/argocd ./cmd
DOCKER_BUILDKIT=1 $(DOCKER) build --platform=$(TARGET_ARCH) -t argocd-base --target argocd-base .
CGO_ENABLED=${CGO_FLAG} GOOS=linux GOARCH=amd64 GODEBUG="tarinsecurepath=0,zipinsecurepath=0" go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/argocd ./cmd
ln -sfn ${DIST_DIR}/argocd ${DIST_DIR}/argocd-server
ln -sfn ${DIST_DIR}/argocd ${DIST_DIR}/argocd-application-controller
ln -sfn ${DIST_DIR}/argocd ${DIST_DIR}/argocd-repo-server
ln -sfn ${DIST_DIR}/argocd ${DIST_DIR}/argocd-cmp-server
ln -sfn ${DIST_DIR}/argocd ${DIST_DIR}/argocd-dex
cp Dockerfile.dev dist
DOCKER_BUILDKIT=1 docker build --platform=$(TARGET_ARCH) -t $(IMAGE_PREFIX)argocd:$(IMAGE_TAG) -f dist/Dockerfile.dev dist
DOCKER_BUILDKIT=1 $(DOCKER) build --platform=$(TARGET_ARCH) -t $(IMAGE_PREFIX)argocd:$(IMAGE_TAG) -f dist/Dockerfile.dev dist
else
image:
DOCKER_BUILDKIT=1 docker build -t $(IMAGE_PREFIX)argocd:$(IMAGE_TAG) --platform=$(TARGET_ARCH) .
DOCKER_BUILDKIT=1 $(DOCKER) build -t $(IMAGE_PREFIX)argocd:$(IMAGE_TAG) --platform=$(TARGET_ARCH) .
endif
@if [ "$(DOCKER_PUSH)" = "true" ] ; then docker push $(IMAGE_PREFIX)argocd:$(IMAGE_TAG) ; fi
@if [ "$(DOCKER_PUSH)" = "true" ] ; then $(DOCKER) push $(IMAGE_PREFIX)argocd:$(IMAGE_TAG) ; fi
.PHONY: armimage
armimage:
docker build -t $(IMAGE_PREFIX)argocd:$(IMAGE_TAG)-arm .
$(DOCKER) build -t $(IMAGE_PREFIX)argocd:$(IMAGE_TAG)-arm .
.PHONY: builder-image
builder-image:
docker build -t $(IMAGE_PREFIX)argo-cd-ci-builder:$(IMAGE_TAG) --target builder .
@if [ "$(DOCKER_PUSH)" = "true" ] ; then docker push $(IMAGE_PREFIX)argo-cd-ci-builder:$(IMAGE_TAG) ; fi
$(DOCKER) build -t $(IMAGE_PREFIX)argo-cd-ci-builder:$(IMAGE_TAG) --target builder .
@if [ "$(DOCKER_PUSH)" = "true" ] ; then $(DOCKER) push $(IMAGE_PREFIX)argo-cd-ci-builder:$(IMAGE_TAG) ; fi
.PHONY: mod-download
mod-download: test-tools-image
@@ -352,7 +371,7 @@ lint-local:
golangci-lint --version
# NOTE: If you get a "Killed" OOM message, try reducing the value of GOGC
# See https://github.com/golangci/golangci-lint#memory-usage-of-golangci-lint
GOGC=$(ARGOCD_LINT_GOGC) GOMAXPROCS=2 golangci-lint run --enable gofmt --fix --verbose --timeout 3000s --max-issues-per-linter 0 --max-same-issues 0
GOGC=$(ARGOCD_LINT_GOGC) GOMAXPROCS=2 golangci-lint run --fix --verbose
.PHONY: lint-ui
lint-ui: test-tools-image
@@ -386,9 +405,9 @@ test: test-tools-image
.PHONY: test-local
test-local:
if test "$(TEST_MODULE)" = ""; then \
DIST_DIR=${DIST_DIR} RERUN_FAILS=0 PACKAGES=`go list ./... | grep -v 'test/e2e'` ./hack/test.sh -coverprofile=coverage.out; \
DIST_DIR=${DIST_DIR} RERUN_FAILS=0 PACKAGES=`go list ./... | grep -v 'test/e2e'` ./hack/test.sh -args -test.gocoverdir="$(PWD)/test-results"; \
else \
DIST_DIR=${DIST_DIR} RERUN_FAILS=0 PACKAGES="$(TEST_MODULE)" ./hack/test.sh -coverprofile=coverage.out "$(TEST_MODULE)"; \
DIST_DIR=${DIST_DIR} RERUN_FAILS=0 PACKAGES="$(TEST_MODULE)" ./hack/test.sh -args -test.gocoverdir="$(PWD)/test-results" "$(TEST_MODULE)"; \
fi
.PHONY: test-race
@@ -400,9 +419,9 @@ test-race: test-tools-image
.PHONY: test-race-local
test-race-local:
if test "$(TEST_MODULE)" = ""; then \
DIST_DIR=${DIST_DIR} RERUN_FAILS=0 PACKAGES=`go list ./... | grep -v 'test/e2e'` ./hack/test.sh -race -coverprofile=coverage.out; \
DIST_DIR=${DIST_DIR} RERUN_FAILS=0 PACKAGES=`go list ./... | grep -v 'test/e2e'` ./hack/test.sh -race -args -test.gocoverdir="$(PWD)/test-results"; \
else \
DIST_DIR=${DIST_DIR} RERUN_FAILS=0 PACKAGES="$(TEST_MODULE)" ./hack/test.sh -race -coverprofile=coverage.out; \
DIST_DIR=${DIST_DIR} RERUN_FAILS=0 PACKAGES="$(TEST_MODULE)" ./hack/test.sh -race -args -test.gocoverdir="$(PWD)/test-results"; \
fi
# Run the E2E test suite. E2E test servers (see start-e2e target) must be
@@ -416,7 +435,7 @@ test-e2e:
test-e2e-local: cli-local
# NO_PROXY ensures all tests don't go out through a proxy if one is configured on the test system
export GO111MODULE=off
DIST_DIR=${DIST_DIR} RERUN_FAILS=5 PACKAGES="./test/e2e" ARGOCD_E2E_RECORD=${ARGOCD_E2E_RECORD} ARGOCD_GPG_ENABLED=true NO_PROXY=* ./hack/test.sh -timeout $(ARGOCD_E2E_TEST_TIMEOUT) -v
DIST_DIR=${DIST_DIR} RERUN_FAILS=5 PACKAGES="./test/e2e" ARGOCD_E2E_RECORD=${ARGOCD_E2E_RECORD} ARGOCD_GPG_ENABLED=true NO_PROXY=* ./hack/test.sh -timeout $(ARGOCD_E2E_TEST_TIMEOUT) -v -args -test.gocoverdir="$(PWD)/test-results"
# Spawns a shell in the test server container for debugging purposes
debug-test-server: test-tools-image
@@ -429,7 +448,7 @@ debug-test-client: test-tools-image
# Starts e2e server in a container
.PHONY: start-e2e
start-e2e: test-tools-image
docker version
$(DOCKER) version
mkdir -p ${GOCACHE}
$(call run-in-test-server,make ARGOCD_PROCFILE=test/container/Procfile start-e2e-local)
@@ -447,6 +466,13 @@ start-e2e-local: mod-vendor-local dep-ui-local cli-local
mkdir -p /tmp/argo-e2e/app/config/gpg/keys && chmod 0700 /tmp/argo-e2e/app/config/gpg/keys
mkdir -p /tmp/argo-e2e/app/config/gpg/source && chmod 0700 /tmp/argo-e2e/app/config/gpg/source
mkdir -p /tmp/argo-e2e/app/config/plugin && chmod 0700 /tmp/argo-e2e/app/config/plugin
# create folders to hold go coverage results for each component
mkdir -p /tmp/coverage/app-controller
mkdir -p /tmp/coverage/api-server
mkdir -p /tmp/coverage/repo-server
mkdir -p /tmp/coverage/applicationset-controller
mkdir -p /tmp/coverage/notification
mkdir -p /tmp/coverage/commit-server
# set paths for locally managed ssh known hosts and tls certs data
ARGOCD_SSH_DATA_PATH=/tmp/argo-e2e/app/config/ssh \
ARGOCD_TLS_DATA_PATH=/tmp/argo-e2e/app/config/tls \
@@ -461,9 +487,11 @@ start-e2e-local: mod-vendor-local dep-ui-local cli-local
BIN_MODE=$(ARGOCD_BIN_MODE) \
ARGOCD_APPLICATION_NAMESPACES=argocd-e2e-external,argocd-e2e-external-2 \
ARGOCD_APPLICATIONSET_CONTROLLER_NAMESPACES=argocd-e2e-external,argocd-e2e-external-2 \
ARGOCD_APPLICATIONSET_CONTROLLER_TOKENREF_STRICT_MODE=true \
ARGOCD_APPLICATIONSET_CONTROLLER_ALLOWED_SCM_PROVIDERS=http://127.0.0.1:8341,http://127.0.0.1:8342,http://127.0.0.1:8343,http://127.0.0.1:8344 \
ARGOCD_E2E_TEST=true \
goreman -f $(ARGOCD_PROCFILE) start ${ARGOCD_START}
ls -lrt /tmp/coverage
# Cleans VSCode debug.test files from sub-dirs to prevent them from being included in by golang embed
.PHONY: clean-debug
@@ -476,7 +504,7 @@ clean: clean-debug
.PHONY: start
start: test-tools-image
docker version
$(DOCKER) version
$(call run-in-test-server,make ARGOCD_PROCFILE=test/container/Procfile start-local ARGOCD_START=${ARGOCD_START})
# Starts a local instance of ArgoCD
@@ -489,6 +517,7 @@ start-local: mod-vendor-local dep-ui-local cli-local
mkdir -p /tmp/argocd-local
mkdir -p /tmp/argocd-local/gpg/keys && chmod 0700 /tmp/argocd-local/gpg/keys
mkdir -p /tmp/argocd-local/gpg/source
REDIS_PASSWORD=$(shell kubectl get secret argocd-redis -o jsonpath='{.data.auth}' | base64 -d) \
ARGOCD_ZJWT_FEATURE_FLAG=always \
ARGOCD_IN_CI=false \
ARGOCD_GPG_ENABLED=$(ARGOCD_GPG_ENABLED) \
@@ -526,7 +555,7 @@ build-docs-local:
.PHONY: build-docs
build-docs:
docker run ${MKDOCS_RUN_ARGS} --rm -it -v ${CURRENT_DIR}:/docs --entrypoint "" ${MKDOCS_DOCKER_IMAGE} sh -c 'pip install -r docs/requirements.txt; mkdocs build'
$(DOCKER) run ${MKDOCS_RUN_ARGS} --rm -it -v ${CURRENT_DIR}:/docs -w /docs --entrypoint "" ${MKDOCS_DOCKER_IMAGE} sh -c 'pip install mkdocs; pip install $$(mkdocs get-deps); mkdocs build'
.PHONY: serve-docs-local
serve-docs-local:
@@ -534,8 +563,7 @@ serve-docs-local:
.PHONY: serve-docs
serve-docs:
docker run ${MKDOCS_RUN_ARGS} --rm -it -p 8000:8000 -v ${CURRENT_DIR}/site:/site -w /site --entrypoint "" ${MKDOCS_DOCKER_IMAGE} python3 -m http.server --bind 0.0.0.0 8000
$(DOCKER) run ${MKDOCS_RUN_ARGS} --rm -it -p 8000:8000 -v ${CURRENT_DIR}:/docs -w /docs --entrypoint "" ${MKDOCS_DOCKER_IMAGE} sh -c 'pip install mkdocs; pip install $$(mkdocs get-deps); mkdocs serve -a $$(ip route get 1 | awk '\''{print $$7}'\''):8000'
# Verify that kubectl can connect to your K8s cluster from Docker
.PHONY: verify-kube-connect
@@ -558,7 +586,7 @@ install-tools-local: install-test-tools-local install-codegen-tools-local instal
.PHONY: install-test-tools-local
install-test-tools-local:
./hack/install.sh kustomize
./hack/install.sh helm-linux
./hack/install.sh helm
./hack/install.sh gotestsum
# Installs all tools required for running codegen (Linux packages)
@@ -587,7 +615,7 @@ list:
.PHONY: applicationset-controller
applicationset-controller:
GODEBUG="tarinsecurepath=0,zipinsecurepath=0" CGO_ENABLED=0 go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/argocd-applicationset-controller ./cmd
GODEBUG="tarinsecurepath=0,zipinsecurepath=0" CGO_ENABLED=${CGO_FLAG} go build -v -ldflags '${LDFLAGS}' -o ${DIST_DIR}/argocd-applicationset-controller ./cmd
.PHONY: checksums
checksums:

1
OWNERS
View File

@@ -1,5 +1,6 @@
owners:
- alexmt
- crenshaw-dev
- jessesuen
approvers:

View File

@@ -1,13 +1,13 @@
controller: [ "$BIN_MODE" = 'true' ] && COMMAND=./dist/argocd || COMMAND='go run ./cmd/main.go' && sh -c "HOSTNAME=testappcontroller-1 FORCE_LOG_COLORS=1 ARGOCD_FAKE_IN_CLUSTER=true ARGOCD_TLS_DATA_PATH=${ARGOCD_TLS_DATA_PATH:-/tmp/argocd-local/tls} ARGOCD_SSH_DATA_PATH=${ARGOCD_SSH_DATA_PATH:-/tmp/argocd-local/ssh} ARGOCD_BINARY_NAME=argocd-application-controller $COMMAND --loglevel debug --redis localhost:${ARGOCD_E2E_REDIS_PORT:-6379} --repo-server localhost:${ARGOCD_E2E_REPOSERVER_PORT:-8081} --otlp-address=${ARGOCD_OTLP_ADDRESS} --application-namespaces=${ARGOCD_APPLICATION_NAMESPACES:-''} --server-side-diff-enabled=${ARGOCD_APPLICATION_CONTROLLER_SERVER_SIDE_DIFF:-'false'}"
api-server: [ "$BIN_MODE" = 'true' ] && COMMAND=./dist/argocd || COMMAND='go run ./cmd/main.go' && sh -c "FORCE_LOG_COLORS=1 ARGOCD_FAKE_IN_CLUSTER=true ARGOCD_TLS_DATA_PATH=${ARGOCD_TLS_DATA_PATH:-/tmp/argocd-local/tls} ARGOCD_SSH_DATA_PATH=${ARGOCD_SSH_DATA_PATH:-/tmp/argocd-local/ssh} ARGOCD_BINARY_NAME=argocd-server $COMMAND --loglevel debug --redis localhost:${ARGOCD_E2E_REDIS_PORT:-6379} --disable-auth=${ARGOCD_E2E_DISABLE_AUTH:-'true'} --insecure --dex-server http://localhost:${ARGOCD_E2E_DEX_PORT:-5556} --repo-server localhost:${ARGOCD_E2E_REPOSERVER_PORT:-8081} --port ${ARGOCD_E2E_APISERVER_PORT:-8080} --otlp-address=${ARGOCD_OTLP_ADDRESS} --application-namespaces=${ARGOCD_APPLICATION_NAMESPACES:-''}"
controller: [ "$BIN_MODE" = 'true' ] && COMMAND=./dist/argocd || COMMAND='go run ./cmd/main.go' && sh -c "GOCOVERDIR=${ARGOCD_COVERAGE_DIR:-/tmp/coverage/app-controller} HOSTNAME=testappcontroller-1 FORCE_LOG_COLORS=1 ARGOCD_FAKE_IN_CLUSTER=true ARGOCD_TLS_DATA_PATH=${ARGOCD_TLS_DATA_PATH:-/tmp/argocd-local/tls} ARGOCD_SSH_DATA_PATH=${ARGOCD_SSH_DATA_PATH:-/tmp/argocd-local/ssh} ARGOCD_BINARY_NAME=argocd-application-controller $COMMAND --loglevel debug --redis localhost:${ARGOCD_E2E_REDIS_PORT:-6379} --repo-server localhost:${ARGOCD_E2E_REPOSERVER_PORT:-8081} --commit-server localhost:${ARGOCD_E2E_COMMITSERVER_PORT:-8086} --otlp-address=${ARGOCD_OTLP_ADDRESS} --application-namespaces=${ARGOCD_APPLICATION_NAMESPACES:-''} --server-side-diff-enabled=${ARGOCD_APPLICATION_CONTROLLER_SERVER_SIDE_DIFF:-'false'} --hydrator-enabled=${ARGOCD_APPLICATION_CONTROLLER_HYDRATOR_ENABLED:='false'}"
api-server: [ "$BIN_MODE" = 'true' ] && COMMAND=./dist/argocd || COMMAND='go run ./cmd/main.go' && sh -c "GOCOVERDIR=${ARGOCD_COVERAGE_DIR:-/tmp/coverage/api-server} FORCE_LOG_COLORS=1 ARGOCD_FAKE_IN_CLUSTER=true ARGOCD_TLS_DATA_PATH=${ARGOCD_TLS_DATA_PATH:-/tmp/argocd-local/tls} ARGOCD_SSH_DATA_PATH=${ARGOCD_SSH_DATA_PATH:-/tmp/argocd-local/ssh} ARGOCD_BINARY_NAME=argocd-server $COMMAND --loglevel debug --redis localhost:${ARGOCD_E2E_REDIS_PORT:-6379} --disable-auth=${ARGOCD_E2E_DISABLE_AUTH:-'true'} --insecure --dex-server http://localhost:${ARGOCD_E2E_DEX_PORT:-5556} --repo-server localhost:${ARGOCD_E2E_REPOSERVER_PORT:-8081} --port ${ARGOCD_E2E_APISERVER_PORT:-8080} --otlp-address=${ARGOCD_OTLP_ADDRESS} --application-namespaces=${ARGOCD_APPLICATION_NAMESPACES:-''}"
dex: sh -c "ARGOCD_BINARY_NAME=argocd-dex go run github.com/argoproj/argo-cd/v2/cmd gendexcfg -o `pwd`/dist/dex.yaml && (test -f dist/dex.yaml || { echo 'Failed to generate dex configuration'; exit 1; }) && docker run --rm -p ${ARGOCD_E2E_DEX_PORT:-5556}:${ARGOCD_E2E_DEX_PORT:-5556} -v `pwd`/dist/dex.yaml:/dex.yaml ghcr.io/dexidp/dex:$(grep "image: ghcr.io/dexidp/dex" manifests/base/dex/argocd-dex-server-deployment.yaml | cut -d':' -f3) dex serve /dex.yaml"
redis: bash -c "if [ \"$ARGOCD_REDIS_LOCAL\" = 'true' ]; then redis-server --save '' --appendonly no --port ${ARGOCD_E2E_REDIS_PORT:-6379}; else docker run --rm --name argocd-redis -i -p ${ARGOCD_E2E_REDIS_PORT:-6379}:${ARGOCD_E2E_REDIS_PORT:-6379} docker.io/library/redis:$(grep "image: redis" manifests/base/redis/argocd-redis-deployment.yaml | cut -d':' -f3) --save '' --appendonly no --port ${ARGOCD_E2E_REDIS_PORT:-6379}; fi"
repo-server: [ "$BIN_MODE" = 'true' ] && COMMAND=./dist/argocd || COMMAND='go run ./cmd/main.go' && sh -c "FORCE_LOG_COLORS=1 ARGOCD_FAKE_IN_CLUSTER=true ARGOCD_GNUPGHOME=${ARGOCD_GNUPGHOME:-/tmp/argocd-local/gpg/keys} ARGOCD_PLUGINSOCKFILEPATH=${ARGOCD_PLUGINSOCKFILEPATH:-./test/cmp} ARGOCD_GPG_DATA_PATH=${ARGOCD_GPG_DATA_PATH:-/tmp/argocd-local/gpg/source} ARGOCD_TLS_DATA_PATH=${ARGOCD_TLS_DATA_PATH:-/tmp/argocd-local/tls} ARGOCD_SSH_DATA_PATH=${ARGOCD_SSH_DATA_PATH:-/tmp/argocd-local/ssh} ARGOCD_BINARY_NAME=argocd-repo-server ARGOCD_GPG_ENABLED=${ARGOCD_GPG_ENABLED:-false} $COMMAND --loglevel debug --port ${ARGOCD_E2E_REPOSERVER_PORT:-8081} --redis localhost:${ARGOCD_E2E_REDIS_PORT:-6379} --otlp-address=${ARGOCD_OTLP_ADDRESS}"
redis: hack/start-redis-with-password.sh
repo-server: [ "$BIN_MODE" = 'true' ] && COMMAND=./dist/argocd || COMMAND='go run ./cmd/main.go' && sh -c "GOCOVERDIR=${ARGOCD_COVERAGE_DIR:-/tmp/coverage/repo-server} FORCE_LOG_COLORS=1 ARGOCD_FAKE_IN_CLUSTER=true ARGOCD_GNUPGHOME=${ARGOCD_GNUPGHOME:-/tmp/argocd-local/gpg/keys} ARGOCD_PLUGINSOCKFILEPATH=${ARGOCD_PLUGINSOCKFILEPATH:-./test/cmp} ARGOCD_GPG_DATA_PATH=${ARGOCD_GPG_DATA_PATH:-/tmp/argocd-local/gpg/source} ARGOCD_TLS_DATA_PATH=${ARGOCD_TLS_DATA_PATH:-/tmp/argocd-local/tls} ARGOCD_SSH_DATA_PATH=${ARGOCD_SSH_DATA_PATH:-/tmp/argocd-local/ssh} ARGOCD_BINARY_NAME=argocd-repo-server ARGOCD_GPG_ENABLED=${ARGOCD_GPG_ENABLED:-false} $COMMAND --loglevel debug --port ${ARGOCD_E2E_REPOSERVER_PORT:-8081} --redis localhost:${ARGOCD_E2E_REDIS_PORT:-6379} --otlp-address=${ARGOCD_OTLP_ADDRESS}"
cmp-server: [ "$ARGOCD_E2E_TEST" = 'true' ] && exit 0 || [ "$BIN_MODE" = 'true' ] && COMMAND=./dist/argocd || COMMAND='go run ./cmd/main.go' && sh -c "FORCE_LOG_COLORS=1 ARGOCD_FAKE_IN_CLUSTER=true ARGOCD_BINARY_NAME=argocd-cmp-server ARGOCD_PLUGINSOCKFILEPATH=${ARGOCD_PLUGINSOCKFILEPATH:-./test/cmp} $COMMAND --config-dir-path ./test/cmp --loglevel debug --otlp-address=${ARGOCD_OTLP_ADDRESS}"
commit-server: [ "$BIN_MODE" = 'true' ] && COMMAND=./dist/argocd || COMMAND='go run ./cmd/main.go' && sh -c "GOCOVERDIR=${ARGOCD_COVERAGE_DIR:-/tmp/coverage/commit-server} FORCE_LOG_COLORS=1 ARGOCD_BINARY_NAME=argocd-commit-server $COMMAND --loglevel debug --port ${ARGOCD_E2E_COMMITSERVER_PORT:-8086}"
ui: sh -c 'cd ui && ${ARGOCD_E2E_YARN_CMD:-yarn} start'
git-server: test/fixture/testrepos/start-git.sh
helm-registry: test/fixture/testrepos/start-helm-registry.sh
dev-mounter: [[ "$ARGOCD_E2E_TEST" != "true" ]] && go run hack/dev-mounter/main.go --configmap argocd-ssh-known-hosts-cm=${ARGOCD_SSH_DATA_PATH:-/tmp/argocd-local/ssh} --configmap argocd-tls-certs-cm=${ARGOCD_TLS_DATA_PATH:-/tmp/argocd-local/tls} --configmap argocd-gpg-keys-cm=${ARGOCD_GPG_DATA_PATH:-/tmp/argocd-local/gpg/source}
applicationset-controller: [ "$BIN_MODE" = 'true' ] && COMMAND=./dist/argocd || COMMAND='go run ./cmd/main.go' && sh -c "FORCE_LOG_COLORS=4 ARGOCD_FAKE_IN_CLUSTER=true ARGOCD_TLS_DATA_PATH=${ARGOCD_TLS_DATA_PATH:-/tmp/argocd-local/tls} ARGOCD_SSH_DATA_PATH=${ARGOCD_SSH_DATA_PATH:-/tmp/argocd-local/ssh} ARGOCD_BINARY_NAME=argocd-applicationset-controller $COMMAND --loglevel debug --metrics-addr localhost:12345 --probe-addr localhost:12346 --argocd-repo-server localhost:${ARGOCD_E2E_REPOSERVER_PORT:-8081}"
notification: [ "$BIN_MODE" = 'true' ] && COMMAND=./dist/argocd || COMMAND='go run ./cmd/main.go' && sh -c "FORCE_LOG_COLORS=4 ARGOCD_FAKE_IN_CLUSTER=true ARGOCD_TLS_DATA_PATH=${ARGOCD_TLS_DATA_PATH:-/tmp/argocd-local/tls} ARGOCD_BINARY_NAME=argocd-notifications $COMMAND --loglevel debug --application-namespaces=${ARGOCD_APPLICATION_NAMESPACES:-''} --self-service-notification-enabled=${ARGOCD_NOTIFICATION_CONTROLLER_SELF_SERVICE_NOTIFICATION_ENABLED:-'false'}"
applicationset-controller: [ "$BIN_MODE" = 'true' ] && COMMAND=./dist/argocd || COMMAND='go run ./cmd/main.go' && sh -c "GOCOVERDIR=${ARGOCD_COVERAGE_DIR:-/tmp/coverage/applicationset-controller} FORCE_LOG_COLORS=4 ARGOCD_FAKE_IN_CLUSTER=true ARGOCD_TLS_DATA_PATH=${ARGOCD_TLS_DATA_PATH:-/tmp/argocd-local/tls} ARGOCD_SSH_DATA_PATH=${ARGOCD_SSH_DATA_PATH:-/tmp/argocd-local/ssh} ARGOCD_BINARY_NAME=argocd-applicationset-controller $COMMAND --loglevel debug --metrics-addr localhost:12345 --probe-addr localhost:12346 --argocd-repo-server localhost:${ARGOCD_E2E_REPOSERVER_PORT:-8081}"
notification: [ "$BIN_MODE" = 'true' ] && COMMAND=./dist/argocd || COMMAND='go run ./cmd/main.go' && sh -c "GOCOVERDIR=${ARGOCD_COVERAGE_DIR:-/tmp/coverage/notification} FORCE_LOG_COLORS=4 ARGOCD_FAKE_IN_CLUSTER=true ARGOCD_TLS_DATA_PATH=${ARGOCD_TLS_DATA_PATH:-/tmp/argocd-local/tls} ARGOCD_BINARY_NAME=argocd-notifications $COMMAND --loglevel debug --application-namespaces=${ARGOCD_APPLICATION_NAMESPACES:-''} --self-service-notification-enabled=${ARGOCD_NOTIFICATION_CONTROLLER_SELF_SERVICE_NOTIFICATION_ENABLED:-'false'}"

View File

@@ -7,12 +7,12 @@
[![Integration tests](https://github.com/argoproj/argo-cd/workflows/Integration%20tests/badge.svg?branch=master)](https://github.com/argoproj/argo-cd/actions?query=workflow%3A%22Integration+tests%22)
[![codecov](https://codecov.io/gh/argoproj/argo-cd/branch/master/graph/badge.svg)](https://codecov.io/gh/argoproj/argo-cd)
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/4486/badge)](https://bestpractices.coreinfrastructure.org/projects/4486)
[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/argoproj/argo-cd/badge)](https://api.securityscorecards.dev/projects/github.com/argoproj/argo-cd)
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fargoproj%2Fargo-cd.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fargoproj%2Fargo-cd?ref=badge_shield)
[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/argoproj/argo-cd/badge)](https://scorecard.dev/viewer/?uri=github.com/argoproj/argo-cd)
**Social:**
[![Twitter Follow](https://img.shields.io/twitter/follow/argoproj?style=social)](https://twitter.com/argoproj)
[![Slack](https://img.shields.io/badge/slack-argoproj-brightgreen.svg?logo=slack)](https://argoproj.github.io/community/join-slack)
[![LinkedIn](https://img.shields.io/badge/LinkedIn-argoproj-blue.svg?logo=linkedin)](https://www.linkedin.com/company/argoproj/)
# Argo CD - Declarative Continuous Delivery for Kubernetes
@@ -56,7 +56,7 @@ Participation in the Argo CD project is governed by the [CNCF Code of Conduct](h
### Blogs and Presentations
1. [Awesome-Argo: A Curated List of Awesome Projects and Resources Related to Argo](https://github.com/terrytangyuan/awesome-argo)
1. [Unveil the Secret Ingredients of Continuous Delivery at Enterprise Scale with Argo CD](https://akuity.io/blog/unveil-the-secret-ingredients-of-continuous-delivery-at-enterprise-scale-with-argocd-kubecon-china-2021/)
1. [Unveil the Secret Ingredients of Continuous Delivery at Enterprise Scale with Argo CD](https://akuity.io/blog/secret-ingredients-of-continuous-delivery-at-enterprise-scale-with-argocd/)
1. [GitOps Without Pipelines With ArgoCD Image Updater](https://youtu.be/avPUQin9kzU)
1. [Combining Argo CD (GitOps), Crossplane (Control Plane), And KubeVela (OAM)](https://youtu.be/eEcgn_gU3SM)
1. [How to Apply GitOps to Everything - Combining Argo CD and Crossplane](https://youtu.be/yrj4lmScKHQ)
@@ -85,4 +85,5 @@ Participation in the Argo CD project is governed by the [CNCF Code of Conduct](h
1. [Getting Started with ArgoCD for GitOps Deployments](https://youtu.be/AvLuplh1skA)
1. [Using Argo CD & Datree for Stable Kubernetes CI/CD Deployments](https://youtu.be/17894DTru2Y)
1. [How to create Argo CD Applications Automatically using ApplicationSet? "Automation of GitOps"](https://amralaayassen.medium.com/how-to-create-argocd-applications-automatically-using-applicationset-automation-of-the-gitops-59455eaf4f72)
1. [Progressive Delivery with Service Mesh Argo Rollouts with Istio](https://www.cncf.io/blog/2022/12/16/progressive-delivery-with-service-mesh-argo-rollouts-with-istio/)

View File

@@ -3,9 +3,9 @@ header:
expiration-date: '2024-10-31T00:00:00.000Z' # One year from initial release.
last-updated: '2023-10-27'
last-reviewed: '2023-10-27'
commit-hash: b71277c6beb949d0199d647a582bc25822b88838
commit-hash: 74a367d10e7110209610ba3ec225539ebe5f7522
project-url: https://github.com/argoproj/argo-cd
project-release: v2.9.0-rc3
project-release: v2.14.0
changelog: https://github.com/argoproj/argo-cd/releases
license: https://github.com/argoproj/argo-cd/blob/master/LICENSE
project-lifecycle:

View File

@@ -11,57 +11,76 @@ Currently, the following organizations are **officially** using Argo CD:
1. [7shifts](https://www.7shifts.com/)
1. [Adevinta](https://www.adevinta.com/)
1. [Adfinis](https://adfinis.com)
1. [Adobe](https://www.adobe.com/)
1. [Adventure](https://jp.adventurekk.com/)
1. [Adyen](https://www.adyen.com)
1. [AirQo](https://airqo.net/)
1. [Akuity](https://akuity.io/)
1. [Alarm.com](https://alarm.com/)
1. [Alauda](https://alauda.io/)
1. [Albert Heijn](https://ah.nl/)
1. [Alibaba Group](https://www.alibabagroup.com/)
1. [Allianz Direct](https://www.allianzdirect.de/)
1. [AlphaSense](https://www.alpha-sense.com/)
1. [Amadeus IT Group](https://amadeus.com/)
1. [Ambassador Labs](https://www.getambassador.io/)
1. [Ancestry](https://www.ancestry.com/)
1. [Andgo Systems](https://www.andgosystems.com/)
1. [ANSTO - Australian Synchrotron](https://www.synchrotron.org.au/)
1. [Ant Group](https://www.antgroup.com/)
1. [AppDirect](https://www.appdirect.com)
1. [Arctiq Inc.](https://www.arctiq.ca)
2. [Arturia](https://www.arturia.com)
1. [ARZ Allgemeines Rechenzentrum GmbH](https://www.arz.at/)
1. [Augury](https://www.augury.com/)
1. [Autodesk](https://www.autodesk.com)
1. [Axians ACSP](https://www.axians.fr)
1. [Axual B.V.](https://axual.com)
1. [Back Market](https://www.backmarket.com)
1. [Bajaj Finserv Health Ltd.](https://www.bajajfinservhealth.in)
1. [Baloise](https://www.baloise.com)
1. [BCDevExchange DevOps Platform](https://bcdevexchange.org/DevOpsPlatform)
1. [Beat](https://thebeat.co/en/)
1. [Beez Innovation Labs](https://www.beezlabs.com/)
1. [Bedag Informatik AG](https://www.bedag.ch/)
1. [Beleza Na Web](https://www.belezanaweb.com.br/)
1. [Believable Bots](https://believablebots.io)
1. [BigPanda](https://bigpanda.io)
1. [BioBox Analytics](https://biobox.io)
1. [BMW Group](https://www.bmwgroup.com/)
1. [Boozt](https://www.booztgroup.com/)
1. [Bosch](https://www.bosch.com/)
1. [Boticario](https://www.boticario.com.br/)
1. [Broker Consulting, a.s.](https://www.bcas.cz/en/)
1. [Bulder Bank](https://bulderbank.no)
1. [Cabify](https://cabify.com/en)
1. [CAM](https://cam-inc.co.jp)
1. [Camptocamp](https://camptocamp.com)
1. [Candis](https://www.candis.io)
1. [Capital One](https://www.capitalone.com)
1. [CARFAX](https://www.carfax.com)
1. [CARFAX Europe](https://www.carfax.eu)
1. [CARFAX](https://www.carfax.com)
1. [Carrefour Group](https://www.carrefour.com)
1. [Casavo](https://casavo.com)
1. [Celonis](https://www.celonis.com/)
1. [CERN](https://home.cern/)
1. [Chargetrip](https://chargetrip.com)
1. [Chainnodes](https://chainnodes.org)
1. [Chargetrip](https://chargetrip.com)
1. [Chime](https://www.chime.com)
1. [Cisco ET&I](https://eti.cisco.com/)
1. [Cloud Posse](https://www.cloudposse.com/)
1. [Cloud Scale](https://cloudscaleinc.com/)
1. [CloudScript](https://www.cloudscript.com.br/)
1. [CloudGeometry](https://www.cloudgeometry.io/)
1. [Cloudmate](https://cloudmt.co.kr/)
1. [Cloudogu](https://cloudogu.com/)
1. [Cobalt](https://www.cobalt.io/)
1. [Codefresh](https://www.codefresh.io/)
1. [Codility](https://www.codility.com/)
1. [Cognizant](https://www.cognizant.com/)
1. [Commonbond](https://commonbond.co/)
1. [Compatio.AI](https://compatio.ai/)
1. [Contlo](https://contlo.com/)
1. [Coralogix](https://coralogix.com/)
1. [Crédit Agricole CIB](https://www.ca-cib.com)
1. [CROZ d.o.o.](https://croz.net/)
@@ -70,6 +89,7 @@ Currently, the following organizations are **officially** using Argo CD:
1. [D2iQ](https://www.d2iq.com)
1. [DaoCloud](https://daocloud.io/)
1. [Datarisk](https://www.datarisk.io/)
1. [Daydream](https://daydream.ing)
1. [Deloitte](https://www.deloitte.com/)
1. [Deutsche Telekom AG](https://telekom.com)
1. [Devopsi - Poland Software/DevOps Consulting](https://devopsi.pl/)
@@ -94,15 +114,19 @@ Currently, the following organizations are **officially** using Argo CD:
1. [Fave](https://myfave.com)
1. [Flexport](https://www.flexport.com/)
1. [Flip](https://flip.id)
1. [Fly Security](https://www.flysecurity.com.br/)
1. [Fonoa](https://www.fonoa.com/)
1. [Fortra](https://www.fortra.com)
1. [freee](https://corp.freee.co.jp/en/company/)
1. [Freshop, Inc](https://www.freshop.com/)
1. [Future PLC](https://www.futureplc.com/)
1. [Flagler Health](https://www.flaglerhealth.io/)
1. [G DATA CyberDefense AG](https://www.gdata-software.com/)
1. [G-Research](https://www.gresearch.com/teams/open-source-software/)
1. [Garner](https://www.garnercorp.com)
1. [Generali Deutschland AG](https://www.generali.de/)
1. [Gepardec](https://gepardec.com/)
1. [Getir](https://getir.com)
1. [GetYourGuide](https://www.getyourguide.com/)
1. [Gitpod](https://www.gitpod.io)
1. [Gllue](https://gllue.com)
@@ -112,13 +136,14 @@ Currently, the following organizations are **officially** using Argo CD:
1. [GlueOps](https://glueops.dev)
1. [GMETRI](https://gmetri.com/)
1. [Gojek](https://www.gojek.io/)
1. [GoTo](https://www.goto.com/)
1. [GoTo Financial](https://gotofinancial.com/)
1. [GoTo](https://www.goto.com/)
1. [Greenpass](https://www.greenpass.com.br/)
1. [Gridfuse](https://gridfuse.com/)
1. [Groww](https://groww.in)
1. [Grupo MasMovil](https://grupomasmovil.com/en/)
1. [Handelsbanken](https://www.handelsbanken.se)
1. [Hazelcast](https://hazelcast.com/)
1. [Healy](https://www.healyworld.net)
1. [Helio](https://helio.exchange)
1. [Hetki](https://hetki.ai)
@@ -126,14 +151,18 @@ Currently, the following organizations are **officially** using Argo CD:
1. [Hiya](https://hiya.com)
1. [Honestbank](https://honestbank.com)
1. [Hostinger](https://www.hostinger.com)
1. [IABAI](https://www.iab.ai)
1. [IBM](https://www.ibm.com/)
1. [Ibotta](https://home.ibotta.com)
1. [IFS](https://www.ifs.com)
1. [IITS-Consulting](https://iits-consulting.de)
1. [IllumiDesk](https://www.illumidesk.com)
1. [imaware](https://imaware.health)
1. [Indeed](https://indeed.com)
1. [Index Exchange](https://www.indexexchange.com/)
1. [Info Support](https://www.infosupport.com/)
1. [InsideBoard](https://www.insideboard.com)
1. [Instruqt](https://www.instruqt.com)
1. [Intuit](https://www.intuit.com/)
1. [Jellysmack](https://www.jellysmack.com)
1. [Joblift](https://joblift.com/)
@@ -143,6 +172,7 @@ Currently, the following organizations are **officially** using Argo CD:
1. [Karrot](https://www.daangn.com/)
1. [KarrotPay](https://www.daangnpay.com/)
1. [Kasa](https://kasa.co.kr/)
1. [Kave Home](https://kavehome.com)
1. [Keeeb](https://www.keeeb.com/)
1. [KelkooGroup](https://www.kelkoogroup.com)
1. [Keptn](https://keptn.sh)
@@ -154,6 +184,9 @@ Currently, the following organizations are **officially** using Argo CD:
1. [KubeSphere](https://github.com/kubesphere)
1. [Kurly](https://www.kurly.com/)
1. [Kvist](https://kvistsolutions.com)
1. [Kyriba](https://www.kyriba.com/)
1. [LeFigaro](https://www.lefigaro.fr/)
1. [Lely](https://www.lely.com/)
1. [LexisNexis](https://www.lexisnexis.com/)
1. [Lian Chu Securities](https://lczq.com)
1. [Liatrio](https://www.liatrio.com)
@@ -174,6 +207,7 @@ Currently, the following organizations are **officially** using Argo CD:
1. [Meilleurs Agents](https://www.meilleursagents.com/)
1. [Mercedes-Benz Tech Innovation](https://www.mercedes-benz-techinnovation.com/)
1. [Mercedes-Benz.io](https://www.mercedes-benz.io/)
1. [Metacore Games](https://metacoregames.com/)
1. [Metanet](http://www.metanet.co.kr/en/)
1. [MindSpore](https://mindspore.cn)
1. [Mirantis](https://mirantis.com/)
@@ -182,20 +216,28 @@ Currently, the following organizations are **officially** using Argo CD:
1. [Moengage](https://www.moengage.com/)
1. [Money Forward](https://corp.moneyforward.com/en/)
1. [MOO Print](https://www.moo.com/)
1. [Mozilla](https://www.mozilla.org)
1. [MTN Group](https://www.mtn.com/)
1. [Municipality of The Hague](https://www.denhaag.nl/)
1. [My Job Glasses](https://myjobglasses.com)
1. [Natura &Co](https://naturaeco.com/)
1. [Nethopper](https://nethopper.io)
1. [New Relic](https://newrelic.com/)
1. [Nextbasket](https://nextbasket.com)
1. [Nextdoor](https://nextdoor.com/)
1. [Next Fit Sistemas](https://nextfit.com.br/)
1. [Nikkei](https://www.nikkei.co.jp/nikkeiinfo/en/)
1. [Nitro](https://gonitro.com)
1. [NYCU, CS IT Center](https://it.cs.nycu.edu.tw)
1. [Objective](https://www.objective.com.br/)
1. [OCCMundial](https://occ.com.mx)
1. [Octadesk](https://octadesk.com)
1. [Octopus Deploy](https://octopus.com)
1. [Olfeo](https://www.olfeo.com/)
1. [omegaUp](https://omegaUp.com)
1. [Omni](https://omni.se/)
1. [Oncourse Home Solutions](https://oncoursehome.com/)
1. [Open Analytics](https://openanalytics.eu)
1. [openEuler](https://openeuler.org)
1. [openGauss](https://opengauss.org/)
1. [OpenGov](https://opengov.com)
@@ -207,43 +249,53 @@ Currently, the following organizations are **officially** using Argo CD:
1. [Optoro](https://www.optoro.com/)
1. [Orbital Insight](https://orbitalinsight.com/)
1. [Oscar Health Insurance](https://hioscar.com/)
1. [Outpost24](https://outpost24.com/)
1. [p3r](https://www.p3r.one/)
1. [Packlink](https://www.packlink.com/)
1. [PagerDuty](https://www.pagerduty.com/)
1. [Pandosearch](https://www.pandosearch.com/en/home)
1. [Patreon](https://www.patreon.com/)
1. [PayIt](https://payitgov.com/)
1. [PayPay](https://paypay.ne.jp/)
1. [Peloton Interactive](https://www.onepeloton.com/)
1. [Percona](https://percona.com/)
1. [PGS](https://www.pgs.com)
1. [Pigment](https://www.gopigment.com/)
1. [Pipedrive](https://www.pipedrive.com/)
1. [Pipefy](https://www.pipefy.com/)
1. [Pipekit](https://pipekit.io/)
1. [Pismo](https://pismo.io/)
1. [PITS Globale Datenrettungsdienste](https://www.pitsdatenrettung.de/)
1. [Platform9 Systems](https://platform9.com/)
1. [Polarpoint.io](https://polarpoint.io)
1. [PostFinance](https://github.com/postfinance)
1. [Preferred Networks](https://preferred.jp/en/)
1. [Previder BV](https://previder.nl)
1. [Priceline](https://priceline.com)
1. [Procore](https://www.procore.com)
1. [Productboard](https://www.productboard.com/)
1. [Prudential](https://prudential.com.sg)
1. [PT Boer Technology (Btech)](https://btech.id/)
1. [PUBG](https://www.pubg.com)
1. [Puzzle ITC](https://www.puzzle.ch/)
1. [Pvotal Technologies](https://pvotal.tech/)
1. [Qonto](https://qonto.com)
1. [QuintoAndar](https://quintoandar.com.br)
1. [Quipper](https://www.quipper.com/)
1. [RapidAPI](https://www.rapidapi.com/)
1. [rebuy](https://www.rebuy.de/)
1. [Recreation.gov](https://www.recreation.gov/)
1. [Red Hat](https://www.redhat.com/)
1. [Redpill Linpro](https://www.redpill-linpro.com/)
1. [Reenigne Cloud](https://reenigne.ca)
1. [reev.com](https://www.reev.com/)
1. [Relex Solutions](https://www.relexsolutions.com/)
1. [RightRev](https://rightrev.com/)
1. [Rijkswaterstaat](https://www.rijkswaterstaat.nl/en)
1. [Rise](https://www.risecard.eu/)
1. [Riskified](https://www.riskified.com/)
1. [Robotinfra](https://www.robotinfra.com)
1. [Rocket.Chat](https://rocket.chat)
1. [Rogo](https://rogodata.com)
1. [Rubin Observatory](https://www.lsst.org)
1. [Saildrone](https://www.saildrone.com/)
1. [Salad Technologies](https://salad.com/)
@@ -253,12 +305,17 @@ Currently, the following organizations are **officially** using Argo CD:
1. [Schwarz IT](https://jobs.schwarz/it-mission)
1. [SCRM Lidl International Hub](https://scrm.lidl)
1. [SEEK](https://seek.com.au)
1. [SEKAI](https://www.sekai.io/)
1. [Semgrep](https://semgrep.com)
1. [Shield](https://shield.com)
1. [SI Analytics](https://si-analytics.ai)
1. [Sidewalk Entertainment](https://sidewalkplay.com/)
1. [Skit](https://skit.ai/)
1. [Skribble](https://skribble.com)
1. [Skyscanner](https://www.skyscanner.net/)
1. [Smart Pension](https://www.smartpension.co.uk/)
1. [Smilee.io](https://smilee.io)
1. [Smilegate Stove](https://www.onstove.com/)
1. [Smood.ch](https://www.smood.ch/)
1. [Snapp](https://snapp.ir/)
1. [Snyk](https://snyk.io/)
@@ -269,6 +326,7 @@ Currently, the following organizations are **officially** using Argo CD:
1. [Splunk](https://splunk.com/)
1. [Spores Labs](https://spores.app)
1. [Statsig](https://statsig.com)
1. [SternumIOT](https://sternumiot.com)
1. [StreamNative](https://streamnative.io)
1. [Stuart](https://stuart.com/)
1. [Sumo Logic](https://sumologic.com/)
@@ -277,12 +335,16 @@ Currently, the following organizations are **officially** using Argo CD:
1. [Swisscom](https://www.swisscom.ch)
1. [Swissquote](https://github.com/swissquote)
1. [Syncier](https://syncier.com/)
1. [Syself](https://syself.com)
1. [TableCheck](https://tablecheck.com/)
1. [Tailor Brands](https://www.tailorbrands.com)
1. [Tamkeen Technologies](https://tamkeentech.sa/)
1. [TBC Bank](https://tbcbank.ge/)
1. [Techcombank](https://www.techcombank.com.vn/trang-chu)
1. [Technacy](https://www.technacy.it/)
1. [Telavita](https://www.telavita.com.br/)
1. [Tesla](https://tesla.com/)
1. [TextNow](https://www.textnow.com/)
1. [The Scale Factory](https://www.scalefactory.com/)
1. [ThousandEyes](https://www.thousandeyes.com/)
1. [Ticketmaster](https://ticketmaster.com)
@@ -305,6 +367,7 @@ Currently, the following organizations are **officially** using Argo CD:
1. [Urbantz](https://urbantz.com/)
1. [Vectra](https://www.vectra.ai)
1. [Veepee](https://www.veepee.com)
1. [Verkada](https://www.verkada.com)
1. [Viaduct](https://www.viaduct.ai/)
1. [VietMoney](https://vietmoney.vn/)
1. [Vinted](https://vinted.com/)
@@ -329,4 +392,5 @@ Currently, the following organizations are **officially** using Argo CD:
1. [Yubo](https://www.yubo.live/)
1. [ZDF](https://www.zdf.de/)
1. [Zimpler](https://www.zimpler.com/)
1. [ZipRecuiter](https://www.ziprecruiter.com/)
1. [ZOZO](https://corp.zozo.com/)

View File

@@ -1 +1 @@
2.10.20
2.14.0

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -4,6 +4,8 @@ import (
"context"
"fmt"
"sigs.k8s.io/controller-runtime/pkg/reconcile"
log "github.com/sirupsen/logrus"
"k8s.io/apimachinery/pkg/types"
@@ -12,43 +14,43 @@ import (
"sigs.k8s.io/controller-runtime/pkg/client"
"sigs.k8s.io/controller-runtime/pkg/event"
"github.com/argoproj/argo-cd/v2/applicationset/generators"
"github.com/argoproj/argo-cd/v2/common"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
// clusterSecretEventHandler is used when watching Secrets to check if they are ArgoCD Cluster Secrets, and if so
// requeue any related ApplicationSets.
type clusterSecretEventHandler struct {
//handler.EnqueueRequestForOwner
// handler.EnqueueRequestForOwner
Log log.FieldLogger
Client client.Client
}
func (h *clusterSecretEventHandler) Create(e event.CreateEvent, q workqueue.RateLimitingInterface) {
h.queueRelatedAppGenerators(q, e.Object)
func (h *clusterSecretEventHandler) Create(ctx context.Context, e event.CreateEvent, q workqueue.TypedRateLimitingInterface[reconcile.Request]) {
h.queueRelatedAppGenerators(ctx, q, e.Object)
}
func (h *clusterSecretEventHandler) Update(e event.UpdateEvent, q workqueue.RateLimitingInterface) {
h.queueRelatedAppGenerators(q, e.ObjectNew)
func (h *clusterSecretEventHandler) Update(ctx context.Context, e event.UpdateEvent, q workqueue.TypedRateLimitingInterface[reconcile.Request]) {
h.queueRelatedAppGenerators(ctx, q, e.ObjectNew)
}
func (h *clusterSecretEventHandler) Delete(e event.DeleteEvent, q workqueue.RateLimitingInterface) {
h.queueRelatedAppGenerators(q, e.Object)
func (h *clusterSecretEventHandler) Delete(ctx context.Context, e event.DeleteEvent, q workqueue.TypedRateLimitingInterface[reconcile.Request]) {
h.queueRelatedAppGenerators(ctx, q, e.Object)
}
func (h *clusterSecretEventHandler) Generic(e event.GenericEvent, q workqueue.RateLimitingInterface) {
h.queueRelatedAppGenerators(q, e.Object)
func (h *clusterSecretEventHandler) Generic(ctx context.Context, e event.GenericEvent, q workqueue.TypedRateLimitingInterface[reconcile.Request]) {
h.queueRelatedAppGenerators(ctx, q, e.Object)
}
// addRateLimitingInterface defines the Add method of workqueue.RateLimitingInterface, allow us to easily mock
// it for testing purposes.
type addRateLimitingInterface interface {
Add(item interface{})
type addRateLimitingInterface[T comparable] interface {
Add(item T)
}
func (h *clusterSecretEventHandler) queueRelatedAppGenerators(q addRateLimitingInterface, object client.Object) {
func (h *clusterSecretEventHandler) queueRelatedAppGenerators(ctx context.Context, q addRateLimitingInterface[reconcile.Request], object client.Object) {
// Check for label, lookup all ApplicationSets that might match the cluster, queue them all
if object.GetLabels()[generators.ArgoCDSecretTypeLabel] != generators.ArgoCDSecretTypeCluster {
if object.GetLabels()[common.LabelKeySecretType] != common.LabelValueSecretTypeCluster {
return
}
@@ -58,7 +60,7 @@ func (h *clusterSecretEventHandler) queueRelatedAppGenerators(q addRateLimitingI
}).Info("processing event for cluster secret")
appSetList := &argoprojiov1alpha1.ApplicationSetList{}
err := h.Client.List(context.Background(), appSetList)
err := h.Client.List(ctx, appSetList)
if err != nil {
h.Log.WithError(err).Error("unable to list ApplicationSets")
return
@@ -66,7 +68,6 @@ func (h *clusterSecretEventHandler) queueRelatedAppGenerators(q addRateLimitingI
h.Log.WithField("count", len(appSetList.Items)).Info("listed ApplicationSets")
for _, appSet := range appSetList.Items {
foundClusterGenerator := false
for _, generator := range appSet.Spec.Generators {
if generator.Clusters != nil {
@@ -109,7 +110,6 @@ func (h *clusterSecretEventHandler) queueRelatedAppGenerators(q addRateLimitingI
}
}
if foundClusterGenerator {
// TODO: only queue the AppGenerator if the labels match this cluster
req := ctrl.Request{NamespacedName: types.NamespacedName{Namespace: appSet.Namespace, Name: appSet.Name}}
q.Add(req)

View File

@@ -1,10 +1,14 @@
package controllers
import (
"context"
"testing"
argocommon "github.com/argoproj/argo-cd/v2/common"
log "github.com/sirupsen/logrus"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
corev1 "k8s.io/api/core/v1"
apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -14,18 +18,16 @@ import (
"sigs.k8s.io/controller-runtime/pkg/client/fake"
"sigs.k8s.io/controller-runtime/pkg/reconcile"
"github.com/argoproj/argo-cd/v2/applicationset/generators"
argov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
func TestClusterEventHandler(t *testing.T) {
scheme := runtime.NewScheme()
err := argov1alpha1.AddToScheme(scheme)
assert.Nil(t, err)
require.NoError(t, err)
err = argov1alpha1.AddToScheme(scheme)
assert.Nil(t, err)
require.NoError(t, err)
tests := []struct {
name string
@@ -41,7 +43,7 @@ func TestClusterEventHandler(t *testing.T) {
Namespace: "argocd",
Name: "my-secret",
Labels: map[string]string{
generators.ArgoCDSecretTypeLabel: generators.ArgoCDSecretTypeCluster,
argocommon.LabelKeySecretType: argocommon.LabelValueSecretTypeCluster,
},
},
},
@@ -69,7 +71,7 @@ func TestClusterEventHandler(t *testing.T) {
Namespace: "argocd",
Name: "my-secret",
Labels: map[string]string{
generators.ArgoCDSecretTypeLabel: generators.ArgoCDSecretTypeCluster,
argocommon.LabelKeySecretType: argocommon.LabelValueSecretTypeCluster,
},
},
},
@@ -112,7 +114,7 @@ func TestClusterEventHandler(t *testing.T) {
Namespace: "argocd",
Name: "my-secret",
Labels: map[string]string{
generators.ArgoCDSecretTypeLabel: generators.ArgoCDSecretTypeCluster,
argocommon.LabelKeySecretType: argocommon.LabelValueSecretTypeCluster,
},
},
},
@@ -156,7 +158,7 @@ func TestClusterEventHandler(t *testing.T) {
Namespace: "argocd",
Name: "my-secret",
Labels: map[string]string{
generators.ArgoCDSecretTypeLabel: generators.ArgoCDSecretTypeCluster,
argocommon.LabelKeySecretType: argocommon.LabelValueSecretTypeCluster,
},
},
},
@@ -217,7 +219,7 @@ func TestClusterEventHandler(t *testing.T) {
Namespace: "argocd",
Name: "my-secret",
Labels: map[string]string{
generators.ArgoCDSecretTypeLabel: generators.ArgoCDSecretTypeCluster,
argocommon.LabelKeySecretType: argocommon.LabelValueSecretTypeCluster,
},
},
},
@@ -253,7 +255,7 @@ func TestClusterEventHandler(t *testing.T) {
Namespace: "argocd",
Name: "my-secret",
Labels: map[string]string{
generators.ArgoCDSecretTypeLabel: generators.ArgoCDSecretTypeCluster,
argocommon.LabelKeySecretType: argocommon.LabelValueSecretTypeCluster,
},
},
},
@@ -303,7 +305,7 @@ func TestClusterEventHandler(t *testing.T) {
Namespace: "argocd",
Name: "my-secret",
Labels: map[string]string{
generators.ArgoCDSecretTypeLabel: generators.ArgoCDSecretTypeCluster,
argocommon.LabelKeySecretType: argocommon.LabelValueSecretTypeCluster,
},
},
},
@@ -354,7 +356,7 @@ func TestClusterEventHandler(t *testing.T) {
Namespace: "argocd",
Name: "my-secret",
Labels: map[string]string{
generators.ArgoCDSecretTypeLabel: generators.ArgoCDSecretTypeCluster,
argocommon.LabelKeySecretType: argocommon.LabelValueSecretTypeCluster,
},
},
},
@@ -388,7 +390,7 @@ func TestClusterEventHandler(t *testing.T) {
Namespace: "argocd",
Name: "my-secret",
Labels: map[string]string{
generators.ArgoCDSecretTypeLabel: generators.ArgoCDSecretTypeCluster,
argocommon.LabelKeySecretType: argocommon.LabelValueSecretTypeCluster,
},
},
},
@@ -424,7 +426,7 @@ func TestClusterEventHandler(t *testing.T) {
Namespace: "argocd",
Name: "my-secret",
Labels: map[string]string{
generators.ArgoCDSecretTypeLabel: generators.ArgoCDSecretTypeCluster,
argocommon.LabelKeySecretType: argocommon.LabelValueSecretTypeCluster,
},
},
},
@@ -474,7 +476,7 @@ func TestClusterEventHandler(t *testing.T) {
Namespace: "argocd",
Name: "my-secret",
Labels: map[string]string{
generators.ArgoCDSecretTypeLabel: generators.ArgoCDSecretTypeCluster,
argocommon.LabelKeySecretType: argocommon.LabelValueSecretTypeCluster,
},
},
},
@@ -525,7 +527,7 @@ func TestClusterEventHandler(t *testing.T) {
Namespace: "argocd",
Name: "my-secret",
Labels: map[string]string{
generators.ArgoCDSecretTypeLabel: generators.ArgoCDSecretTypeCluster,
argocommon.LabelKeySecretType: argocommon.LabelValueSecretTypeCluster,
},
},
},
@@ -534,9 +536,7 @@ func TestClusterEventHandler(t *testing.T) {
}
for _, test := range tests {
t.Run(test.name, func(t *testing.T) {
appSetList := argov1alpha1.ApplicationSetList{
Items: test.items,
}
@@ -550,28 +550,20 @@ func TestClusterEventHandler(t *testing.T) {
mockAddRateLimitingInterface := mockAddRateLimitingInterface{}
handler.queueRelatedAppGenerators(&mockAddRateLimitingInterface, &test.secret)
handler.queueRelatedAppGenerators(context.Background(), &mockAddRateLimitingInterface, &test.secret)
assert.False(t, mockAddRateLimitingInterface.errorOccurred)
assert.ElementsMatch(t, mockAddRateLimitingInterface.addedItems, test.expectedRequests)
})
}
}
// Add checks the type, and adds it to the internal list of received additions
func (obj *mockAddRateLimitingInterface) Add(item interface{}) {
if req, ok := item.(ctrl.Request); ok {
obj.addedItems = append(obj.addedItems, req)
} else {
obj.errorOccurred = true
}
func (obj *mockAddRateLimitingInterface) Add(item reconcile.Request) {
obj.addedItems = append(obj.addedItems, item)
}
type mockAddRateLimitingInterface struct {
errorOccurred bool
addedItems []ctrl.Request
addedItems []reconcile.Request
}
func TestNestedGeneratorHasClusterGenerator_NestedClusterGenerator(t *testing.T) {
@@ -581,7 +573,7 @@ func TestNestedGeneratorHasClusterGenerator_NestedClusterGenerator(t *testing.T)
hasClusterGenerator, err := nestedGeneratorHasClusterGenerator(nested)
assert.Nil(t, err)
require.NoError(t, err)
assert.True(t, hasClusterGenerator)
}
@@ -608,7 +600,7 @@ func TestNestedGeneratorHasClusterGenerator_NestedMergeGenerator(t *testing.T) {
hasClusterGenerator, err := nestedGeneratorHasClusterGenerator(nested)
assert.Nil(t, err)
require.NoError(t, err)
assert.True(t, hasClusterGenerator)
}
@@ -635,6 +627,6 @@ func TestNestedGeneratorHasClusterGenerator_NestedMergeGeneratorWithInvalidJSON(
hasClusterGenerator, err := nestedGeneratorHasClusterGenerator(nested)
assert.NotNil(t, err)
require.Error(t, err)
assert.False(t, hasClusterGenerator)
}

View File

@@ -6,6 +6,7 @@ import (
"time"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
corev1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/runtime"
@@ -16,6 +17,7 @@ import (
"sigs.k8s.io/controller-runtime/pkg/client/fake"
"github.com/argoproj/argo-cd/v2/applicationset/generators"
appsetmetrics "github.com/argoproj/argo-cd/v2/applicationset/metrics"
"github.com/argoproj/argo-cd/v2/applicationset/services/mocks"
argov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
@@ -25,7 +27,7 @@ func TestRequeueAfter(t *testing.T) {
ctx := context.Background()
scheme := runtime.NewScheme()
err := argov1alpha1.AddToScheme(scheme)
assert.Nil(t, err)
require.NoError(t, err)
gvrToListKind := map[schema.GroupVersionResource]string{{
Group: "mallard.io",
Version: "v1",
@@ -55,14 +57,14 @@ func TestRequeueAfter(t *testing.T) {
},
}
fakeDynClient := dynfake.NewSimpleDynamicClientWithCustomListKinds(runtime.NewScheme(), gvrToListKind, duckType)
scmConfig := generators.NewSCMConfig("", []string{""}, true, nil, true)
terminalGenerators := map[string]generators.Generator{
"List": generators.NewListGenerator(),
"Clusters": generators.NewClusterGenerator(k8sClient, ctx, appClientset, "argocd"),
"Git": generators.NewGitGenerator(mockServer),
"SCMProvider": generators.NewSCMProviderGenerator(fake.NewClientBuilder().WithObjects(&corev1.Secret{}).Build(), generators.SCMAuthProviders{}, "", []string{""}, true),
"Git": generators.NewGitGenerator(mockServer, "namespace"),
"SCMProvider": generators.NewSCMProviderGenerator(fake.NewClientBuilder().WithObjects(&corev1.Secret{}).Build(), scmConfig),
"ClusterDecisionResource": generators.NewDuckTypeGenerator(ctx, fakeDynClient, appClientset, "argocd"),
"PullRequest": generators.NewPullRequestGenerator(k8sClient, generators.SCMAuthProviders{}, "", []string{""}, true),
"PullRequest": generators.NewPullRequestGenerator(k8sClient, scmConfig),
}
nestedGenerators := map[string]generators.Generator{
@@ -88,15 +90,18 @@ func TestRequeueAfter(t *testing.T) {
}
client := fake.NewClientBuilder().WithScheme(scheme).Build()
metrics := appsetmetrics.NewFakeAppsetMetrics(client)
r := ApplicationSetReconciler{
Client: client,
Scheme: scheme,
Recorder: record.NewFakeRecorder(0),
Generators: topLevelGenerators,
Metrics: metrics,
}
type args struct {
appset *argov1alpha1.ApplicationSet
appset *argov1alpha1.ApplicationSet
requeueAfterOverride string
}
tests := []struct {
name string
@@ -104,11 +109,13 @@ func TestRequeueAfter(t *testing.T) {
want time.Duration
wantErr assert.ErrorAssertionFunc
}{
{name: "Cluster", args: args{appset: &argov1alpha1.ApplicationSet{
Spec: argov1alpha1.ApplicationSetSpec{
Generators: []argov1alpha1.ApplicationSetGenerator{{Clusters: &argov1alpha1.ClusterGenerator{}}},
},
}}, want: generators.NoRequeueAfter, wantErr: assert.NoError},
{name: "Cluster", args: args{
appset: &argov1alpha1.ApplicationSet{
Spec: argov1alpha1.ApplicationSetSpec{
Generators: []argov1alpha1.ApplicationSetGenerator{{Clusters: &argov1alpha1.ClusterGenerator{}}},
},
}, requeueAfterOverride: "",
}, want: generators.NoRequeueAfter, wantErr: assert.NoError},
{name: "ClusterMergeNested", args: args{&argov1alpha1.ApplicationSet{
Spec: argov1alpha1.ApplicationSetSpec{
Generators: []argov1alpha1.ApplicationSetGenerator{
@@ -123,7 +130,7 @@ func TestRequeueAfter(t *testing.T) {
}},
},
},
}}, want: generators.DefaultRequeueAfterSeconds, wantErr: assert.NoError},
}, ""}, want: generators.DefaultRequeueAfterSeconds, wantErr: assert.NoError},
{name: "ClusterMatrixNested", args: args{&argov1alpha1.ApplicationSet{
Spec: argov1alpha1.ApplicationSetSpec{
Generators: []argov1alpha1.ApplicationSetGenerator{
@@ -138,15 +145,65 @@ func TestRequeueAfter(t *testing.T) {
}},
},
},
}}, want: generators.DefaultRequeueAfterSeconds, wantErr: assert.NoError},
}, ""}, want: generators.DefaultRequeueAfterSeconds, wantErr: assert.NoError},
{name: "ListGenerator", args: args{appset: &argov1alpha1.ApplicationSet{
Spec: argov1alpha1.ApplicationSetSpec{
Generators: []argov1alpha1.ApplicationSetGenerator{{List: &argov1alpha1.ListGenerator{}}},
},
}}, want: generators.NoRequeueAfter, wantErr: assert.NoError},
{name: "DuckGenerator", args: args{appset: &argov1alpha1.ApplicationSet{
Spec: argov1alpha1.ApplicationSetSpec{
Generators: []argov1alpha1.ApplicationSetGenerator{{ClusterDecisionResource: &argov1alpha1.DuckTypeGenerator{}}},
},
}}, want: generators.DefaultRequeueAfterSeconds, wantErr: assert.NoError},
{name: "OverrideRequeueDuck", args: args{
appset: &argov1alpha1.ApplicationSet{
Spec: argov1alpha1.ApplicationSetSpec{
Generators: []argov1alpha1.ApplicationSetGenerator{{ClusterDecisionResource: &argov1alpha1.DuckTypeGenerator{}}},
},
}, requeueAfterOverride: "1h",
}, want: 1 * time.Hour, wantErr: assert.NoError},
{name: "OverrideRequeueGit", args: args{&argov1alpha1.ApplicationSet{
Spec: argov1alpha1.ApplicationSetSpec{
Generators: []argov1alpha1.ApplicationSetGenerator{
{Git: &argov1alpha1.GitGenerator{}},
},
},
}, "1h"}, want: 1 * time.Hour, wantErr: assert.NoError},
{name: "OverrideRequeueMatrix", args: args{&argov1alpha1.ApplicationSet{
Spec: argov1alpha1.ApplicationSetSpec{
Generators: []argov1alpha1.ApplicationSetGenerator{
{Clusters: &argov1alpha1.ClusterGenerator{}},
{Merge: &argov1alpha1.MergeGenerator{
Generators: []argov1alpha1.ApplicationSetNestedGenerator{
{
Clusters: &argov1alpha1.ClusterGenerator{},
Git: &argov1alpha1.GitGenerator{},
},
},
}},
},
},
}, "5m"}, want: 5 * time.Minute, wantErr: assert.NoError},
{name: "OverrideRequeueMerge", args: args{&argov1alpha1.ApplicationSet{
Spec: argov1alpha1.ApplicationSetSpec{
Generators: []argov1alpha1.ApplicationSetGenerator{
{Clusters: &argov1alpha1.ClusterGenerator{}},
{Merge: &argov1alpha1.MergeGenerator{
Generators: []argov1alpha1.ApplicationSetNestedGenerator{
{
Clusters: &argov1alpha1.ClusterGenerator{},
Git: &argov1alpha1.GitGenerator{},
},
},
}},
},
},
}, "12s"}, want: 12 * time.Second, wantErr: assert.NoError},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
t.Setenv("ARGOCD_APPLICATIONSET_CONTROLLER_REQUEUE_AFTER", tt.args.requeueAfterOverride)
assert.Equalf(t, tt.want, r.getMinRequeueAfter(tt.args.appset), "getMinRequeueAfter(%v)", tt.args.appset)
})
}

View File

@@ -1,4 +1,4 @@
package controllers
package template
import (
"encoding/json"
@@ -11,14 +11,12 @@ import (
)
func applyTemplatePatch(app *appv1.Application, templatePatch string) (*appv1.Application, error) {
appString, err := json.Marshal(app)
if err != nil {
return nil, fmt.Errorf("error while marhsalling Application %w", err)
}
convertedTemplatePatch, err := utils.ConvertYAMLToJSON(templatePatch)
if err != nil {
return nil, fmt.Errorf("error while converting template to json %q: %w", convertedTemplatePatch, err)
}
@@ -28,7 +26,6 @@ func applyTemplatePatch(app *appv1.Application, templatePatch string) (*appv1.Ap
}
data, err := strategicpatch.StrategicMergePatch(appString, []byte(convertedTemplatePatch), appv1.Application{})
if err != nil {
return nil, fmt.Errorf("error while applying templatePatch template to json %q: %w", convertedTemplatePatch, err)
}

View File

@@ -1,4 +1,4 @@
package controllers
package template
import (
"testing"

View File

@@ -0,0 +1,101 @@
package template
import (
"fmt"
"sigs.k8s.io/controller-runtime/pkg/client"
log "github.com/sirupsen/logrus"
"github.com/argoproj/argo-cd/v2/applicationset/generators"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
argov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
func GenerateApplications(logCtx *log.Entry, applicationSetInfo argov1alpha1.ApplicationSet, g map[string]generators.Generator, renderer utils.Renderer, client client.Client) ([]argov1alpha1.Application, argov1alpha1.ApplicationSetReasonType, error) {
var res []argov1alpha1.Application
var firstError error
var applicationSetReason argov1alpha1.ApplicationSetReasonType
for _, requestedGenerator := range applicationSetInfo.Spec.Generators {
t, err := generators.Transform(requestedGenerator, g, applicationSetInfo.Spec.Template, &applicationSetInfo, map[string]interface{}{}, client)
if err != nil {
logCtx.WithError(err).WithField("generator", requestedGenerator).
Error("error generating application from params")
if firstError == nil {
firstError = err
applicationSetReason = argov1alpha1.ApplicationSetReasonApplicationParamsGenerationError
}
continue
}
for _, a := range t {
tmplApplication := GetTempApplication(a.Template)
for _, p := range a.Params {
app, err := renderer.RenderTemplateParams(tmplApplication, applicationSetInfo.Spec.SyncPolicy, p, applicationSetInfo.Spec.GoTemplate, applicationSetInfo.Spec.GoTemplateOptions)
if err != nil {
logCtx.WithError(err).WithField("params", a.Params).WithField("generator", requestedGenerator).
Error("error generating application from params")
if firstError == nil {
firstError = err
applicationSetReason = argov1alpha1.ApplicationSetReasonRenderTemplateParamsError
}
continue
}
if applicationSetInfo.Spec.TemplatePatch != nil {
patchedApplication, err := renderTemplatePatch(renderer, app, applicationSetInfo, p)
if err != nil {
log.WithError(err).WithField("params", a.Params).WithField("generator", requestedGenerator).
Error("error generating application from params")
if firstError == nil {
firstError = err
applicationSetReason = argov1alpha1.ApplicationSetReasonRenderTemplateParamsError
}
continue
}
app = patchedApplication
}
// The app's namespace must be the same as the AppSet's namespace to preserve the appsets-in-any-namespace
// security boundary.
app.Namespace = applicationSetInfo.Namespace
res = append(res, *app)
}
}
if log.IsLevelEnabled(log.DebugLevel) {
logCtx.WithField("generator", requestedGenerator).Debugf("apps from generator: %+v", res)
} else {
logCtx.Infof("generated %d applications", len(res))
}
}
return res, applicationSetReason, firstError
}
func renderTemplatePatch(r utils.Renderer, app *argov1alpha1.Application, applicationSetInfo argov1alpha1.ApplicationSet, params map[string]interface{}) (*argov1alpha1.Application, error) {
replacedTemplate, err := r.Replace(*applicationSetInfo.Spec.TemplatePatch, params, applicationSetInfo.Spec.GoTemplate, applicationSetInfo.Spec.GoTemplateOptions)
if err != nil {
return nil, fmt.Errorf("error replacing values in templatePatch: %w", err)
}
return applyTemplatePatch(app, replacedTemplate)
}
func GetTempApplication(applicationSetTemplate argov1alpha1.ApplicationSetTemplate) *argov1alpha1.Application {
var tmplApplication argov1alpha1.Application
tmplApplication.Annotations = applicationSetTemplate.Annotations
tmplApplication.Labels = applicationSetTemplate.Labels
tmplApplication.Namespace = applicationSetTemplate.Namespace
tmplApplication.Name = applicationSetTemplate.Name
tmplApplication.Spec = applicationSetTemplate.Spec
tmplApplication.Finalizers = applicationSetTemplate.Finalizers
return &tmplApplication
}

View File

@@ -0,0 +1,350 @@
package template
import (
"fmt"
"maps"
"testing"
"github.com/stretchr/testify/mock"
"github.com/stretchr/testify/require"
log "github.com/sirupsen/logrus"
"github.com/stretchr/testify/assert"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"github.com/argoproj/argo-cd/v2/applicationset/generators"
genmock "github.com/argoproj/argo-cd/v2/applicationset/generators/mocks"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
rendmock "github.com/argoproj/argo-cd/v2/applicationset/utils/mocks"
"github.com/argoproj/argo-cd/v2/pkg/apis/application"
"github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
func TestGenerateApplications(t *testing.T) {
scheme := runtime.NewScheme()
err := v1alpha1.AddToScheme(scheme)
require.NoError(t, err)
err = v1alpha1.AddToScheme(scheme)
require.NoError(t, err)
for _, c := range []struct {
name string
params []map[string]interface{}
template v1alpha1.ApplicationSetTemplate
generateParamsError error
rendererError error
expectErr bool
expectedReason v1alpha1.ApplicationSetReasonType
}{
{
name: "Generate two applications",
params: []map[string]interface{}{{"name": "app1"}, {"name": "app2"}},
template: v1alpha1.ApplicationSetTemplate{
ApplicationSetTemplateMeta: v1alpha1.ApplicationSetTemplateMeta{
Name: "name",
Namespace: "namespace",
Labels: map[string]string{"label_name": "label_value"},
},
Spec: v1alpha1.ApplicationSpec{},
},
expectedReason: "",
},
{
name: "Handles error from the generator",
generateParamsError: fmt.Errorf("error"),
expectErr: true,
expectedReason: v1alpha1.ApplicationSetReasonApplicationParamsGenerationError,
},
{
name: "Handles error from the render",
params: []map[string]interface{}{{"name": "app1"}, {"name": "app2"}},
template: v1alpha1.ApplicationSetTemplate{
ApplicationSetTemplateMeta: v1alpha1.ApplicationSetTemplateMeta{
Name: "name",
Namespace: "namespace",
Labels: map[string]string{"label_name": "label_value"},
},
Spec: v1alpha1.ApplicationSpec{},
},
rendererError: fmt.Errorf("error"),
expectErr: true,
expectedReason: v1alpha1.ApplicationSetReasonRenderTemplateParamsError,
},
} {
cc := c
app := v1alpha1.Application{
ObjectMeta: metav1.ObjectMeta{
Name: "test",
Namespace: "namespace",
},
TypeMeta: metav1.TypeMeta{
Kind: application.ApplicationKind,
APIVersion: "argoproj.io/v1alpha1",
},
}
t.Run(cc.name, func(t *testing.T) {
generatorMock := genmock.Generator{}
generator := v1alpha1.ApplicationSetGenerator{
List: &v1alpha1.ListGenerator{},
}
generatorMock.On("GenerateParams", &generator, mock.AnythingOfType("*v1alpha1.ApplicationSet"), mock.Anything).
Return(cc.params, cc.generateParamsError)
generatorMock.On("GetTemplate", &generator).
Return(&v1alpha1.ApplicationSetTemplate{})
rendererMock := rendmock.Renderer{}
var expectedApps []v1alpha1.Application
if cc.generateParamsError == nil {
for _, p := range cc.params {
if cc.rendererError != nil {
rendererMock.On("RenderTemplateParams", GetTempApplication(cc.template), mock.AnythingOfType("*v1alpha1.ApplicationSetSyncPolicy"), p, false, []string(nil)).
Return(nil, cc.rendererError)
} else {
rendererMock.On("RenderTemplateParams", GetTempApplication(cc.template), mock.AnythingOfType("*v1alpha1.ApplicationSetSyncPolicy"), p, false, []string(nil)).
Return(&app, nil)
expectedApps = append(expectedApps, app)
}
}
}
generators := map[string]generators.Generator{
"List": &generatorMock,
}
renderer := &rendererMock
got, reason, err := GenerateApplications(log.NewEntry(log.StandardLogger()), v1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
Name: "name",
Namespace: "namespace",
},
Spec: v1alpha1.ApplicationSetSpec{
Generators: []v1alpha1.ApplicationSetGenerator{generator},
Template: cc.template,
},
},
generators,
renderer,
nil,
)
if cc.expectErr {
require.Error(t, err)
} else {
require.NoError(t, err)
}
assert.Equal(t, expectedApps, got)
assert.Equal(t, cc.expectedReason, reason)
generatorMock.AssertNumberOfCalls(t, "GenerateParams", 1)
if cc.generateParamsError == nil {
rendererMock.AssertNumberOfCalls(t, "RenderTemplateParams", len(cc.params))
}
})
}
}
func TestMergeTemplateApplications(t *testing.T) {
for _, c := range []struct {
name string
params []map[string]interface{}
template v1alpha1.ApplicationSetTemplate
overrideTemplate v1alpha1.ApplicationSetTemplate
expectedMerged v1alpha1.ApplicationSetTemplate
expectedApps []v1alpha1.Application
}{
{
name: "Generate app",
params: []map[string]interface{}{{"name": "app1"}},
template: v1alpha1.ApplicationSetTemplate{
ApplicationSetTemplateMeta: v1alpha1.ApplicationSetTemplateMeta{
Name: "name",
Namespace: "namespace",
Labels: map[string]string{"label_name": "label_value"},
},
Spec: v1alpha1.ApplicationSpec{},
},
overrideTemplate: v1alpha1.ApplicationSetTemplate{
ApplicationSetTemplateMeta: v1alpha1.ApplicationSetTemplateMeta{
Name: "test",
Labels: map[string]string{"foo": "bar"},
},
Spec: v1alpha1.ApplicationSpec{},
},
expectedMerged: v1alpha1.ApplicationSetTemplate{
ApplicationSetTemplateMeta: v1alpha1.ApplicationSetTemplateMeta{
Name: "test",
Namespace: "namespace",
Labels: map[string]string{"label_name": "label_value", "foo": "bar"},
},
Spec: v1alpha1.ApplicationSpec{},
},
expectedApps: []v1alpha1.Application{
{
ObjectMeta: metav1.ObjectMeta{
Name: "test",
Namespace: "test",
Labels: map[string]string{"foo": "bar"},
},
Spec: v1alpha1.ApplicationSpec{},
},
},
},
} {
cc := c
t.Run(cc.name, func(t *testing.T) {
generatorMock := genmock.Generator{}
generator := v1alpha1.ApplicationSetGenerator{
List: &v1alpha1.ListGenerator{},
}
generatorMock.On("GenerateParams", &generator, mock.AnythingOfType("*v1alpha1.ApplicationSet"), mock.Anything).
Return(cc.params, nil)
generatorMock.On("GetTemplate", &generator).
Return(&cc.overrideTemplate)
rendererMock := rendmock.Renderer{}
rendererMock.On("RenderTemplateParams", GetTempApplication(cc.expectedMerged), mock.AnythingOfType("*v1alpha1.ApplicationSetSyncPolicy"), cc.params[0], false, []string(nil)).
Return(&cc.expectedApps[0], nil)
generators := map[string]generators.Generator{
"List": &generatorMock,
}
renderer := &rendererMock
got, _, _ := GenerateApplications(log.NewEntry(log.StandardLogger()), v1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
Name: "name",
Namespace: "namespace",
},
Spec: v1alpha1.ApplicationSetSpec{
Generators: []v1alpha1.ApplicationSetGenerator{generator},
Template: cc.template,
},
},
generators,
renderer,
nil,
)
assert.Equal(t, cc.expectedApps, got)
})
}
}
// Test app generation from a go template application set using a pull request generator
func TestGenerateAppsUsingPullRequestGenerator(t *testing.T) {
for _, cases := range []struct {
name string
params []map[string]interface{}
template v1alpha1.ApplicationSetTemplate
expectedApp []v1alpha1.Application
}{
{
name: "Generate an application from a go template application set manifest using a pull request generator",
params: []map[string]interface{}{
{
"number": "1",
"title": "title1",
"branch": "branch1",
"branch_slug": "branchSlug1",
"head_sha": "089d92cbf9ff857a39e6feccd32798ca700fb958",
"head_short_sha": "089d92cb",
"branch_slugify_default": "feat/a_really+long_pull_request_name_to_test_argo_slugification_and_branch_name_shortening_feature",
"branch_slugify_smarttruncate_disabled": "feat/areallylongpullrequestnametotestargoslugificationandbranchnameshorteningfeature",
"branch_slugify_smarttruncate_enabled": "feat/testwithsmarttruncateenabledramdomlonglistofcharacters",
"labels": []string{"label1"},
},
},
template: v1alpha1.ApplicationSetTemplate{
ApplicationSetTemplateMeta: v1alpha1.ApplicationSetTemplateMeta{
Name: "AppSet-{{.branch}}-{{.number}}",
Labels: map[string]string{
"app1": "{{index .labels 0}}",
"branch-test1": "AppSet-{{.branch_slugify_default | slugify }}",
"branch-test2": "AppSet-{{.branch_slugify_smarttruncate_disabled | slugify 49 false }}",
"branch-test3": "AppSet-{{.branch_slugify_smarttruncate_enabled | slugify 50 true }}",
},
},
Spec: v1alpha1.ApplicationSpec{
Source: &v1alpha1.ApplicationSource{
RepoURL: "https://testurl/testRepo",
TargetRevision: "{{.head_short_sha}}",
},
Destination: v1alpha1.ApplicationDestination{
Server: "https://kubernetes.default.svc",
Namespace: "AppSet-{{.branch_slug}}-{{.head_sha}}",
},
},
},
expectedApp: []v1alpha1.Application{
{
ObjectMeta: metav1.ObjectMeta{
Name: "AppSet-branch1-1",
Labels: map[string]string{
"app1": "label1",
"branch-test1": "AppSet-feat-a-really-long-pull-request-name-to-test-argo",
"branch-test2": "AppSet-feat-areallylongpullrequestnametotestargoslugific",
"branch-test3": "AppSet-feat",
},
},
Spec: v1alpha1.ApplicationSpec{
Source: &v1alpha1.ApplicationSource{
RepoURL: "https://testurl/testRepo",
TargetRevision: "089d92cb",
},
Destination: v1alpha1.ApplicationDestination{
Server: "https://kubernetes.default.svc",
Namespace: "AppSet-branchSlug1-089d92cbf9ff857a39e6feccd32798ca700fb958",
},
},
},
},
},
} {
t.Run(cases.name, func(t *testing.T) {
generatorMock := genmock.Generator{}
generator := v1alpha1.ApplicationSetGenerator{
PullRequest: &v1alpha1.PullRequestGenerator{},
}
generatorMock.On("GenerateParams", &generator, mock.AnythingOfType("*v1alpha1.ApplicationSet"), mock.Anything).
Return(cases.params, nil)
generatorMock.On("GetTemplate", &generator).
Return(&cases.template, nil)
generators := map[string]generators.Generator{
"PullRequest": &generatorMock,
}
renderer := &utils.Render{}
gotApp, _, _ := GenerateApplications(log.NewEntry(log.StandardLogger()), v1alpha1.ApplicationSet{
Spec: v1alpha1.ApplicationSetSpec{
GoTemplate: true,
Generators: []v1alpha1.ApplicationSetGenerator{{
PullRequest: &v1alpha1.PullRequestGenerator{},
}},
Template: cases.template,
},
},
generators,
renderer,
nil,
)
assert.EqualValues(t, cases.expectedApp[0].ObjectMeta.Name, gotApp[0].ObjectMeta.Name)
assert.EqualValues(t, cases.expectedApp[0].Spec.Source.TargetRevision, gotApp[0].Spec.Source.TargetRevision)
assert.EqualValues(t, cases.expectedApp[0].Spec.Destination.Namespace, gotApp[0].Spec.Destination.Namespace)
assert.True(t, maps.Equal(cases.expectedApp[0].ObjectMeta.Labels, gotApp[0].ObjectMeta.Labels))
})
}
}

View File

@@ -15,14 +15,10 @@ import (
"sigs.k8s.io/controller-runtime/pkg/client"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
"github.com/argoproj/argo-cd/v2/common"
argoappsetv1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
const (
ArgoCDSecretTypeLabel = "argocd.argoproj.io/secret-type"
ArgoCDSecretTypeCluster = "cluster"
)
var _ Generator = (*ClusterGenerator)(nil)
// ClusterGenerator generates Applications for some or all clusters registered with ArgoCD.
@@ -38,7 +34,6 @@ type ClusterGenerator struct {
var render = &utils.Render{}
func NewClusterGenerator(c client.Client, ctx context.Context, clientset kubernetes.Interface, namespace string) Generator {
settingsManager := settings.NewSettingsManager(ctx, clientset, namespace)
g := &ClusterGenerator{
@@ -53,7 +48,7 @@ func NewClusterGenerator(c client.Client, ctx context.Context, clientset kuberne
// GetRequeueAfter never requeue the cluster generator because the `clusterSecretEventHandler` will requeue the appsets
// when the cluster secrets change
func (g *ClusterGenerator) GetRequeueAfter(appSetGenerator *argoappsetv1alpha1.ApplicationSetGenerator) time.Duration {
func (g *ClusterGenerator) GetRequeueAfter(_ *argoappsetv1alpha1.ApplicationSetGenerator) time.Duration {
return NoRequeueAfter
}
@@ -61,8 +56,8 @@ func (g *ClusterGenerator) GetTemplate(appSetGenerator *argoappsetv1alpha1.Appli
return &appSetGenerator.Clusters.Template
}
func (g *ClusterGenerator) GenerateParams(appSetGenerator *argoappsetv1alpha1.ApplicationSetGenerator, appSet *argoappsetv1alpha1.ApplicationSet) ([]map[string]interface{}, error) {
func (g *ClusterGenerator) GenerateParams(appSetGenerator *argoappsetv1alpha1.ApplicationSetGenerator, appSet *argoappsetv1alpha1.ApplicationSet, _ client.Client) ([]map[string]interface{}, error) {
logCtx := log.WithField("applicationset", appSet.GetName()).WithField("namespace", appSet.GetNamespace())
if appSetGenerator == nil {
return nil, EmptyAppSetGeneratorError
}
@@ -85,37 +80,44 @@ func (g *ClusterGenerator) GenerateParams(appSetGenerator *argoappsetv1alpha1.Ap
return nil, nil
}
clusterSecrets, err := g.getSecretsByClusterName(appSetGenerator)
clusterSecrets, err := g.getSecretsByClusterName(logCtx, appSetGenerator)
if err != nil {
return nil, err
return nil, fmt.Errorf("error getting cluster secrets: %w", err)
}
res := []map[string]interface{}{}
secretsFound := []corev1.Secret{}
for _, cluster := range clustersFromArgoCD.Items {
isFlatMode := appSetGenerator.Clusters.FlatList
logCtx.Debugf("Using flat mode = %t for cluster generator", isFlatMode)
clustersParams := make([]map[string]interface{}, 0)
for _, cluster := range clustersFromArgoCD.Items {
// If there is a secret for this cluster, then it's a non-local cluster, so it will be
// handled by the next step.
if secretForCluster, exists := clusterSecrets[cluster.Name]; exists {
secretsFound = append(secretsFound, secretForCluster)
} else if !ignoreLocalClusters {
// If there is no secret for the cluster, it's the local cluster, so handle it here.
params := map[string]interface{}{}
params["name"] = cluster.Name
params["nameNormalized"] = cluster.Name
params["server"] = cluster.Server
params["project"] = ""
err = appendTemplatedValues(appSetGenerator.Clusters.Values, params, appSet.Spec.GoTemplate, appSet.Spec.GoTemplateOptions)
if err != nil {
return nil, err
return nil, fmt.Errorf("error appending templated values for local cluster: %w", err)
}
res = append(res, params)
if isFlatMode {
clustersParams = append(clustersParams, params)
} else {
res = append(res, params)
}
log.WithField("cluster", "local cluster").Info("matched local cluster")
logCtx.WithField("cluster", "local cluster").Info("matched local cluster")
}
}
@@ -127,6 +129,13 @@ func (g *ClusterGenerator) GenerateParams(appSetGenerator *argoappsetv1alpha1.Ap
params["nameNormalized"] = utils.SanitizeName(string(cluster.Data["name"]))
params["server"] = string(cluster.Data["server"])
project, ok := cluster.Data["project"]
if ok {
params["project"] = string(project)
} else {
params["project"] = ""
}
if appSet.Spec.GoTemplate {
meta := map[string]interface{}{}
@@ -150,31 +159,39 @@ func (g *ClusterGenerator) GenerateParams(appSetGenerator *argoappsetv1alpha1.Ap
err = appendTemplatedValues(appSetGenerator.Clusters.Values, params, appSet.Spec.GoTemplate, appSet.Spec.GoTemplateOptions)
if err != nil {
return nil, err
return nil, fmt.Errorf("error appending templated values for cluster: %w", err)
}
res = append(res, params)
if isFlatMode {
clustersParams = append(clustersParams, params)
} else {
res = append(res, params)
}
log.WithField("cluster", cluster.Name).Info("matched cluster secret")
logCtx.WithField("cluster", cluster.Name).Debug("matched cluster secret")
}
if isFlatMode {
res = append(res, map[string]interface{}{
"clusters": clustersParams,
})
}
return res, nil
}
func (g *ClusterGenerator) getSecretsByClusterName(appSetGenerator *argoappsetv1alpha1.ApplicationSetGenerator) (map[string]corev1.Secret, error) {
// List all Clusters:
func (g *ClusterGenerator) getSecretsByClusterName(log *log.Entry, appSetGenerator *argoappsetv1alpha1.ApplicationSetGenerator) (map[string]corev1.Secret, error) {
clusterSecretList := &corev1.SecretList{}
selector := metav1.AddLabelToSelector(&appSetGenerator.Clusters.Selector, ArgoCDSecretTypeLabel, ArgoCDSecretTypeCluster)
selector := metav1.AddLabelToSelector(&appSetGenerator.Clusters.Selector, common.LabelKeySecretType, common.LabelValueSecretTypeCluster)
secretSelector, err := metav1.LabelSelectorAsSelector(selector)
if err != nil {
return nil, err
return nil, fmt.Errorf("error converting label selector: %w", err)
}
if err := g.Client.List(context.Background(), clusterSecretList, client.MatchingLabelsSelector{Selector: secretSelector}); err != nil {
return nil, err
}
log.Debug("clusters matching labels", "count", len(clusterSecretList.Items))
log.Debugf("clusters matching labels: %d", len(clusterSecretList.Items))
res := map[string]corev1.Secret{}
@@ -185,5 +202,4 @@ func (g *ClusterGenerator) getSecretsByClusterName(appSetGenerator *argoappsetv1
}
return res, nil
}

View File

@@ -17,6 +17,7 @@ import (
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
type possiblyErroringFakeCtrlRuntimeClient struct {
@@ -75,18 +76,20 @@ func TestGenerateParams(t *testing.T) {
},
},
Data: map[string][]byte{
"config": []byte("{}"),
"name": []byte("production_01/west"),
"server": []byte("https://production-01.example.com"),
"config": []byte("{}"),
"name": []byte("production_01/west"),
"server": []byte("https://production-01.example.com"),
"project": []byte("prod-project"),
},
Type: corev1.SecretType("Opaque"),
},
}
testCases := []struct {
name string
selector metav1.LabelSelector
values map[string]string
expected []map[string]interface{}
name string
selector metav1.LabelSelector
isFlatMode bool
values map[string]string
expected []map[string]interface{}
// clientError is true if a k8s client error should be simulated
clientError bool
expectedError error
@@ -104,13 +107,16 @@ func TestGenerateParams(t *testing.T) {
"aaa": "{{ server }}",
"no-op": "{{ this-does-not-exist }}",
}, expected: []map[string]interface{}{
{"values.lol1": "lol", "values.lol2": "{{values.lol1}}{{values.lol1}}", "values.lol3": "{{values.lol2}}{{values.lol2}}{{values.lol2}}", "values.foo": "bar", "values.bar": "production", "values.no-op": "{{ this-does-not-exist }}", "values.bat": "production", "values.aaa": "https://production-01.example.com", "name": "production_01/west", "nameNormalized": "production-01-west", "server": "https://production-01.example.com", "metadata.labels.environment": "production", "metadata.labels.org": "bar",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "production"},
{"values.lol1": "lol", "values.lol2": "{{values.lol1}}{{values.lol1}}", "values.lol3": "{{values.lol2}}{{values.lol2}}{{values.lol2}}", "values.foo": "bar", "values.bar": "{{ metadata.annotations.foo.argoproj.io }}", "values.no-op": "{{ this-does-not-exist }}", "values.bat": "{{ metadata.labels.environment }}", "values.aaa": "https://kubernetes.default.svc", "nameNormalized": "in-cluster", "name": "in-cluster", "server": "https://kubernetes.default.svc", "project": ""},
{
"values.lol1": "lol", "values.lol2": "{{values.lol1}}{{values.lol1}}", "values.lol3": "{{values.lol2}}{{values.lol2}}{{values.lol2}}", "values.foo": "bar", "values.bar": "production", "values.no-op": "{{ this-does-not-exist }}", "values.bat": "production", "values.aaa": "https://production-01.example.com", "name": "production_01/west", "nameNormalized": "production-01-west", "server": "https://production-01.example.com", "metadata.labels.environment": "production", "metadata.labels.org": "bar",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "production", "project": "prod-project",
},
{"values.lol1": "lol", "values.lol2": "{{values.lol1}}{{values.lol1}}", "values.lol3": "{{values.lol2}}{{values.lol2}}{{values.lol2}}", "values.foo": "bar", "values.bar": "staging", "values.no-op": "{{ this-does-not-exist }}", "values.bat": "staging", "values.aaa": "https://staging-01.example.com", "name": "staging-01", "nameNormalized": "staging-01", "server": "https://staging-01.example.com", "metadata.labels.environment": "staging", "metadata.labels.org": "foo",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "staging"},
{"values.lol1": "lol", "values.lol2": "{{values.lol1}}{{values.lol1}}", "values.lol3": "{{values.lol2}}{{values.lol2}}{{values.lol2}}", "values.foo": "bar", "values.bar": "{{ metadata.annotations.foo.argoproj.io }}", "values.no-op": "{{ this-does-not-exist }}", "values.bat": "{{ metadata.labels.environment }}", "values.aaa": "https://kubernetes.default.svc", "nameNormalized": "in-cluster", "name": "in-cluster", "server": "https://kubernetes.default.svc"},
{
"values.lol1": "lol", "values.lol2": "{{values.lol1}}{{values.lol1}}", "values.lol3": "{{values.lol2}}{{values.lol2}}{{values.lol2}}", "values.foo": "bar", "values.bar": "staging", "values.no-op": "{{ this-does-not-exist }}", "values.bat": "staging", "values.aaa": "https://staging-01.example.com", "name": "staging-01", "nameNormalized": "staging-01", "server": "https://staging-01.example.com", "metadata.labels.environment": "staging", "metadata.labels.org": "foo",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "staging", "project": "",
},
},
clientError: false,
expectedError: nil,
@@ -124,11 +130,15 @@ func TestGenerateParams(t *testing.T) {
},
values: nil,
expected: []map[string]interface{}{
{"name": "production_01/west", "nameNormalized": "production-01-west", "server": "https://production-01.example.com", "metadata.labels.environment": "production", "metadata.labels.org": "bar",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "production"},
{
"name": "production_01/west", "nameNormalized": "production-01-west", "server": "https://production-01.example.com", "metadata.labels.environment": "production", "metadata.labels.org": "bar",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "production", "project": "prod-project",
},
{"name": "staging-01", "nameNormalized": "staging-01", "server": "https://staging-01.example.com", "metadata.labels.environment": "staging", "metadata.labels.org": "foo",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "staging"},
{
"name": "staging-01", "nameNormalized": "staging-01", "server": "https://staging-01.example.com", "metadata.labels.environment": "staging", "metadata.labels.org": "foo",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "staging", "project": "",
},
},
clientError: false,
expectedError: nil,
@@ -144,8 +154,10 @@ func TestGenerateParams(t *testing.T) {
"foo": "bar",
},
expected: []map[string]interface{}{
{"values.foo": "bar", "name": "production_01/west", "nameNormalized": "production-01-west", "server": "https://production-01.example.com", "metadata.labels.environment": "production", "metadata.labels.org": "bar",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "production"},
{
"values.foo": "bar", "name": "production_01/west", "nameNormalized": "production-01-west", "server": "https://production-01.example.com", "metadata.labels.environment": "production", "metadata.labels.org": "bar",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "production", "project": "prod-project",
},
},
clientError: false,
expectedError: nil,
@@ -168,10 +180,14 @@ func TestGenerateParams(t *testing.T) {
"foo": "bar",
},
expected: []map[string]interface{}{
{"values.foo": "bar", "name": "staging-01", "nameNormalized": "staging-01", "server": "https://staging-01.example.com", "metadata.labels.environment": "staging", "metadata.labels.org": "foo",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "staging"},
{"values.foo": "bar", "name": "production_01/west", "nameNormalized": "production-01-west", "server": "https://production-01.example.com", "metadata.labels.environment": "production", "metadata.labels.org": "bar",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "production"},
{
"values.foo": "bar", "name": "staging-01", "nameNormalized": "staging-01", "server": "https://staging-01.example.com", "metadata.labels.environment": "staging", "metadata.labels.org": "foo",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "staging", "project": "",
},
{
"values.foo": "bar", "name": "production_01/west", "nameNormalized": "production-01-west", "server": "https://production-01.example.com", "metadata.labels.environment": "production", "metadata.labels.org": "bar",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "production", "project": "prod-project",
},
},
clientError: false,
expectedError: nil,
@@ -197,8 +213,10 @@ func TestGenerateParams(t *testing.T) {
"name": "baz",
},
expected: []map[string]interface{}{
{"values.name": "baz", "name": "staging-01", "nameNormalized": "staging-01", "server": "https://staging-01.example.com", "metadata.labels.environment": "staging", "metadata.labels.org": "foo",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "staging"},
{
"values.name": "baz", "name": "staging-01", "nameNormalized": "staging-01", "server": "https://staging-01.example.com", "metadata.labels.environment": "staging", "metadata.labels.org": "foo",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "staging", "project": "",
},
},
clientError: false,
expectedError: nil,
@@ -209,7 +227,75 @@ func TestGenerateParams(t *testing.T) {
values: nil,
expected: nil,
clientError: true,
expectedError: fmt.Errorf("could not list Secrets"),
expectedError: fmt.Errorf("error getting cluster secrets: could not list Secrets"),
},
{
name: "flat mode without selectors",
selector: metav1.LabelSelector{},
values: map[string]string{
"lol1": "lol",
"lol2": "{{values.lol1}}{{values.lol1}}",
"lol3": "{{values.lol2}}{{values.lol2}}{{values.lol2}}",
"foo": "bar",
"bar": "{{ metadata.annotations.foo.argoproj.io }}",
"bat": "{{ metadata.labels.environment }}",
"aaa": "{{ server }}",
"no-op": "{{ this-does-not-exist }}",
},
expected: []map[string]interface{}{
{
"clusters": []map[string]interface{}{
{"values.lol1": "lol", "values.lol2": "{{values.lol1}}{{values.lol1}}", "values.lol3": "{{values.lol2}}{{values.lol2}}{{values.lol2}}", "values.foo": "bar", "values.bar": "{{ metadata.annotations.foo.argoproj.io }}", "values.no-op": "{{ this-does-not-exist }}", "values.bat": "{{ metadata.labels.environment }}", "values.aaa": "https://kubernetes.default.svc", "nameNormalized": "in-cluster", "name": "in-cluster", "server": "https://kubernetes.default.svc", "project": ""},
{
"values.lol1": "lol", "values.lol2": "{{values.lol1}}{{values.lol1}}", "values.lol3": "{{values.lol2}}{{values.lol2}}{{values.lol2}}", "values.foo": "bar", "values.bar": "production", "values.no-op": "{{ this-does-not-exist }}", "values.bat": "production", "values.aaa": "https://production-01.example.com", "name": "production_01/west", "nameNormalized": "production-01-west", "server": "https://production-01.example.com", "metadata.labels.environment": "production", "metadata.labels.org": "bar",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "production", "project": "prod-project",
},
{
"values.lol1": "lol", "values.lol2": "{{values.lol1}}{{values.lol1}}", "values.lol3": "{{values.lol2}}{{values.lol2}}{{values.lol2}}", "values.foo": "bar", "values.bar": "staging", "values.no-op": "{{ this-does-not-exist }}", "values.bat": "staging", "values.aaa": "https://staging-01.example.com", "name": "staging-01", "nameNormalized": "staging-01", "server": "https://staging-01.example.com", "metadata.labels.environment": "staging", "metadata.labels.org": "foo",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "staging", "project": "",
},
},
},
},
isFlatMode: true,
clientError: false,
expectedError: nil,
},
{
name: "production or staging with flat mode",
selector: metav1.LabelSelector{
MatchExpressions: []metav1.LabelSelectorRequirement{
{
Key: "environment",
Operator: "In",
Values: []string{
"production",
"staging",
},
},
},
},
isFlatMode: true,
values: map[string]string{
"foo": "bar",
},
expected: []map[string]interface{}{
{
"clusters": []map[string]interface{}{
{
"values.foo": "bar", "name": "production_01/west", "nameNormalized": "production-01-west", "server": "https://production-01.example.com", "metadata.labels.environment": "production", "metadata.labels.org": "bar",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "production", "project": "prod-project",
},
{
"values.foo": "bar", "name": "staging-01", "nameNormalized": "staging-01", "server": "https://staging-01.example.com", "metadata.labels.environment": "staging", "metadata.labels.org": "foo",
"metadata.labels.argocd.argoproj.io/secret-type": "cluster", "metadata.annotations.foo.argoproj.io": "staging", "project": "",
},
},
},
},
clientError: false,
expectedError: nil,
},
}
@@ -220,9 +306,7 @@ func TestGenerateParams(t *testing.T) {
}
for _, testCase := range testCases {
t.Run(testCase.name, func(t *testing.T) {
appClientset := kubefake.NewSimpleClientset(runtimeClusters...)
fakeClient := fake.NewClientBuilder().WithObjects(clusters...).Build()
@@ -231,7 +315,7 @@ func TestGenerateParams(t *testing.T) {
testCase.clientError,
}
var clusterGenerator = NewClusterGenerator(cl, context.Background(), appClientset, "namespace")
clusterGenerator := NewClusterGenerator(cl, context.Background(), appClientset, "namespace")
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
@@ -244,16 +328,16 @@ func TestGenerateParams(t *testing.T) {
Clusters: &argoprojiov1alpha1.ClusterGenerator{
Selector: testCase.selector,
Values: testCase.values,
FlatList: testCase.isFlatMode,
},
}, &applicationSetInfo)
}, &applicationSetInfo, nil)
if testCase.expectedError != nil {
assert.EqualError(t, err, testCase.expectedError.Error())
require.EqualError(t, err, testCase.expectedError.Error())
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.ElementsMatch(t, testCase.expected, got)
}
})
}
}
@@ -310,10 +394,11 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
},
}
testCases := []struct {
name string
selector metav1.LabelSelector
values map[string]string
expected []map[string]interface{}
name string
selector metav1.LabelSelector
values map[string]string
isFlatMode bool
expected []map[string]interface{}
// clientError is true if a k8s client error should be simulated
clientError bool
expectedError error
@@ -335,6 +420,7 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
"name": "production_01/west",
"nameNormalized": "production-01-west",
"server": "https://production-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"argocd.argoproj.io/secret-type": "cluster",
@@ -360,6 +446,7 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
"name": "staging-01",
"nameNormalized": "staging-01",
"server": "https://staging-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"argocd.argoproj.io/secret-type": "cluster",
@@ -385,6 +472,7 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
"nameNormalized": "in-cluster",
"name": "in-cluster",
"server": "https://kubernetes.default.svc",
"project": "",
"values": map[string]string{
"lol1": "lol",
"lol2": "<no value><no value>",
@@ -413,6 +501,7 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
"name": "production_01/west",
"nameNormalized": "production-01-west",
"server": "https://production-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"argocd.argoproj.io/secret-type": "cluster",
@@ -428,6 +517,7 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
"name": "staging-01",
"nameNormalized": "staging-01",
"server": "https://staging-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"argocd.argoproj.io/secret-type": "cluster",
@@ -458,6 +548,7 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
"name": "production_01/west",
"nameNormalized": "production-01-west",
"server": "https://production-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"argocd.argoproj.io/secret-type": "cluster",
@@ -498,6 +589,7 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
"name": "production_01/west",
"nameNormalized": "production-01-west",
"server": "https://production-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"argocd.argoproj.io/secret-type": "cluster",
@@ -516,6 +608,7 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
"name": "staging-01",
"nameNormalized": "staging-01",
"server": "https://staging-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"argocd.argoproj.io/secret-type": "cluster",
@@ -559,6 +652,7 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
"name": "staging-01",
"nameNormalized": "staging-01",
"server": "https://staging-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"argocd.argoproj.io/secret-type": "cluster",
@@ -583,7 +677,163 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
values: nil,
expected: nil,
clientError: true,
expectedError: fmt.Errorf("could not list Secrets"),
expectedError: fmt.Errorf("error getting cluster secrets: could not list Secrets"),
},
{
name: "Clusters with flat list mode and no selector",
selector: metav1.LabelSelector{},
isFlatMode: true,
values: map[string]string{
"lol1": "lol",
"lol2": "{{ .values.lol1 }}{{ .values.lol1 }}",
"lol3": "{{ .values.lol2 }}{{ .values.lol2 }}{{ .values.lol2 }}",
"foo": "bar",
"bar": "{{ if not (empty .metadata) }}{{index .metadata.annotations \"foo.argoproj.io\" }}{{ end }}",
"bat": "{{ if not (empty .metadata) }}{{.metadata.labels.environment}}{{ end }}",
"aaa": "{{ .server }}",
"no-op": "{{ .thisDoesNotExist }}",
},
expected: []map[string]interface{}{
{
"clusters": []map[string]interface{}{
{
"nameNormalized": "in-cluster",
"name": "in-cluster",
"server": "https://kubernetes.default.svc",
"project": "",
"values": map[string]string{
"lol1": "lol",
"lol2": "<no value><no value>",
"lol3": "<no value><no value><no value>",
"foo": "bar",
"bar": "",
"bat": "",
"aaa": "https://kubernetes.default.svc",
"no-op": "<no value>",
},
},
{
"name": "production_01/west",
"nameNormalized": "production-01-west",
"server": "https://production-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"argocd.argoproj.io/secret-type": "cluster",
"environment": "production",
"org": "bar",
},
"annotations": map[string]string{
"foo.argoproj.io": "production",
},
},
"values": map[string]string{
"lol1": "lol",
"lol2": "<no value><no value>",
"lol3": "<no value><no value><no value>",
"foo": "bar",
"bar": "production",
"bat": "production",
"aaa": "https://production-01.example.com",
"no-op": "<no value>",
},
},
{
"name": "staging-01",
"nameNormalized": "staging-01",
"server": "https://staging-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"argocd.argoproj.io/secret-type": "cluster",
"environment": "staging",
"org": "foo",
},
"annotations": map[string]string{
"foo.argoproj.io": "staging",
},
},
"values": map[string]string{
"lol1": "lol",
"lol2": "<no value><no value>",
"lol3": "<no value><no value><no value>",
"foo": "bar",
"bar": "staging",
"bat": "staging",
"aaa": "https://staging-01.example.com",
"no-op": "<no value>",
},
},
},
},
},
clientError: false,
expectedError: nil,
},
{
name: "production or staging with flat mode",
selector: metav1.LabelSelector{
MatchExpressions: []metav1.LabelSelectorRequirement{
{
Key: "environment",
Operator: "In",
Values: []string{
"production",
"staging",
},
},
},
},
isFlatMode: true,
values: map[string]string{
"foo": "bar",
},
expected: []map[string]interface{}{
{
"clusters": []map[string]interface{}{
{
"name": "production_01/west",
"nameNormalized": "production-01-west",
"server": "https://production-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"argocd.argoproj.io/secret-type": "cluster",
"environment": "production",
"org": "bar",
},
"annotations": map[string]string{
"foo.argoproj.io": "production",
},
},
"values": map[string]string{
"foo": "bar",
},
},
{
"name": "staging-01",
"nameNormalized": "staging-01",
"server": "https://staging-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"argocd.argoproj.io/secret-type": "cluster",
"environment": "staging",
"org": "foo",
},
"annotations": map[string]string{
"foo.argoproj.io": "staging",
},
},
"values": map[string]string{
"foo": "bar",
},
},
},
},
},
clientError: false,
expectedError: nil,
},
}
@@ -594,9 +844,7 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
}
for _, testCase := range testCases {
t.Run(testCase.name, func(t *testing.T) {
appClientset := kubefake.NewSimpleClientset(runtimeClusters...)
fakeClient := fake.NewClientBuilder().WithObjects(clusters...).Build()
@@ -605,7 +853,7 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
testCase.clientError,
}
var clusterGenerator = NewClusterGenerator(cl, context.Background(), appClientset, "namespace")
clusterGenerator := NewClusterGenerator(cl, context.Background(), appClientset, "namespace")
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
@@ -620,16 +868,16 @@ func TestGenerateParamsGoTemplate(t *testing.T) {
Clusters: &argoprojiov1alpha1.ClusterGenerator{
Selector: testCase.selector,
Values: testCase.values,
FlatList: testCase.isFlatMode,
},
}, &applicationSetInfo)
}, &applicationSetInfo, nil)
if testCase.expectedError != nil {
assert.EqualError(t, err, testCase.expectedError.Error())
require.EqualError(t, err, testCase.expectedError.Error())
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.ElementsMatch(t, testCase.expected, got)
}
})
}
}

View File

@@ -7,6 +7,7 @@ import (
"time"
log "github.com/sirupsen/logrus"
"sigs.k8s.io/controller-runtime/pkg/client"
"github.com/argoproj/argo-cd/v2/util/settings"
@@ -32,7 +33,6 @@ type DuckTypeGenerator struct {
}
func NewDuckTypeGenerator(ctx context.Context, dynClient dynamic.Interface, clientset kubernetes.Interface, namespace string) Generator {
settingsManager := settings.NewSettingsManager(ctx, clientset, namespace)
g := &DuckTypeGenerator{
@@ -46,22 +46,20 @@ func NewDuckTypeGenerator(ctx context.Context, dynClient dynamic.Interface, clie
}
func (g *DuckTypeGenerator) GetRequeueAfter(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator) time.Duration {
// Return a requeue default of 3 minutes, if no override is specified.
if appSetGenerator.ClusterDecisionResource.RequeueAfterSeconds != nil {
return time.Duration(*appSetGenerator.ClusterDecisionResource.RequeueAfterSeconds) * time.Second
}
return DefaultRequeueAfterSeconds
return getDefaultRequeueAfter()
}
func (g *DuckTypeGenerator) GetTemplate(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator) *argoprojiov1alpha1.ApplicationSetTemplate {
return &appSetGenerator.ClusterDecisionResource.Template
}
func (g *DuckTypeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, appSet *argoprojiov1alpha1.ApplicationSet) ([]map[string]interface{}, error) {
func (g *DuckTypeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, appSet *argoprojiov1alpha1.ApplicationSet, _ client.Client) ([]map[string]interface{}, error) {
if appSetGenerator == nil {
return nil, EmptyAppSetGeneratorError
}
@@ -83,7 +81,6 @@ func (g *DuckTypeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.A
// Read the configMapRef
cm, err := g.clientset.CoreV1().ConfigMaps(g.namespace).Get(g.ctx, appSetGenerator.ClusterDecisionResource.ConfigMapRef, metav1.GetOptions{})
if err != nil {
return nil, fmt.Errorf("error reading configMapRef: %w", err)
}
@@ -104,7 +101,6 @@ func (g *DuckTypeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.A
if (resourceName == "" && labelSelector.MatchLabels == nil && labelSelector.MatchExpressions == nil) ||
(resourceName != "" && (labelSelector.MatchExpressions != nil || labelSelector.MatchLabels != nil)) {
log.Warningf("You must choose either resourceName=%v, labelSelector.matchLabels=%v or labelSelect.matchExpressions=%v", resourceName, labelSelector.MatchLabels, labelSelector.MatchExpressions)
return nil, fmt.Errorf("There is a problem with the definition of the ClusterDecisionResource generator")
}
@@ -122,15 +118,14 @@ func (g *DuckTypeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.A
log.WithField("listOptions.LabelSelector", listOptions.LabelSelector).Info("selection type")
} else {
listOptions.FieldSelector = fields.OneTermEqualSelector("metadata.name", resourceName).String()
//metav1.Convert_fields_Selector_To_string(fields.).Sprintf("metadata.name=%s", resourceName)
// metav1.Convert_fields_Selector_To_string(fields.).Sprintf("metadata.name=%s", resourceName)
log.WithField("listOptions.FieldSelector", listOptions.FieldSelector).Info("selection type")
}
duckResources, err := g.dynClient.Resource(duckGVR).Namespace(g.namespace).List(g.ctx, listOptions)
if err != nil {
log.WithField("GVK", duckGVR).Warning("resources were not found")
return nil, err
return nil, fmt.Errorf("failed to get dynamic resources: %w", err)
}
if len(duckResources.Items) == 0 {
@@ -149,7 +144,6 @@ func (g *DuckTypeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.A
if matchKey == "" {
log.WithField("matchKey", matchKey).Warning("matchKey not found in " + cm.Name)
return nil, nil
}
res := []map[string]interface{}{}
@@ -167,7 +161,6 @@ func (g *DuckTypeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.A
log.WithField("duckResourceStatus", duckResource.Object["status"]).Debug("found resource")
clusterDecisions = append(clusterDecisions, duckResource.Object["status"].(map[string]interface{})[statusListKey].([]interface{})...)
}
log.Infof("Number of decisions found: %v", len(clusterDecisions))
@@ -176,7 +169,6 @@ func (g *DuckTypeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.A
if len(clusterDecisions) > 0 {
for _, cluster := range clusterDecisions {
// generated instance of cluster params
params := map[string]interface{}{}
@@ -194,7 +186,6 @@ func (g *DuckTypeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.A
for _, argoCluster := range argoClusters {
if argoCluster.Name == strMatchValue {
log.WithField(matchKey, argoCluster.Name).Info("matched cluster in ArgoCD")
params["name"] = argoCluster.Name
params["server"] = argoCluster.Server
@@ -202,7 +193,6 @@ func (g *DuckTypeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.A
found = true
break // Stop looking
}
}
if !found {
@@ -228,7 +218,7 @@ func (g *DuckTypeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.A
res = append(res, params)
}
} else {
log.Warningf("clusterDecisionResource status." + statusListKey + " missing")
log.Warningf("clusterDecisionResource status.%s missing", statusListKey)
return nil, nil
}

View File

@@ -6,6 +6,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
@@ -18,9 +19,11 @@ import (
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
const resourceApiVersion = "mallard.io/v1"
const resourceKind = "ducks"
const resourceName = "quak"
const (
resourceApiVersion = "mallard.io/v1"
resourceKind = "ducks"
resourceName = "quak"
)
func TestGenerateParamsForDuckType(t *testing.T) {
clusters := []client.Object{
@@ -279,9 +282,7 @@ func TestGenerateParamsForDuckType(t *testing.T) {
}
for _, testCase := range testCases {
t.Run(testCase.name, func(t *testing.T) {
appClientset := kubefake.NewSimpleClientset(append(runtimeClusters, configMap)...)
gvrToListKind := map[schema.GroupVersionResource]string{{
@@ -292,7 +293,7 @@ func TestGenerateParamsForDuckType(t *testing.T) {
fakeDynClient := dynfake.NewSimpleDynamicClientWithCustomListKinds(runtime.NewScheme(), gvrToListKind, testCase.resource)
var duckTypeGenerator = NewDuckTypeGenerator(context.Background(), fakeDynClient, appClientset, "namespace")
duckTypeGenerator := NewDuckTypeGenerator(context.Background(), fakeDynClient, appClientset, "namespace")
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
@@ -308,12 +309,12 @@ func TestGenerateParamsForDuckType(t *testing.T) {
LabelSelector: testCase.labelSelector,
Values: testCase.values,
},
}, &applicationSetInfo)
}, &applicationSetInfo, nil)
if testCase.expectedError != nil {
assert.EqualError(t, err, testCase.expectedError.Error())
require.EqualError(t, err, testCase.expectedError.Error())
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.ElementsMatch(t, testCase.expected, got)
}
})
@@ -577,9 +578,7 @@ func TestGenerateParamsForDuckTypeGoTemplate(t *testing.T) {
}
for _, testCase := range testCases {
t.Run(testCase.name, func(t *testing.T) {
appClientset := kubefake.NewSimpleClientset(append(runtimeClusters, configMap)...)
gvrToListKind := map[schema.GroupVersionResource]string{{
@@ -590,7 +589,7 @@ func TestGenerateParamsForDuckTypeGoTemplate(t *testing.T) {
fakeDynClient := dynfake.NewSimpleDynamicClientWithCustomListKinds(runtime.NewScheme(), gvrToListKind, testCase.resource)
var duckTypeGenerator = NewDuckTypeGenerator(context.Background(), fakeDynClient, appClientset, "namespace")
duckTypeGenerator := NewDuckTypeGenerator(context.Background(), fakeDynClient, appClientset, "namespace")
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
@@ -608,12 +607,12 @@ func TestGenerateParamsForDuckTypeGoTemplate(t *testing.T) {
LabelSelector: testCase.labelSelector,
Values: testCase.values,
},
}, &applicationSetInfo)
}, &applicationSetInfo, nil)
if testCase.expectedError != nil {
assert.EqualError(t, err, testCase.expectedError.Error())
require.EqualError(t, err, testCase.expectedError.Error())
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.ElementsMatch(t, testCase.expected, got)
}
})

View File

@@ -5,6 +5,7 @@ import (
"reflect"
"github.com/jeremywohl/flatten"
"sigs.k8s.io/controller-runtime/pkg/client"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
@@ -26,7 +27,7 @@ type TransformResult struct {
}
// Transform a spec generator to list of paramSets and a template
func Transform(requestedGenerator argoprojiov1alpha1.ApplicationSetGenerator, allGenerators map[string]Generator, baseTemplate argoprojiov1alpha1.ApplicationSetTemplate, appSet *argoprojiov1alpha1.ApplicationSet, genParams map[string]interface{}) ([]TransformResult, error) {
func Transform(requestedGenerator argoprojiov1alpha1.ApplicationSetGenerator, allGenerators map[string]Generator, baseTemplate argoprojiov1alpha1.ApplicationSetTemplate, appSet *argoprojiov1alpha1.ApplicationSet, genParams map[string]interface{}, client client.Client) ([]TransformResult, error) {
// This is a custom version of the `LabelSelectorAsSelector` that is in k8s.io/apimachinery. This has been copied
// verbatim from that package, with the difference that we do not have any restrictions on label values. This is done
// so that, among other things, we can match on cluster urls.
@@ -64,7 +65,7 @@ func Transform(requestedGenerator argoprojiov1alpha1.ApplicationSetGenerator, al
continue
}
}
params, err = g.GenerateParams(interpolatedGenerator, appSet)
params, err = g.GenerateParams(interpolatedGenerator, appSet, client)
if err != nil {
log.WithError(err).WithField("generator", g).
Error("error generating params")

View File

@@ -65,8 +65,8 @@ func TestMatchValues(t *testing.T) {
for _, testCase := range testCases {
t.Run(testCase.name, func(t *testing.T) {
var listGenerator = NewListGenerator()
var data = map[string]Generator{
listGenerator := NewListGenerator()
data := map[string]Generator{
"List": listGenerator,
}
@@ -84,12 +84,13 @@ func TestMatchValues(t *testing.T) {
List: &argov1alpha1.ListGenerator{
Elements: testCase.elements,
Template: emptyTemplate(),
}},
},
},
data,
emptyTemplate(),
&applicationSetInfo, nil)
&applicationSetInfo, nil, nil)
assert.NoError(t, err)
require.NoError(t, err)
assert.ElementsMatch(t, testCase.expected, results[0].Params)
})
}
@@ -148,8 +149,8 @@ func TestMatchValuesGoTemplate(t *testing.T) {
for _, testCase := range testCases {
t.Run(testCase.name, func(t *testing.T) {
var listGenerator = NewListGenerator()
var data = map[string]Generator{
listGenerator := NewListGenerator()
data := map[string]Generator{
"List": listGenerator,
}
@@ -167,12 +168,13 @@ func TestMatchValuesGoTemplate(t *testing.T) {
List: &argov1alpha1.ListGenerator{
Elements: testCase.elements,
Template: emptyTemplate(),
}},
},
},
data,
emptyTemplate(),
&applicationSetInfo, nil)
&applicationSetInfo, nil, nil)
assert.NoError(t, err)
require.NoError(t, err)
assert.ElementsMatch(t, testCase.expected, results[0].Params)
})
}
@@ -197,6 +199,7 @@ func TestTransForm(t *testing.T) {
"name": "production_01/west",
"nameNormalized": "production-01-west",
"server": "https://production-01.example.com",
"project": "",
}},
},
{
@@ -212,6 +215,7 @@ func TestTransForm(t *testing.T) {
"name": "some-really-long-server-url",
"nameNormalized": "some-really-long-server-url",
"server": "https://some-really-long-url-that-will-exceed-63-characters.com",
"project": "",
}},
},
}
@@ -236,12 +240,13 @@ func TestTransForm(t *testing.T) {
Selector: metav1.LabelSelector{},
Template: argov1alpha1.ApplicationSetTemplate{},
Values: nil,
}},
},
},
testGenerators,
emptyTemplate(),
&applicationSetInfo, nil)
&applicationSetInfo, nil, nil)
assert.NoError(t, err)
require.NoError(t, err)
assert.ElementsMatch(t, testCase.expected, results[0].Params)
})
}
@@ -343,12 +348,11 @@ func getMockClusterGenerator() Generator {
func getMockGitGenerator() Generator {
argoCDServiceMock := mocks.Repos{}
argoCDServiceMock.On("GetDirectories", mock.Anything, mock.Anything, mock.Anything).Return([]string{"app1", "app2", "app_3", "p1/app4"}, nil)
var gitGenerator = NewGitGenerator(&argoCDServiceMock)
gitGenerator := NewGitGenerator(&argoCDServiceMock, "namespace")
return gitGenerator
}
func TestGetRelevantGenerators(t *testing.T) {
testGenerators := map[string]Generator{
"Clusters": getMockClusterGenerator(),
"Git": getMockGitGenerator(),
@@ -361,7 +365,8 @@ func TestGetRelevantGenerators(t *testing.T) {
requestedGenerator := &argov1alpha1.ApplicationSetGenerator{
List: &argov1alpha1.ListGenerator{
Elements: []apiextensionsv1.JSON{{Raw: []byte(`{"cluster": "cluster","url": "url","values":{"foo":"bar"}}`)}},
}}
},
}
relevantGenerators := GetRelevantGenerators(requestedGenerator, testGenerators)
assert.Len(t, relevantGenerators, 1)
@@ -404,7 +409,8 @@ func TestInterpolateGenerator(t *testing.T) {
"path-basename": "{{path.basename}}",
"path-zero": "{{path[0]}}",
"path-full": "{{path}}",
}},
},
},
},
}
gitGeneratorParams := map[string]interface{}{
@@ -458,7 +464,8 @@ func TestInterpolateGenerator_go(t *testing.T) {
"path-zero": "{{index .path.segments 0}}",
"path-full": "{{.path.path}}",
"kubernetes.io/environment": `{{default "foo" .my_label}}`,
}},
},
},
},
}
gitGeneratorParams := map[string]interface{}{
@@ -550,7 +557,7 @@ func TestInterpolateGeneratorError(t *testing.T) {
t.Run(tt.name, func(t *testing.T) {
got, err := InterpolateGenerator(tt.args.requestedGenerator, tt.args.params, tt.args.useGoTemplate, tt.args.goTemplateOptions)
if tt.expectedErrStr != "" {
assert.EqualError(t, err, tt.expectedErrStr)
require.EqualError(t, err, tt.expectedErrStr)
} else {
require.NoError(t, err)
}

View File

@@ -11,23 +11,29 @@ import (
"github.com/jeremywohl/flatten"
log "github.com/sirupsen/logrus"
"k8s.io/apimachinery/pkg/types"
"sigs.k8s.io/controller-runtime/pkg/client"
"sigs.k8s.io/yaml"
"github.com/argoproj/argo-cd/v2/applicationset/services"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
"github.com/argoproj/argo-cd/v2/util/gpg"
)
var _ Generator = (*GitGenerator)(nil)
type GitGenerator struct {
repos services.Repos
repos services.Repos
namespace string
}
func NewGitGenerator(repos services.Repos) Generator {
func NewGitGenerator(repos services.Repos, namespace string) Generator {
g := &GitGenerator{
repos: repos,
repos: repos,
namespace: namespace,
}
return g
}
@@ -36,18 +42,16 @@ func (g *GitGenerator) GetTemplate(appSetGenerator *argoprojiov1alpha1.Applicati
}
func (g *GitGenerator) GetRequeueAfter(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator) time.Duration {
// Return a requeue default of 3 minutes, if no default is specified.
if appSetGenerator.Git.RequeueAfterSeconds != nil {
return time.Duration(*appSetGenerator.Git.RequeueAfterSeconds) * time.Second
}
return DefaultRequeueAfterSeconds
return getDefaultRequeueAfter()
}
func (g *GitGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, appSet *argoprojiov1alpha1.ApplicationSet) ([]map[string]interface{}, error) {
func (g *GitGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, appSet *argoprojiov1alpha1.ApplicationSet, client client.Client) ([]map[string]interface{}, error) {
if appSetGenerator == nil {
return nil, EmptyAppSetGeneratorError
}
@@ -58,12 +62,31 @@ func (g *GitGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.Applic
noRevisionCache := appSet.RefreshRequired()
verifyCommit := false
// When the project field is templated, the contents of the git repo are required to run the git generator and get the templated value,
// but git generator cannot be called without verifying the commit signature.
// In this case, we skip the signature verification.
if !strings.Contains(appSet.Spec.Template.Spec.Project, "{{") {
project := appSet.Spec.Template.Spec.Project
appProject := &argoprojiov1alpha1.AppProject{}
namespace := g.namespace
if namespace == "" {
namespace = appSet.Namespace
}
if err := client.Get(context.TODO(), types.NamespacedName{Name: project, Namespace: namespace}, appProject); err != nil {
return nil, fmt.Errorf("error getting project %s: %w", project, err)
}
// we need to verify the signature on the Git revision if GPG is enabled
verifyCommit = len(appProject.Spec.SignatureKeys) > 0 && gpg.IsGPGEnabled()
}
var err error
var res []map[string]interface{}
if len(appSetGenerator.Git.Directories) != 0 {
res, err = g.generateParamsForGitDirectories(appSetGenerator, noRevisionCache, appSet.Spec.GoTemplate, appSet.Spec.GoTemplateOptions)
res, err = g.generateParamsForGitDirectories(appSetGenerator, noRevisionCache, verifyCommit, appSet.Spec.GoTemplate, appSet.Spec.GoTemplateOptions)
} else if len(appSetGenerator.Git.Files) != 0 {
res, err = g.generateParamsForGitFiles(appSetGenerator, noRevisionCache, appSet.Spec.GoTemplate, appSet.Spec.GoTemplateOptions)
res, err = g.generateParamsForGitFiles(appSetGenerator, noRevisionCache, verifyCommit, appSet.Spec.GoTemplate, appSet.Spec.GoTemplateOptions)
} else {
return nil, EmptyAppSetGeneratorError
}
@@ -74,10 +97,9 @@ func (g *GitGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.Applic
return res, nil
}
func (g *GitGenerator) generateParamsForGitDirectories(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, noRevisionCache bool, useGoTemplate bool, goTemplateOptions []string) ([]map[string]interface{}, error) {
func (g *GitGenerator) generateParamsForGitDirectories(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, noRevisionCache, verifyCommit bool, useGoTemplate bool, goTemplateOptions []string) ([]map[string]interface{}, error) {
// Directories, not files
allPaths, err := g.repos.GetDirectories(context.TODO(), appSetGenerator.Git.RepoURL, appSetGenerator.Git.Revision, noRevisionCache)
allPaths, err := g.repos.GetDirectories(context.TODO(), appSetGenerator.Git.RepoURL, appSetGenerator.Git.Revision, noRevisionCache, verifyCommit)
if err != nil {
return nil, fmt.Errorf("error getting directories from repo: %w", err)
}
@@ -100,12 +122,11 @@ func (g *GitGenerator) generateParamsForGitDirectories(appSetGenerator *argoproj
return res, nil
}
func (g *GitGenerator) generateParamsForGitFiles(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, noRevisionCache bool, useGoTemplate bool, goTemplateOptions []string) ([]map[string]interface{}, error) {
func (g *GitGenerator) generateParamsForGitFiles(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, noRevisionCache, verifyCommit bool, useGoTemplate bool, goTemplateOptions []string) ([]map[string]interface{}, error) {
// Get all files that match the requested path string, removing duplicates
allFiles := make(map[string][]byte)
for _, requestedPath := range appSetGenerator.Git.Files {
files, err := g.repos.GetFiles(context.TODO(), appSetGenerator.Git.RepoURL, appSetGenerator.Git.Revision, requestedPath.Path, noRevisionCache)
files, err := g.repos.GetFiles(context.TODO(), appSetGenerator.Git.RepoURL, appSetGenerator.Git.Revision, requestedPath.Path, noRevisionCache, verifyCommit)
if err != nil {
return nil, err
}
@@ -125,11 +146,10 @@ func (g *GitGenerator) generateParamsForGitFiles(appSetGenerator *argoprojiov1al
// Generate params from each path, and return
res := []map[string]interface{}{}
for _, path := range allPaths {
// A JSON / YAML file path can contain multiple sets of parameters (ie it is an array)
paramsArray, err := g.generateParamsFromGitFile(path, allFiles[path], appSetGenerator.Git.Values, useGoTemplate, goTemplateOptions, appSetGenerator.Git.PathParamPrefix)
if err != nil {
return nil, fmt.Errorf("unable to process file '%s': %v", path, err)
return nil, fmt.Errorf("unable to process file '%s': %w", path, err)
}
res = append(res, paramsArray...)
@@ -147,7 +167,7 @@ func (g *GitGenerator) generateParamsFromGitFile(filePath string, fileContent []
singleObj := make(map[string]interface{})
err = yaml.Unmarshal(fileContent, &singleObj)
if err != nil {
return nil, fmt.Errorf("unable to parse file: %v", err)
return nil, fmt.Errorf("unable to parse file: %w", err)
}
objectsFound = append(objectsFound, singleObj)
} else if len(objectsFound) == 0 {
@@ -158,7 +178,6 @@ func (g *GitGenerator) generateParamsFromGitFile(filePath string, fileContent []
res := []map[string]interface{}{}
for _, objectFound := range objectsFound {
params := map[string]interface{}{}
if useGoTemplate {
@@ -214,13 +233,13 @@ func (g *GitGenerator) generateParamsFromGitFile(filePath string, fileContent []
return res, nil
}
func (g *GitGenerator) filterApps(Directories []argoprojiov1alpha1.GitDirectoryGeneratorItem, allPaths []string) []string {
func (g *GitGenerator) filterApps(directories []argoprojiov1alpha1.GitDirectoryGeneratorItem, allPaths []string) []string {
res := []string{}
for _, appPath := range allPaths {
appInclude := false
appExclude := false
// Iterating over each appPath and check whether directories object has requestedPath that matches the appPath
for _, requestedPath := range Directories {
for _, requestedPath := range directories {
match, err := path.Match(requestedPath.Path, appPath)
if err != nil {
log.WithError(err).WithField("requestedPath", requestedPath).
@@ -245,7 +264,6 @@ func (g *GitGenerator) filterApps(Directories []argoprojiov1alpha1.GitDirectoryG
func (g *GitGenerator) generateParamsFromApps(requestedApps []string, appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, useGoTemplate bool, goTemplateOptions []string) ([]map[string]interface{}, error) {
res := make([]map[string]interface{}, len(requestedApps))
for i, a := range requestedApps {
params := make(map[string]interface{}, 5)
if useGoTemplate {

View File

@@ -4,11 +4,16 @@ import (
"fmt"
"testing"
"github.com/argoproj/argo-cd/v2/applicationset/services/mocks"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/mock"
"github.com/stretchr/testify/require"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"sigs.k8s.io/controller-runtime/pkg/client/fake"
"github.com/argoproj/argo-cd/v2/applicationset/services/mocks"
"github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
func Test_generateParamsFromGitFile(t *testing.T) {
@@ -174,7 +179,6 @@ foo:
}
func TestGitGenerateParamsFromDirectories(t *testing.T) {
cases := []struct {
name string
directories []argoprojiov1alpha1.GitDirectoryGeneratorItem
@@ -317,9 +321,9 @@ func TestGitGenerateParamsFromDirectories(t *testing.T) {
argoCDServiceMock := mocks.Repos{}
argoCDServiceMock.On("GetDirectories", mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(testCaseCopy.repoApps, testCaseCopy.repoError)
argoCDServiceMock.On("GetDirectories", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(testCaseCopy.repoApps, testCaseCopy.repoError)
var gitGenerator = NewGitGenerator(&argoCDServiceMock)
gitGenerator := NewGitGenerator(&argoCDServiceMock, "")
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
Name: "set",
@@ -337,12 +341,19 @@ func TestGitGenerateParamsFromDirectories(t *testing.T) {
},
}
got, err := gitGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo)
scheme := runtime.NewScheme()
err := v1alpha1.AddToScheme(scheme)
require.NoError(t, err)
appProject := argoprojiov1alpha1.AppProject{}
client := fake.NewClientBuilder().WithScheme(scheme).WithObjects(&appProject).Build()
got, err := gitGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo, client)
if testCaseCopy.expectedError != nil {
assert.EqualError(t, err, testCaseCopy.expectedError.Error())
require.EqualError(t, err, testCaseCopy.expectedError.Error())
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, testCaseCopy.expected, got)
}
@@ -352,7 +363,6 @@ func TestGitGenerateParamsFromDirectories(t *testing.T) {
}
func TestGitGenerateParamsFromDirectoriesGoTemplate(t *testing.T) {
cases := []struct {
name string
directories []argoprojiov1alpha1.GitDirectoryGeneratorItem
@@ -552,7 +562,6 @@ func TestGitGenerateParamsFromDirectoriesGoTemplate(t *testing.T) {
},
repoError: nil,
expected: []map[string]interface{}{
{
"path": map[string]interface{}{
"path": "app1",
@@ -613,9 +622,9 @@ func TestGitGenerateParamsFromDirectoriesGoTemplate(t *testing.T) {
argoCDServiceMock := mocks.Repos{}
argoCDServiceMock.On("GetDirectories", mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(testCaseCopy.repoApps, testCaseCopy.repoError)
argoCDServiceMock.On("GetDirectories", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(testCaseCopy.repoApps, testCaseCopy.repoError)
var gitGenerator = NewGitGenerator(&argoCDServiceMock)
gitGenerator := NewGitGenerator(&argoCDServiceMock, "")
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
Name: "set",
@@ -633,23 +642,28 @@ func TestGitGenerateParamsFromDirectoriesGoTemplate(t *testing.T) {
},
}
got, err := gitGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo)
scheme := runtime.NewScheme()
err := v1alpha1.AddToScheme(scheme)
require.NoError(t, err)
appProject := argoprojiov1alpha1.AppProject{}
client := fake.NewClientBuilder().WithScheme(scheme).WithObjects(&appProject).Build()
got, err := gitGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo, client)
if testCaseCopy.expectedError != nil {
assert.EqualError(t, err, testCaseCopy.expectedError.Error())
require.EqualError(t, err, testCaseCopy.expectedError.Error())
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, testCaseCopy.expected, got)
}
argoCDServiceMock.AssertExpectations(t)
})
}
}
func TestGitGenerateParamsFromFiles(t *testing.T) {
cases := []struct {
name string
// files is the list of paths/globs to match
@@ -972,10 +986,10 @@ cluster:
t.Parallel()
argoCDServiceMock := mocks.Repos{}
argoCDServiceMock.On("GetFiles", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).
argoCDServiceMock.On("GetFiles", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).
Return(testCaseCopy.repoFileContents, testCaseCopy.repoPathsError)
var gitGenerator = NewGitGenerator(&argoCDServiceMock)
gitGenerator := NewGitGenerator(&argoCDServiceMock, "")
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
Name: "set",
@@ -992,13 +1006,20 @@ cluster:
},
}
got, err := gitGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo)
scheme := runtime.NewScheme()
err := v1alpha1.AddToScheme(scheme)
require.NoError(t, err)
appProject := argoprojiov1alpha1.AppProject{}
client := fake.NewClientBuilder().WithScheme(scheme).WithObjects(&appProject).Build()
got, err := gitGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo, client)
fmt.Println(got, err)
if testCaseCopy.expectedError != nil {
assert.EqualError(t, err, testCaseCopy.expectedError.Error())
require.EqualError(t, err, testCaseCopy.expectedError.Error())
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.ElementsMatch(t, testCaseCopy.expected, got)
}
@@ -1008,7 +1029,6 @@ cluster:
}
func TestGitGenerateParamsFromFilesGoTemplate(t *testing.T) {
cases := []struct {
name string
// files is the list of paths/globs to match
@@ -1322,10 +1342,10 @@ cluster:
t.Parallel()
argoCDServiceMock := mocks.Repos{}
argoCDServiceMock.On("GetFiles", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).
argoCDServiceMock.On("GetFiles", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).
Return(testCaseCopy.repoFileContents, testCaseCopy.repoPathsError)
var gitGenerator = NewGitGenerator(&argoCDServiceMock)
gitGenerator := NewGitGenerator(&argoCDServiceMock, "")
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
Name: "set",
@@ -1342,13 +1362,20 @@ cluster:
},
}
got, err := gitGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo)
scheme := runtime.NewScheme()
err := v1alpha1.AddToScheme(scheme)
require.NoError(t, err)
appProject := argoprojiov1alpha1.AppProject{}
client := fake.NewClientBuilder().WithScheme(scheme).WithObjects(&appProject).Build()
got, err := gitGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo, client)
fmt.Println(got, err)
if testCaseCopy.expectedError != nil {
assert.EqualError(t, err, testCaseCopy.expectedError.Error())
require.EqualError(t, err, testCaseCopy.expectedError.Error())
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.ElementsMatch(t, testCaseCopy.expected, got)
}
@@ -1356,3 +1383,114 @@ cluster:
})
}
}
func TestGitGenerator_GenerateParams(t *testing.T) {
cases := []struct {
name string
directories []argoprojiov1alpha1.GitDirectoryGeneratorItem
pathParamPrefix string
repoApps []string
repoPathsError error
repoFileContents map[string][]byte
values map[string]string
expected []map[string]interface{}
expectedError error
appset argoprojiov1alpha1.ApplicationSet
callGetDirectories bool
}{
{
name: "Signature Verification - ignores templated project field",
repoApps: []string{
"app1",
},
repoPathsError: nil,
appset: argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
Name: "set",
Namespace: "namespace",
},
Spec: argoprojiov1alpha1.ApplicationSetSpec{
Generators: []argoprojiov1alpha1.ApplicationSetGenerator{{
Git: &argoprojiov1alpha1.GitGenerator{
RepoURL: "RepoURL",
Revision: "Revision",
Directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}},
PathParamPrefix: "",
Values: map[string]string{
"foo": "bar",
},
},
}},
Template: argoprojiov1alpha1.ApplicationSetTemplate{
Spec: argoprojiov1alpha1.ApplicationSpec{
Project: "{{.project}}",
},
},
},
},
callGetDirectories: true,
expected: []map[string]interface{}{{"path": "app1", "path.basename": "app1", "path.basenameNormalized": "app1", "path[0]": "app1", "values.foo": "bar"}},
expectedError: nil,
},
{
name: "Signature Verification - Checks for non-templated project field",
repoApps: []string{
"app1",
},
repoPathsError: nil,
appset: argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
Name: "set",
Namespace: "namespace",
},
Spec: argoprojiov1alpha1.ApplicationSetSpec{
Generators: []argoprojiov1alpha1.ApplicationSetGenerator{{
Git: &argoprojiov1alpha1.GitGenerator{
RepoURL: "RepoURL",
Revision: "Revision",
Directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}},
PathParamPrefix: "",
Values: map[string]string{
"foo": "bar",
},
},
}},
Template: argoprojiov1alpha1.ApplicationSetTemplate{
Spec: argoprojiov1alpha1.ApplicationSpec{
Project: "project",
},
},
},
},
callGetDirectories: false,
expected: []map[string]interface{}{{"path": "app1", "path.basename": "app1", "path.basenameNormalized": "app1", "path[0]": "app1", "values.foo": "bar"}},
expectedError: fmt.Errorf("error getting project project: appprojects.argoproj.io \"project\" not found"),
},
}
for _, testCase := range cases {
argoCDServiceMock := mocks.Repos{}
if testCase.callGetDirectories {
argoCDServiceMock.On("GetDirectories", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(testCase.repoApps, testCase.repoPathsError)
}
gitGenerator := NewGitGenerator(&argoCDServiceMock, "namespace")
scheme := runtime.NewScheme()
err := v1alpha1.AddToScheme(scheme)
require.NoError(t, err)
appProject := argoprojiov1alpha1.AppProject{}
client := fake.NewClientBuilder().WithScheme(scheme).WithObjects(&appProject).Build()
got, err := gitGenerator.GenerateParams(&testCase.appset.Spec.Generators[0], &testCase.appset, client)
if testCase.expectedError != nil {
require.EqualError(t, err, testCase.expectedError.Error())
} else {
require.NoError(t, err)
assert.Equal(t, testCase.expected, got)
}
argoCDServiceMock.AssertExpectations(t)
}
}

View File

@@ -4,7 +4,10 @@ import (
"fmt"
"time"
"sigs.k8s.io/controller-runtime/pkg/client"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
"github.com/argoproj/argo-cd/v2/util/env"
)
// Generator defines the interface implemented by all ApplicationSet generators.
@@ -12,7 +15,7 @@ type Generator interface {
// GenerateParams interprets the ApplicationSet and generates all relevant parameters for the application template.
// The expected / desired list of parameters is returned, it then will be render and reconciled
// against the current state of the Applications in the cluster.
GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, applicationSetInfo *argoprojiov1alpha1.ApplicationSet) ([]map[string]interface{}, error)
GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, applicationSetInfo *argoprojiov1alpha1.ApplicationSet, client client.Client) ([]map[string]interface{}, error)
// GetRequeueAfter is the generator can controller the next reconciled loop
// In case there is more then one generator the time will be the minimum of the times.
@@ -23,10 +26,16 @@ type Generator interface {
GetTemplate(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator) *argoprojiov1alpha1.ApplicationSetTemplate
}
var EmptyAppSetGeneratorError = fmt.Errorf("ApplicationSet is empty")
var NoRequeueAfter time.Duration
var (
EmptyAppSetGeneratorError = fmt.Errorf("ApplicationSet is empty")
NoRequeueAfter time.Duration
)
// DefaultRequeueAfterSeconds is used when GetRequeueAfter is not specified, it is the default time to wait before the next reconcile loop
const (
DefaultRequeueAfterSeconds = 3 * time.Minute
)
func getDefaultRequeueAfter() time.Duration {
// Default is 3 minutes, min is 1 second, max is 1 year
return env.ParseDurationFromEnv("ARGOCD_APPLICATIONSET_CONTROLLER_REQUEUE_AFTER", DefaultRequeueAfterSeconds, 1*time.Second, 8760*time.Hour)
}

View File

@@ -0,0 +1,29 @@
package generators
import (
"testing"
"time"
"github.com/stretchr/testify/assert"
)
func Test_getDefaultRequeueAfter(t *testing.T) {
tests := []struct {
name string
requeueAfterEnv string
want time.Duration
}{
{name: "Default", requeueAfterEnv: "", want: DefaultRequeueAfterSeconds},
{name: "Min", requeueAfterEnv: "1s", want: 1 * time.Second},
{name: "Max", requeueAfterEnv: "8760h", want: 8760 * time.Hour},
{name: "Override", requeueAfterEnv: "10m", want: 10 * time.Minute},
{name: "LessThanMin", requeueAfterEnv: "1ms", want: DefaultRequeueAfterSeconds},
{name: "MoreThanMax", requeueAfterEnv: "8761h", want: DefaultRequeueAfterSeconds},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
t.Setenv("ARGOCD_APPLICATIONSET_CONTROLLER_REQUEUE_AFTER", tt.requeueAfterEnv)
assert.Equalf(t, tt.want, getDefaultRequeueAfter(), "getDefaultRequeueAfter()")
})
}
}

View File

@@ -5,6 +5,7 @@ import (
"fmt"
"time"
"sigs.k8s.io/controller-runtime/pkg/client"
"sigs.k8s.io/yaml"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
@@ -12,8 +13,7 @@ import (
var _ Generator = (*ListGenerator)(nil)
type ListGenerator struct {
}
type ListGenerator struct{}
func NewListGenerator() Generator {
g := &ListGenerator{}
@@ -28,7 +28,7 @@ func (g *ListGenerator) GetTemplate(appSetGenerator *argoprojiov1alpha1.Applicat
return &appSetGenerator.List.Template
}
func (g *ListGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, appSet *argoprojiov1alpha1.ApplicationSet) ([]map[string]interface{}, error) {
func (g *ListGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, appSet *argoprojiov1alpha1.ApplicationSet, _ client.Client) ([]map[string]interface{}, error) {
if appSetGenerator == nil {
return nil, EmptyAppSetGeneratorError
}
@@ -44,7 +44,7 @@ func (g *ListGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.Appli
var element map[string]interface{}
err := json.Unmarshal(tmpItem.Raw, &element)
if err != nil {
return nil, fmt.Errorf("error unmarshling list element %v", err)
return nil, fmt.Errorf("error unmarshling list element %w", err)
}
if appSet.Spec.GoTemplate {
@@ -59,14 +59,14 @@ func (g *ListGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.Appli
for k, v := range values {
value, ok := v.(string)
if !ok {
return nil, fmt.Errorf("error parsing value as string %v", err)
return nil, fmt.Errorf("error parsing value as string %w", err)
}
params[fmt.Sprintf("values.%s", k)] = value
}
} else {
v, ok := value.(string)
if !ok {
return nil, fmt.Errorf("error parsing value as string %v", err)
return nil, fmt.Errorf("error parsing value as string %w", err)
}
params[key] = v
}
@@ -77,11 +77,10 @@ func (g *ListGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.Appli
// Append elements from ElementsYaml to the response
if len(appSetGenerator.List.ElementsYaml) > 0 {
var yamlElements []map[string]interface{}
err := yaml.Unmarshal([]byte(appSetGenerator.List.ElementsYaml), &yamlElements)
if err != nil {
return nil, fmt.Errorf("error unmarshling decoded ElementsYaml %v", err)
return nil, fmt.Errorf("error unmarshling decoded ElementsYaml %w", err)
}
res = append(res, yamlElements...)
}

View File

@@ -4,6 +4,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -25,8 +26,7 @@ func TestGenerateListParams(t *testing.T) {
}
for _, testCase := range testCases {
var listGenerator = NewListGenerator()
listGenerator := NewListGenerator()
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
@@ -38,11 +38,11 @@ func TestGenerateListParams(t *testing.T) {
got, err := listGenerator.GenerateParams(&argoprojiov1alpha1.ApplicationSetGenerator{
List: &argoprojiov1alpha1.ListGenerator{
Elements: testCase.elements,
}}, &applicationSetInfo)
},
}, &applicationSetInfo, nil)
assert.NoError(t, err)
require.NoError(t, err)
assert.ElementsMatch(t, testCase.expected, got)
}
}
@@ -61,8 +61,7 @@ func TestGenerateListParamsGoTemplate(t *testing.T) {
}
for _, testCase := range testCases {
var listGenerator = NewListGenerator()
listGenerator := NewListGenerator()
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
@@ -76,9 +75,10 @@ func TestGenerateListParamsGoTemplate(t *testing.T) {
got, err := listGenerator.GenerateParams(&argoprojiov1alpha1.ApplicationSetGenerator{
List: &argoprojiov1alpha1.ListGenerator{
Elements: testCase.elements,
}}, &applicationSetInfo)
},
}, &applicationSetInfo, nil)
assert.NoError(t, err)
require.NoError(t, err)
assert.ElementsMatch(t, testCase.expected, got)
}
}

View File

@@ -5,6 +5,7 @@ import (
"time"
"github.com/imdario/mergo"
"sigs.k8s.io/controller-runtime/pkg/client"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
@@ -32,8 +33,7 @@ func NewMatrixGenerator(supportedGenerators map[string]Generator) Generator {
return m
}
func (m *MatrixGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, appSet *argoprojiov1alpha1.ApplicationSet) ([]map[string]interface{}, error) {
func (m *MatrixGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, appSet *argoprojiov1alpha1.ApplicationSet, client client.Client) ([]map[string]interface{}, error) {
if appSetGenerator.Matrix == nil {
return nil, EmptyAppSetGeneratorError
}
@@ -48,17 +48,16 @@ func (m *MatrixGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.App
res := []map[string]interface{}{}
g0, err := m.getParams(appSetGenerator.Matrix.Generators[0], appSet, nil)
g0, err := m.getParams(appSetGenerator.Matrix.Generators[0], appSet, nil, client)
if err != nil {
return nil, fmt.Errorf("error failed to get params for first generator in matrix generator: %w", err)
}
for _, a := range g0 {
g1, err := m.getParams(appSetGenerator.Matrix.Generators[1], appSet, a)
g1, err := m.getParams(appSetGenerator.Matrix.Generators[1], appSet, a, client)
if err != nil {
return nil, fmt.Errorf("failed to get params for second generator in the matrix generator: %w", err)
}
for _, b := range g1 {
if appSet.Spec.GoTemplate {
tmp := map[string]interface{}{}
if err := mergo.Merge(&tmp, b, mergo.WithOverride); err != nil {
@@ -81,7 +80,7 @@ func (m *MatrixGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.App
return res, nil
}
func (m *MatrixGenerator) getParams(appSetBaseGenerator argoprojiov1alpha1.ApplicationSetNestedGenerator, appSet *argoprojiov1alpha1.ApplicationSet, params map[string]interface{}) ([]map[string]interface{}, error) {
func (m *MatrixGenerator) getParams(appSetBaseGenerator argoprojiov1alpha1.ApplicationSetNestedGenerator, appSet *argoprojiov1alpha1.ApplicationSet, params map[string]interface{}, client client.Client) ([]map[string]interface{}, error) {
matrixGen, err := getMatrixGenerator(appSetBaseGenerator)
if err != nil {
return nil, err
@@ -119,10 +118,10 @@ func (m *MatrixGenerator) getParams(appSetBaseGenerator argoprojiov1alpha1.Appli
m.supportedGenerators,
argoprojiov1alpha1.ApplicationSetTemplate{},
appSet,
params)
params,
client)
if err != nil {
return nil, fmt.Errorf("child generator returned an error on parameter generation: %v", err)
return nil, fmt.Errorf("child generator returned an error on parameter generation: %w", err)
}
if len(t) == 0 {
@@ -172,7 +171,6 @@ func (m *MatrixGenerator) GetRequeueAfter(appSetGenerator *argoprojiov1alpha1.Ap
} else {
return NoRequeueAfter
}
}
func getMatrixGenerator(r argoprojiov1alpha1.ApplicationSetNestedGenerator) (*argoprojiov1alpha1.MatrixGenerator, error) {

View File

@@ -19,11 +19,11 @@ import (
"github.com/stretchr/testify/mock"
apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
"github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
func TestMatrixGenerate(t *testing.T) {
gitGenerator := &argoprojiov1alpha1.GitGenerator{
RepoURL: "RepoURL",
Revision: "Revision",
@@ -147,12 +147,11 @@ func TestMatrixGenerate(t *testing.T) {
}
for _, g := range testCaseCopy.baseGenerators {
gitGeneratorSpec := argoprojiov1alpha1.ApplicationSetGenerator{
Git: g.Git,
List: g.List,
}
genMock.On("GenerateParams", mock.AnythingOfType("*v1alpha1.ApplicationSetGenerator"), appSet).Return([]map[string]interface{}{
genMock.On("GenerateParams", mock.AnythingOfType("*v1alpha1.ApplicationSetGenerator"), appSet, mock.Anything).Return([]map[string]interface{}{
{
"path": "app1",
"path.basename": "app1",
@@ -169,7 +168,7 @@ func TestMatrixGenerate(t *testing.T) {
Return(&argoprojiov1alpha1.ApplicationSetTemplate{})
}
var matrixGenerator = NewMatrixGenerator(
matrixGenerator := NewMatrixGenerator(
map[string]Generator{
"Git": genMock,
"List": &ListGenerator{},
@@ -181,22 +180,19 @@ func TestMatrixGenerate(t *testing.T) {
Generators: testCaseCopy.baseGenerators,
Template: argoprojiov1alpha1.ApplicationSetTemplate{},
},
}, appSet)
}, appSet, nil)
if testCaseCopy.expectedErr != nil {
assert.ErrorIs(t, err, testCaseCopy.expectedErr)
require.ErrorIs(t, err, testCaseCopy.expectedErr)
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, testCaseCopy.expected, got)
}
})
}
}
func TestMatrixGenerateGoTemplate(t *testing.T) {
gitGenerator := &argoprojiov1alpha1.GitGenerator{
RepoURL: "RepoURL",
Revision: "Revision",
@@ -360,12 +356,11 @@ func TestMatrixGenerateGoTemplate(t *testing.T) {
}
for _, g := range testCaseCopy.baseGenerators {
gitGeneratorSpec := argoprojiov1alpha1.ApplicationSetGenerator{
Git: g.Git,
List: g.List,
}
genMock.On("GenerateParams", mock.AnythingOfType("*v1alpha1.ApplicationSetGenerator"), appSet).Return([]map[string]interface{}{
genMock.On("GenerateParams", mock.AnythingOfType("*v1alpha1.ApplicationSetGenerator"), appSet, mock.Anything).Return([]map[string]interface{}{
{
"path": map[string]string{
"path": "app1",
@@ -386,7 +381,7 @@ func TestMatrixGenerateGoTemplate(t *testing.T) {
Return(&argoprojiov1alpha1.ApplicationSetTemplate{})
}
var matrixGenerator = NewMatrixGenerator(
matrixGenerator := NewMatrixGenerator(
map[string]Generator{
"Git": genMock,
"List": &ListGenerator{},
@@ -398,22 +393,19 @@ func TestMatrixGenerateGoTemplate(t *testing.T) {
Generators: testCaseCopy.baseGenerators,
Template: argoprojiov1alpha1.ApplicationSetTemplate{},
},
}, appSet)
}, appSet, nil)
if testCaseCopy.expectedErr != nil {
assert.ErrorIs(t, err, testCaseCopy.expectedErr)
require.ErrorIs(t, err, testCaseCopy.expectedErr)
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, testCaseCopy.expected, got)
}
})
}
}
func TestMatrixGetRequeueAfter(t *testing.T) {
gitGenerator := &argoprojiov1alpha1.GitGenerator{
RepoURL: "RepoURL",
Revision: "Revision",
@@ -530,7 +522,7 @@ func TestMatrixGetRequeueAfter(t *testing.T) {
mock.On("GetRequeueAfter", &gitGeneratorSpec).Return(testCaseCopy.gitGetRequeueAfter, nil)
}
var matrixGenerator = NewMatrixGenerator(
matrixGenerator := NewMatrixGenerator(
map[string]Generator{
"Git": mock,
"List": &ListGenerator{},
@@ -548,9 +540,7 @@ func TestMatrixGetRequeueAfter(t *testing.T) {
})
assert.Equal(t, testCaseCopy.expected, got)
})
}
}
@@ -588,8 +578,8 @@ func TestInterpolatedMatrixGenerate(t *testing.T) {
},
},
expected: []map[string]interface{}{
{"path": "examples/git-generator-files-discovery/cluster-config/dev/config.json", "path.basename": "dev", "path.basenameNormalized": "dev", "name": "dev-01", "nameNormalized": "dev-01", "server": "https://dev-01.example.com", "metadata.labels.environment": "dev", "metadata.labels.argocd.argoproj.io/secret-type": "cluster"},
{"path": "examples/git-generator-files-discovery/cluster-config/prod/config.json", "path.basename": "prod", "path.basenameNormalized": "prod", "name": "prod-01", "nameNormalized": "prod-01", "server": "https://prod-01.example.com", "metadata.labels.environment": "prod", "metadata.labels.argocd.argoproj.io/secret-type": "cluster"},
{"path": "examples/git-generator-files-discovery/cluster-config/dev/config.json", "path.basename": "dev", "path.basenameNormalized": "dev", "name": "dev-01", "nameNormalized": "dev-01", "server": "https://dev-01.example.com", "metadata.labels.environment": "dev", "metadata.labels.argocd.argoproj.io/secret-type": "cluster", "project": ""},
{"path": "examples/git-generator-files-discovery/cluster-config/prod/config.json", "path.basename": "prod", "path.basenameNormalized": "prod", "name": "prod-01", "nameNormalized": "prod-01", "server": "https://prod-01.example.com", "metadata.labels.environment": "prod", "metadata.labels.argocd.argoproj.io/secret-type": "cluster", "project": ""},
},
clientError: false,
},
@@ -655,10 +645,9 @@ func TestInterpolatedMatrixGenerate(t *testing.T) {
fakeClient,
testCase.clientError,
}
var clusterGenerator = NewClusterGenerator(cl, context.Background(), appClientset, "namespace")
clusterGenerator := NewClusterGenerator(cl, context.Background(), appClientset, "namespace")
for _, g := range testCaseCopy.baseGenerators {
gitGeneratorSpec := argoprojiov1alpha1.ApplicationSetGenerator{
Git: g.Git,
Clusters: g.Clusters,
@@ -678,7 +667,7 @@ func TestInterpolatedMatrixGenerate(t *testing.T) {
genMock.On("GetTemplate", &gitGeneratorSpec).
Return(&argoprojiov1alpha1.ApplicationSetTemplate{})
}
var matrixGenerator = NewMatrixGenerator(
matrixGenerator := NewMatrixGenerator(
map[string]Generator{
"Git": genMock,
"Clusters": clusterGenerator,
@@ -690,15 +679,14 @@ func TestInterpolatedMatrixGenerate(t *testing.T) {
Generators: testCaseCopy.baseGenerators,
Template: argoprojiov1alpha1.ApplicationSetTemplate{},
},
}, appSet)
}, appSet, nil)
if testCaseCopy.expectedErr != nil {
assert.ErrorIs(t, err, testCaseCopy.expectedErr)
require.ErrorIs(t, err, testCaseCopy.expectedErr)
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, testCaseCopy.expected, got)
}
})
}
}
@@ -746,6 +734,7 @@ func TestInterpolatedMatrixGenerateGoTemplate(t *testing.T) {
"name": "dev-01",
"nameNormalized": "dev-01",
"server": "https://dev-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"environment": "dev",
@@ -762,6 +751,7 @@ func TestInterpolatedMatrixGenerateGoTemplate(t *testing.T) {
"name": "prod-01",
"nameNormalized": "prod-01",
"server": "https://prod-01.example.com",
"project": "",
"metadata": map[string]interface{}{
"labels": map[string]string{
"environment": "prod",
@@ -838,16 +828,14 @@ func TestInterpolatedMatrixGenerateGoTemplate(t *testing.T) {
fakeClient,
testCase.clientError,
}
var clusterGenerator = NewClusterGenerator(cl, context.Background(), appClientset, "namespace")
clusterGenerator := NewClusterGenerator(cl, context.Background(), appClientset, "namespace")
for _, g := range testCaseCopy.baseGenerators {
gitGeneratorSpec := argoprojiov1alpha1.ApplicationSetGenerator{
Git: g.Git,
Clusters: g.Clusters,
}
genMock.On("GenerateParams", mock.AnythingOfType("*v1alpha1.ApplicationSetGenerator"), appSet).Return([]map[string]interface{}{
{
"path": map[string]string{
"path": "examples/git-generator-files-discovery/cluster-config/dev/config.json",
@@ -866,7 +854,7 @@ func TestInterpolatedMatrixGenerateGoTemplate(t *testing.T) {
genMock.On("GetTemplate", &gitGeneratorSpec).
Return(&argoprojiov1alpha1.ApplicationSetTemplate{})
}
var matrixGenerator = NewMatrixGenerator(
matrixGenerator := NewMatrixGenerator(
map[string]Generator{
"Git": genMock,
"Clusters": clusterGenerator,
@@ -878,22 +866,19 @@ func TestInterpolatedMatrixGenerateGoTemplate(t *testing.T) {
Generators: testCaseCopy.baseGenerators,
Template: argoprojiov1alpha1.ApplicationSetTemplate{},
},
}, appSet)
}, appSet, nil)
if testCaseCopy.expectedErr != nil {
assert.ErrorIs(t, err, testCaseCopy.expectedErr)
require.ErrorIs(t, err, testCaseCopy.expectedErr)
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, testCaseCopy.expected, got)
}
})
}
}
func TestMatrixGenerateListElementsYaml(t *testing.T) {
gitGenerator := &argoprojiov1alpha1.GitGenerator{
RepoURL: "RepoURL",
Revision: "Revision",
@@ -997,7 +982,6 @@ func TestMatrixGenerateListElementsYaml(t *testing.T) {
}
for _, g := range testCaseCopy.baseGenerators {
gitGeneratorSpec := argoprojiov1alpha1.ApplicationSetGenerator{
Git: g.Git,
List: g.List,
@@ -1029,10 +1013,9 @@ func TestMatrixGenerateListElementsYaml(t *testing.T) {
}}, nil)
genMock.On("GetTemplate", &gitGeneratorSpec).
Return(&argoprojiov1alpha1.ApplicationSetTemplate{})
}
var matrixGenerator = NewMatrixGenerator(
matrixGenerator := NewMatrixGenerator(
map[string]Generator{
"Git": genMock,
"List": &ListGenerator{},
@@ -1044,17 +1027,15 @@ func TestMatrixGenerateListElementsYaml(t *testing.T) {
Generators: testCaseCopy.baseGenerators,
Template: argoprojiov1alpha1.ApplicationSetTemplate{},
},
}, appSet)
}, appSet, nil)
if testCaseCopy.expectedErr != nil {
assert.ErrorIs(t, err, testCaseCopy.expectedErr)
require.ErrorIs(t, err, testCaseCopy.expectedErr)
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, testCaseCopy.expected, got)
}
})
}
}
@@ -1068,7 +1049,7 @@ func (g *generatorMock) GetTemplate(appSetGenerator *argoprojiov1alpha1.Applicat
return args.Get(0).(*argoprojiov1alpha1.ApplicationSetTemplate)
}
func (g *generatorMock) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, appSet *argoprojiov1alpha1.ApplicationSet) ([]map[string]interface{}, error) {
func (g *generatorMock) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, appSet *argoprojiov1alpha1.ApplicationSet, _ client.Client) ([]map[string]interface{}, error) {
args := g.Called(appSetGenerator, appSet)
return args.Get(0).([]map[string]interface{}), args.Error(1)
@@ -1078,7 +1059,6 @@ func (g *generatorMock) GetRequeueAfter(appSetGenerator *argoprojiov1alpha1.Appl
args := g.Called(appSetGenerator)
return args.Get(0).(time.Duration)
}
func TestGitGenerator_GenerateParams_list_x_git_matrix_generator(t *testing.T) {
@@ -1095,7 +1075,7 @@ func TestGitGenerator_GenerateParams_list_x_git_matrix_generator(t *testing.T) {
// of that bug.
listGeneratorMock := &generatorMock{}
listGeneratorMock.On("GenerateParams", mock.AnythingOfType("*v1alpha1.ApplicationSetGenerator"), mock.AnythingOfType("*v1alpha1.ApplicationSet")).Return([]map[string]interface{}{
listGeneratorMock.On("GenerateParams", mock.AnythingOfType("*v1alpha1.ApplicationSetGenerator"), mock.AnythingOfType("*v1alpha1.ApplicationSet"), mock.Anything).Return([]map[string]interface{}{
{"some": "value"},
}, nil)
listGeneratorMock.On("GetTemplate", mock.AnythingOfType("*v1alpha1.ApplicationSetGenerator")).Return(&argoprojiov1alpha1.ApplicationSetTemplate{})
@@ -1108,10 +1088,10 @@ func TestGitGenerator_GenerateParams_list_x_git_matrix_generator(t *testing.T) {
}
repoServiceMock := &mocks.Repos{}
repoServiceMock.On("GetFiles", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(map[string][]byte{
repoServiceMock.On("GetFiles", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(map[string][]byte{
"some/path.json": []byte("test: content"),
}, nil)
gitGenerator := NewGitGenerator(repoServiceMock)
gitGenerator := NewGitGenerator(repoServiceMock, "")
matrixGenerator := NewMatrixGenerator(map[string]Generator{
"List": listGeneratorMock,
@@ -1134,9 +1114,17 @@ func TestGitGenerator_GenerateParams_list_x_git_matrix_generator(t *testing.T) {
},
},
}
scheme := runtime.NewScheme()
err := v1alpha1.AddToScheme(scheme)
require.NoError(t, err)
appProject := argoprojiov1alpha1.AppProject{}
client := fake.NewClientBuilder().WithScheme(scheme).WithObjects(&appProject).Build()
params, err := matrixGenerator.GenerateParams(&argoprojiov1alpha1.ApplicationSetGenerator{
Matrix: matrixGeneratorSpec,
}, &argoprojiov1alpha1.ApplicationSet{})
}, &argoprojiov1alpha1.ApplicationSet{}, client)
require.NoError(t, err)
assert.Equal(t, []map[string]interface{}{{
"path": "some",

View File

@@ -6,6 +6,7 @@ import (
"time"
"github.com/imdario/mergo"
"sigs.k8s.io/controller-runtime/pkg/client"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
@@ -36,10 +37,10 @@ func NewMergeGenerator(supportedGenerators map[string]Generator) Generator {
// getParamSetsForAllGenerators generates params for each child generator in a MergeGenerator. Param sets are returned
// in slices ordered according to the order of the given generators.
func (m *MergeGenerator) getParamSetsForAllGenerators(generators []argoprojiov1alpha1.ApplicationSetNestedGenerator, appSet *argoprojiov1alpha1.ApplicationSet) ([][]map[string]interface{}, error) {
func (m *MergeGenerator) getParamSetsForAllGenerators(generators []argoprojiov1alpha1.ApplicationSetNestedGenerator, appSet *argoprojiov1alpha1.ApplicationSet, client client.Client) ([][]map[string]interface{}, error) {
var paramSets [][]map[string]interface{}
for i, generator := range generators {
generatorParamSets, err := m.getParams(generator, appSet)
generatorParamSets, err := m.getParams(generator, appSet, client)
if err != nil {
return nil, fmt.Errorf("error getting params from generator %d of %d: %w", i+1, len(generators), err)
}
@@ -50,7 +51,7 @@ func (m *MergeGenerator) getParamSetsForAllGenerators(generators []argoprojiov1a
}
// GenerateParams gets the params produced by the MergeGenerator.
func (m *MergeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, appSet *argoprojiov1alpha1.ApplicationSet) ([]map[string]interface{}, error) {
func (m *MergeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, appSet *argoprojiov1alpha1.ApplicationSet, client client.Client) ([]map[string]interface{}, error) {
if appSetGenerator.Merge == nil {
return nil, EmptyAppSetGeneratorError
}
@@ -59,7 +60,7 @@ func (m *MergeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.Appl
return nil, ErrLessThanTwoGeneratorsInMerge
}
paramSetsFromGenerators, err := m.getParamSetsForAllGenerators(appSetGenerator.Merge.Generators, appSet)
paramSetsFromGenerators, err := m.getParamSetsForAllGenerators(appSetGenerator.Merge.Generators, appSet, client)
if err != nil {
return nil, fmt.Errorf("error getting param sets from generators: %w", err)
}
@@ -77,7 +78,6 @@ func (m *MergeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.Appl
for mergeKeyValue, baseParamSet := range baseParamSetsByMergeKey {
if overrideParamSet, exists := paramSetsByMergeKey[mergeKeyValue]; exists {
if appSet.Spec.GoTemplate {
if err := mergo.Merge(&baseParamSet, overrideParamSet, mergo.WithOverride); err != nil {
return nil, fmt.Errorf("error merging base param set with override param set: %w", err)
@@ -95,7 +95,7 @@ func (m *MergeGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.Appl
}
mergedParamSets := make([]map[string]interface{}, len(baseParamSetsByMergeKey))
var i = 0
i := 0
for _, mergedParamSet := range baseParamSetsByMergeKey {
mergedParamSets[i] = mergedParamSet
i += 1
@@ -138,7 +138,7 @@ func getParamSetsByMergeKey(mergeKeys []string, paramSets []map[string]interface
}
// getParams get the parameters generated by this generator.
func (m *MergeGenerator) getParams(appSetBaseGenerator argoprojiov1alpha1.ApplicationSetNestedGenerator, appSet *argoprojiov1alpha1.ApplicationSet) ([]map[string]interface{}, error) {
func (m *MergeGenerator) getParams(appSetBaseGenerator argoprojiov1alpha1.ApplicationSetNestedGenerator, appSet *argoprojiov1alpha1.ApplicationSet, client client.Client) ([]map[string]interface{}, error) {
matrixGen, err := getMatrixGenerator(appSetBaseGenerator)
if err != nil {
return nil, err
@@ -176,10 +176,9 @@ func (m *MergeGenerator) getParams(appSetBaseGenerator argoprojiov1alpha1.Applic
m.supportedGenerators,
argoprojiov1alpha1.ApplicationSetTemplate{},
appSet,
map[string]interface{}{})
map[string]interface{}{}, client)
if err != nil {
return nil, fmt.Errorf("child generator returned an error on parameter generation: %v", err)
return nil, fmt.Errorf("child generator returned an error on parameter generation: %w", err)
}
if len(t) == 0 {
@@ -227,7 +226,6 @@ func (m *MergeGenerator) GetRequeueAfter(appSetGenerator *argoprojiov1alpha1.App
} else {
return NoRequeueAfter
}
}
func getMergeGenerator(r argoprojiov1alpha1.ApplicationSetNestedGenerator) (*argoprojiov1alpha1.MergeGenerator, error) {

View File

@@ -6,6 +6,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
@@ -49,7 +50,6 @@ func listOfMapsToSet(maps []map[string]interface{}) (map[string]bool, error) {
}
func TestMergeGenerate(t *testing.T) {
testCases := []struct {
name string
baseGenerators []argoprojiov1alpha1.ApplicationSetNestedGenerator
@@ -156,7 +156,7 @@ func TestMergeGenerate(t *testing.T) {
appSet := &argoprojiov1alpha1.ApplicationSet{}
var mergeGenerator = NewMergeGenerator(
mergeGenerator := NewMergeGenerator(
map[string]Generator{
"List": &ListGenerator{},
"Matrix": &MatrixGenerator{
@@ -178,18 +178,18 @@ func TestMergeGenerate(t *testing.T) {
MergeKeys: testCaseCopy.mergeKeys,
Template: argoprojiov1alpha1.ApplicationSetTemplate{},
},
}, appSet)
}, appSet, nil)
if testCaseCopy.expectedErr != nil {
assert.EqualError(t, err, testCaseCopy.expectedErr.Error())
require.EqualError(t, err, testCaseCopy.expectedErr.Error())
} else {
expectedSet, err := listOfMapsToSet(testCaseCopy.expected)
assert.NoError(t, err)
require.NoError(t, err)
actualSet, err := listOfMapsToSet(got)
assert.NoError(t, err)
require.NoError(t, err)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, expectedSet, actualSet)
}
})
@@ -197,7 +197,7 @@ func TestMergeGenerate(t *testing.T) {
}
func toAPIExtensionsJSON(t *testing.T, g interface{}) *apiextensionsv1.JSON {
t.Helper()
resVal, err := json.Marshal(g)
if err != nil {
t.Error("unable to unmarshal json", g)
@@ -339,13 +339,11 @@ func TestParamSetsAreUniqueByMergeKeys(t *testing.T) {
got, err := getParamSetsByMergeKey(testCaseCopy.mergeKeys, testCaseCopy.paramSets)
if testCaseCopy.expectedErr != nil {
assert.EqualError(t, err, testCaseCopy.expectedErr.Error())
require.EqualError(t, err, testCaseCopy.expectedErr.Error())
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, testCaseCopy.expected, got)
}
})
}
}

View File

@@ -0,0 +1,100 @@
// Code generated by mockery v2.43.2. DO NOT EDIT.
package mocks
import (
client "sigs.k8s.io/controller-runtime/pkg/client"
mock "github.com/stretchr/testify/mock"
time "time"
v1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
// Generator is an autogenerated mock type for the Generator type
type Generator struct {
mock.Mock
}
// GenerateParams provides a mock function with given fields: appSetGenerator, applicationSetInfo, _a2
func (_m *Generator) GenerateParams(appSetGenerator *v1alpha1.ApplicationSetGenerator, applicationSetInfo *v1alpha1.ApplicationSet, _a2 client.Client) ([]map[string]interface{}, error) {
ret := _m.Called(appSetGenerator, applicationSetInfo, _a2)
if len(ret) == 0 {
panic("no return value specified for GenerateParams")
}
var r0 []map[string]interface{}
var r1 error
if rf, ok := ret.Get(0).(func(*v1alpha1.ApplicationSetGenerator, *v1alpha1.ApplicationSet, client.Client) ([]map[string]interface{}, error)); ok {
return rf(appSetGenerator, applicationSetInfo, _a2)
}
if rf, ok := ret.Get(0).(func(*v1alpha1.ApplicationSetGenerator, *v1alpha1.ApplicationSet, client.Client) []map[string]interface{}); ok {
r0 = rf(appSetGenerator, applicationSetInfo, _a2)
} else {
if ret.Get(0) != nil {
r0 = ret.Get(0).([]map[string]interface{})
}
}
if rf, ok := ret.Get(1).(func(*v1alpha1.ApplicationSetGenerator, *v1alpha1.ApplicationSet, client.Client) error); ok {
r1 = rf(appSetGenerator, applicationSetInfo, _a2)
} else {
r1 = ret.Error(1)
}
return r0, r1
}
// GetRequeueAfter provides a mock function with given fields: appSetGenerator
func (_m *Generator) GetRequeueAfter(appSetGenerator *v1alpha1.ApplicationSetGenerator) time.Duration {
ret := _m.Called(appSetGenerator)
if len(ret) == 0 {
panic("no return value specified for GetRequeueAfter")
}
var r0 time.Duration
if rf, ok := ret.Get(0).(func(*v1alpha1.ApplicationSetGenerator) time.Duration); ok {
r0 = rf(appSetGenerator)
} else {
r0 = ret.Get(0).(time.Duration)
}
return r0
}
// GetTemplate provides a mock function with given fields: appSetGenerator
func (_m *Generator) GetTemplate(appSetGenerator *v1alpha1.ApplicationSetGenerator) *v1alpha1.ApplicationSetTemplate {
ret := _m.Called(appSetGenerator)
if len(ret) == 0 {
panic("no return value specified for GetTemplate")
}
var r0 *v1alpha1.ApplicationSetTemplate
if rf, ok := ret.Get(0).(func(*v1alpha1.ApplicationSetGenerator) *v1alpha1.ApplicationSetTemplate); ok {
r0 = rf(appSetGenerator)
} else {
if ret.Get(0) != nil {
r0 = ret.Get(0).(*v1alpha1.ApplicationSetTemplate)
}
}
return r0
}
// NewGenerator creates a new instance of Generator. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
// The first argument is typically a *testing.T value.
func NewGenerator(t interface {
mock.TestingT
Cleanup(func())
}) *Generator {
mock := &Generator{}
mock.Mock.Test(t)
t.Cleanup(func() { mock.AssertExpectations(t) })
return mock
}

View File

@@ -55,8 +55,7 @@ func (g *PluginGenerator) GetTemplate(appSetGenerator *argoprojiov1alpha1.Applic
return &appSetGenerator.Plugin.Template
}
func (g *PluginGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, applicationSetInfo *argoprojiov1alpha1.ApplicationSet) ([]map[string]interface{}, error) {
func (g *PluginGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, applicationSetInfo *argoprojiov1alpha1.ApplicationSet, _ client.Client) ([]map[string]interface{}, error) {
if appSetGenerator == nil {
return nil, EmptyAppSetGeneratorError
}
@@ -94,7 +93,7 @@ func (g *PluginGenerator) getPluginFromGenerator(ctx context.Context, appSetName
}
token, err := g.getToken(ctx, cm["token"])
if err != nil {
return nil, fmt.Errorf("error fetching Secret token: %v", err)
return nil, fmt.Errorf("error fetching Secret token: %w", err)
}
var requestTimeout int
@@ -117,7 +116,6 @@ func (g *PluginGenerator) generateParams(appSetGenerator *argoprojiov1alpha1.App
res := []map[string]interface{}{}
for _, objectFound := range objectsFound {
params := map[string]interface{}{}
if useGoTemplate {
@@ -152,7 +150,6 @@ func (g *PluginGenerator) generateParams(appSetGenerator *argoprojiov1alpha1.App
}
func (g *PluginGenerator) getToken(ctx context.Context, tokenRef string) (string, error) {
if tokenRef == "" || !strings.HasPrefix(tokenRef, "$") {
return "", fmt.Errorf("token is empty, or does not reference a secret key starting with '$': %v", tokenRef)
}
@@ -167,9 +164,8 @@ func (g *PluginGenerator) getToken(ctx context.Context, tokenRef string) (string
Namespace: g.namespace,
},
secret)
if err != nil {
return "", fmt.Errorf("error fetching secret %s/%s: %v", g.namespace, secretName, err)
return "", fmt.Errorf("error fetching secret %s/%s: %w", g.namespace, secretName, err)
}
secretValues := make(map[string]string, len(secret.Data))
@@ -192,7 +188,6 @@ func (g *PluginGenerator) getConfigMap(ctx context.Context, configMapRef string)
Namespace: g.namespace,
},
cm)
if err != nil {
return nil, err
}

View File

@@ -631,9 +631,7 @@ func TestPluginGenerateParams(t *testing.T) {
ctx := context.Background()
for _, testCase := range testCases {
t.Run(testCase.name, func(t *testing.T) {
generatorConfig := argoprojiov1alpha1.ApplicationSetGenerator{
Plugin: &argoprojiov1alpha1.PluginGenerator{
ConfigMapRef: argoprojiov1alpha1.PluginConfigMapRef{Name: testCase.configmap.Name},
@@ -645,10 +643,9 @@ func TestPluginGenerateParams(t *testing.T) {
}
handler := http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
authHeader := r.Header.Get("Authorization")
_, tokenKey := plugin.ParseSecretKey(testCase.configmap.Data["token"])
expectedToken := testCase.secret.Data[strings.Replace(tokenKey, "$", "", -1)]
expectedToken := testCase.secret.Data[strings.ReplaceAll(tokenKey, "$", "")]
if authHeader != "Bearer "+string(expectedToken) {
w.WriteHeader(http.StatusUnauthorized)
return
@@ -657,7 +654,7 @@ func TestPluginGenerateParams(t *testing.T) {
w.Header().Set("Content-Type", "application/json")
_, err := w.Write(testCase.content)
if err != nil {
assert.NoError(t, fmt.Errorf("Error Write %v", err))
require.NoError(t, fmt.Errorf("Error Write %w", err))
}
})
@@ -673,7 +670,7 @@ func TestPluginGenerateParams(t *testing.T) {
fakeClientWithCache := fake.NewClientBuilder().WithObjects([]client.Object{testCase.configmap, testCase.secret}...).Build()
var pluginGenerator = NewPluginGenerator(fakeClientWithCache, ctx, fakeClient, "default")
pluginGenerator := NewPluginGenerator(fakeClientWithCache, ctx, fakeClient, "default")
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
@@ -684,21 +681,20 @@ func TestPluginGenerateParams(t *testing.T) {
},
}
got, err := pluginGenerator.GenerateParams(&generatorConfig, &applicationSetInfo)
got, err := pluginGenerator.GenerateParams(&generatorConfig, &applicationSetInfo, nil)
if err != nil {
fmt.Println(err)
}
if testCase.expectedError != nil {
assert.EqualError(t, err, testCase.expectedError.Error())
require.EqualError(t, err, testCase.expectedError.Error())
} else {
assert.NoError(t, err)
require.NoError(t, err)
expectedJson, err := json.Marshal(testCase.expected)
require.NoError(t, err)
gotJson, err := json.Marshal(got)
require.NoError(t, err)
assert.Equal(t, string(expectedJson), string(gotJson))
assert.JSONEq(t, string(expectedJson), string(gotJson))
}
})
}

View File

@@ -6,12 +6,12 @@ import (
"strconv"
"time"
corev1 "k8s.io/api/core/v1"
"sigs.k8s.io/controller-runtime/pkg/client"
"github.com/gosimple/slug"
pullrequest "github.com/argoproj/argo-cd/v2/applicationset/services/pull_request"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
@@ -24,19 +24,13 @@ const (
type PullRequestGenerator struct {
client client.Client
selectServiceProviderFunc func(context.Context, *argoprojiov1alpha1.PullRequestGenerator, *argoprojiov1alpha1.ApplicationSet) (pullrequest.PullRequestService, error)
auth SCMAuthProviders
scmRootCAPath string
allowedSCMProviders []string
enableSCMProviders bool
SCMConfig
}
func NewPullRequestGenerator(client client.Client, auth SCMAuthProviders, scmRootCAPath string, allowedScmProviders []string, enableSCMProviders bool) Generator {
func NewPullRequestGenerator(client client.Client, scmConfig SCMConfig) Generator {
g := &PullRequestGenerator{
client: client,
auth: auth,
scmRootCAPath: scmRootCAPath,
allowedSCMProviders: allowedScmProviders,
enableSCMProviders: enableSCMProviders,
client: client,
SCMConfig: scmConfig,
}
g.selectServiceProviderFunc = g.selectServiceProvider
return g
@@ -56,7 +50,7 @@ func (g *PullRequestGenerator) GetTemplate(appSetGenerator *argoprojiov1alpha1.A
return &appSetGenerator.PullRequest.Template
}
func (g *PullRequestGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, applicationSetInfo *argoprojiov1alpha1.ApplicationSet) ([]map[string]interface{}, error) {
func (g *PullRequestGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, applicationSetInfo *argoprojiov1alpha1.ApplicationSet, _ client.Client) ([]map[string]interface{}, error) {
if appSetGenerator == nil {
return nil, EmptyAppSetGeneratorError
}
@@ -73,7 +67,7 @@ func (g *PullRequestGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha
pulls, err := pullrequest.ListPullRequests(ctx, svc, appSetGenerator.PullRequest.Filters)
if err != nil {
return nil, fmt.Errorf("error listing repos: %v", err)
return nil, fmt.Errorf("error listing repos: %w", err)
}
params := make([]map[string]interface{}, 0, len(pulls))
@@ -103,6 +97,7 @@ func (g *PullRequestGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha
paramMap := map[string]interface{}{
"number": strconv.Itoa(pull.Number),
"title": pull.Title,
"branch": pull.Branch,
"branch_slug": slug.Make(pull.Branch),
"target_branch": pull.TargetBranch,
@@ -110,6 +105,7 @@ func (g *PullRequestGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha
"head_sha": pull.HeadSHA,
"head_short_sha": pull.HeadSHA[:shortSHALength],
"head_short_sha_7": pull.HeadSHA[:shortSHALength7],
"author": pull.Author,
}
// PR lables will only be supported for Go Template appsets, since fasttemplate will be deprecated.
@@ -135,44 +131,66 @@ func (g *PullRequestGenerator) selectServiceProvider(ctx context.Context, genera
}
if generatorConfig.GitLab != nil {
providerConfig := generatorConfig.GitLab
token, err := g.getSecretRef(ctx, providerConfig.TokenRef, applicationSetInfo.Namespace)
if err != nil {
return nil, fmt.Errorf("error fetching Secret token: %v", err)
var caCerts []byte
var prErr error
if providerConfig.CARef != nil {
caCerts, prErr = utils.GetConfigMapData(ctx, g.client, providerConfig.CARef, applicationSetInfo.Namespace)
if prErr != nil {
return nil, fmt.Errorf("error fetching CA certificates from ConfigMap: %w", prErr)
}
}
return pullrequest.NewGitLabService(ctx, token, providerConfig.API, providerConfig.Project, providerConfig.Labels, providerConfig.PullRequestState, g.scmRootCAPath, providerConfig.Insecure)
token, err := utils.GetSecretRef(ctx, g.client, providerConfig.TokenRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Secret token: %w", err)
}
return pullrequest.NewGitLabService(ctx, token, providerConfig.API, providerConfig.Project, providerConfig.Labels, providerConfig.PullRequestState, g.scmRootCAPath, providerConfig.Insecure, caCerts)
}
if generatorConfig.Gitea != nil {
providerConfig := generatorConfig.Gitea
token, err := g.getSecretRef(ctx, providerConfig.TokenRef, applicationSetInfo.Namespace)
token, err := utils.GetSecretRef(ctx, g.client, providerConfig.TokenRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Secret token: %v", err)
return nil, fmt.Errorf("error fetching Secret token: %w", err)
}
return pullrequest.NewGiteaService(ctx, token, providerConfig.API, providerConfig.Owner, providerConfig.Repo, providerConfig.Insecure)
}
if generatorConfig.BitbucketServer != nil {
providerConfig := generatorConfig.BitbucketServer
if providerConfig.BasicAuth != nil {
password, err := g.getSecretRef(ctx, providerConfig.BasicAuth.PasswordRef, applicationSetInfo.Namespace)
if err != nil {
return nil, fmt.Errorf("error fetching Secret token: %v", err)
var caCerts []byte
var prErr error
if providerConfig.CARef != nil {
caCerts, prErr = utils.GetConfigMapData(ctx, g.client, providerConfig.CARef, applicationSetInfo.Namespace)
if prErr != nil {
return nil, fmt.Errorf("error fetching CA certificates from ConfigMap: %w", prErr)
}
return pullrequest.NewBitbucketServiceBasicAuth(ctx, providerConfig.BasicAuth.Username, password, providerConfig.API, providerConfig.Project, providerConfig.Repo)
}
if providerConfig.BearerToken != nil {
appToken, err := utils.GetSecretRef(ctx, g.client, providerConfig.BearerToken.TokenRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Secret Bearer token: %w", err)
}
return pullrequest.NewBitbucketServiceBearerToken(ctx, appToken, providerConfig.API, providerConfig.Project, providerConfig.Repo, g.scmRootCAPath, providerConfig.Insecure, caCerts)
} else if providerConfig.BasicAuth != nil {
password, err := utils.GetSecretRef(ctx, g.client, providerConfig.BasicAuth.PasswordRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Secret token: %w", err)
}
return pullrequest.NewBitbucketServiceBasicAuth(ctx, providerConfig.BasicAuth.Username, password, providerConfig.API, providerConfig.Project, providerConfig.Repo, g.scmRootCAPath, providerConfig.Insecure, caCerts)
} else {
return pullrequest.NewBitbucketServiceNoAuth(ctx, providerConfig.API, providerConfig.Project, providerConfig.Repo)
return pullrequest.NewBitbucketServiceNoAuth(ctx, providerConfig.API, providerConfig.Project, providerConfig.Repo, g.scmRootCAPath, providerConfig.Insecure, caCerts)
}
}
if generatorConfig.Bitbucket != nil {
providerConfig := generatorConfig.Bitbucket
if providerConfig.BearerToken != nil {
appToken, err := g.getSecretRef(ctx, providerConfig.BearerToken.TokenRef, applicationSetInfo.Namespace)
appToken, err := utils.GetSecretRef(ctx, g.client, providerConfig.BearerToken.TokenRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Secret Bearer token: %v", err)
return nil, fmt.Errorf("error fetching Secret Bearer token: %w", err)
}
return pullrequest.NewBitbucketCloudServiceBearerToken(providerConfig.API, appToken, providerConfig.Owner, providerConfig.Repo)
} else if providerConfig.BasicAuth != nil {
password, err := g.getSecretRef(ctx, providerConfig.BasicAuth.PasswordRef, applicationSetInfo.Namespace)
password, err := utils.GetSecretRef(ctx, g.client, providerConfig.BasicAuth.PasswordRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Secret token: %v", err)
return nil, fmt.Errorf("error fetching Secret token: %w", err)
}
return pullrequest.NewBitbucketCloudServiceBasicAuth(providerConfig.API, providerConfig.BasicAuth.Username, password, providerConfig.Owner, providerConfig.Repo)
} else {
@@ -181,9 +199,9 @@ func (g *PullRequestGenerator) selectServiceProvider(ctx context.Context, genera
}
if generatorConfig.AzureDevOps != nil {
providerConfig := generatorConfig.AzureDevOps
token, err := g.getSecretRef(ctx, providerConfig.TokenRef, applicationSetInfo.Namespace)
token, err := utils.GetSecretRef(ctx, g.client, providerConfig.TokenRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Secret token: %v", err)
return nil, fmt.Errorf("error fetching Secret token: %w", err)
}
return pullrequest.NewAzureDevOpsService(ctx, token, providerConfig.API, providerConfig.Organization, providerConfig.Project, providerConfig.Repo, providerConfig.Labels)
}
@@ -193,41 +211,17 @@ func (g *PullRequestGenerator) selectServiceProvider(ctx context.Context, genera
func (g *PullRequestGenerator) github(ctx context.Context, cfg *argoprojiov1alpha1.PullRequestGeneratorGithub, applicationSetInfo *argoprojiov1alpha1.ApplicationSet) (pullrequest.PullRequestService, error) {
// use an app if it was configured
if cfg.AppSecretName != "" {
auth, err := g.auth.GitHubApps.GetAuthSecret(ctx, cfg.AppSecretName)
auth, err := g.GitHubApps.GetAuthSecret(ctx, cfg.AppSecretName)
if err != nil {
return nil, fmt.Errorf("error getting GitHub App secret: %v", err)
return nil, fmt.Errorf("error getting GitHub App secret: %w", err)
}
return pullrequest.NewGithubAppService(*auth, cfg.API, cfg.Owner, cfg.Repo, cfg.Labels)
}
// always default to token, even if not set (public access)
token, err := g.getSecretRef(ctx, cfg.TokenRef, applicationSetInfo.Namespace)
token, err := utils.GetSecretRef(ctx, g.client, cfg.TokenRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Secret token: %v", err)
return nil, fmt.Errorf("error fetching Secret token: %w", err)
}
return pullrequest.NewGithubService(ctx, token, cfg.API, cfg.Owner, cfg.Repo, cfg.Labels)
}
// getSecretRef gets the value of the key for the specified Secret resource.
func (g *PullRequestGenerator) getSecretRef(ctx context.Context, ref *argoprojiov1alpha1.SecretRef, namespace string) (string, error) {
if ref == nil {
return "", nil
}
secret := &corev1.Secret{}
err := g.client.Get(
ctx,
client.ObjectKey{
Name: ref.SecretName,
Namespace: namespace,
},
secret)
if err != nil {
return "", fmt.Errorf("error fetching secret %s/%s: %v", namespace, ref.SecretName, err)
}
tokenBytes, ok := secret.Data[ref.Key]
if !ok {
return "", fmt.Errorf("key %q in secret %s/%s not found", ref.Key, namespace, ref.SecretName)
}
return string(tokenBytes), nil
}

View File

@@ -6,9 +6,8 @@ import (
"testing"
"github.com/stretchr/testify/assert"
corev1 "k8s.io/api/core/v1"
"github.com/stretchr/testify/require"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"sigs.k8s.io/controller-runtime/pkg/client/fake"
pullrequest "github.com/argoproj/argo-cd/v2/applicationset/services/pull_request"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
@@ -29,9 +28,11 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
[]*pullrequest.PullRequest{
{
Number: 1,
Title: "title1",
Branch: "branch1",
TargetBranch: "master",
HeadSHA: "089d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "testName",
},
},
nil,
@@ -40,6 +41,7 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
expected: []map[string]interface{}{
{
"number": "1",
"title": "title1",
"branch": "branch1",
"branch_slug": "branch1",
"target_branch": "master",
@@ -47,6 +49,7 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
"head_sha": "089d92cbf9ff857a39e6feccd32798ca700fb958",
"head_short_sha": "089d92cb",
"head_short_sha_7": "089d92c",
"author": "testName",
},
},
expectedErr: nil,
@@ -58,9 +61,11 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
[]*pullrequest.PullRequest{
{
Number: 2,
Title: "title2",
Branch: "feat/areally+long_pull_request_name_to_test_argo_slugification_and_branch_name_shortening_feature",
TargetBranch: "feat/anotherreally+long_pull_request_name_to_test_argo_slugification_and_branch_name_shortening_feature",
HeadSHA: "9b34ff5bd418e57d58891eb0aa0728043ca1e8be",
Author: "testName",
},
},
nil,
@@ -69,6 +74,7 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
expected: []map[string]interface{}{
{
"number": "2",
"title": "title2",
"branch": "feat/areally+long_pull_request_name_to_test_argo_slugification_and_branch_name_shortening_feature",
"branch_slug": "feat-areally-long-pull-request-name-to-test-argo",
"target_branch": "feat/anotherreally+long_pull_request_name_to_test_argo_slugification_and_branch_name_shortening_feature",
@@ -76,6 +82,7 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
"head_sha": "9b34ff5bd418e57d58891eb0aa0728043ca1e8be",
"head_short_sha": "9b34ff5b",
"head_short_sha_7": "9b34ff5",
"author": "testName",
},
},
expectedErr: nil,
@@ -87,9 +94,11 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
[]*pullrequest.PullRequest{
{
Number: 1,
Title: "title1",
Branch: "a-very-short-sha",
TargetBranch: "master",
HeadSHA: "abcd",
Author: "testName",
},
},
nil,
@@ -98,6 +107,7 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
expected: []map[string]interface{}{
{
"number": "1",
"title": "title1",
"branch": "a-very-short-sha",
"branch_slug": "a-very-short-sha",
"target_branch": "master",
@@ -105,6 +115,7 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
"head_sha": "abcd",
"head_short_sha": "abcd",
"head_short_sha_7": "abcd",
"author": "testName",
},
},
expectedErr: nil,
@@ -127,10 +138,12 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
[]*pullrequest.PullRequest{
{
Number: 1,
Title: "title1",
Branch: "branch1",
TargetBranch: "master",
HeadSHA: "089d92cbf9ff857a39e6feccd32798ca700fb958",
Labels: []string{"preview"},
Author: "testName",
},
},
nil,
@@ -139,6 +152,7 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
expected: []map[string]interface{}{
{
"number": "1",
"title": "title1",
"branch": "branch1",
"branch_slug": "branch1",
"target_branch": "master",
@@ -147,6 +161,7 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
"head_short_sha": "089d92cb",
"head_short_sha_7": "089d92c",
"labels": []string{"preview"},
"author": "testName",
},
},
expectedErr: nil,
@@ -164,10 +179,12 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
[]*pullrequest.PullRequest{
{
Number: 1,
Title: "title1",
Branch: "branch1",
TargetBranch: "master",
HeadSHA: "089d92cbf9ff857a39e6feccd32798ca700fb958",
Labels: []string{"preview"},
Author: "testName",
},
},
nil,
@@ -176,6 +193,7 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
expected: []map[string]interface{}{
{
"number": "1",
"title": "title1",
"branch": "branch1",
"branch_slug": "branch1",
"target_branch": "master",
@@ -183,6 +201,7 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
"head_sha": "089d92cbf9ff857a39e6feccd32798ca700fb958",
"head_short_sha": "089d92cb",
"head_short_sha_7": "089d92c",
"author": "testName",
},
},
expectedErr: nil,
@@ -203,82 +222,20 @@ func TestPullRequestGithubGenerateParams(t *testing.T) {
PullRequest: &argoprojiov1alpha1.PullRequestGenerator{},
}
got, gotErr := gen.GenerateParams(&generatorConfig, &c.applicationSet)
assert.Equal(t, c.expectedErr, gotErr)
got, gotErr := gen.GenerateParams(&generatorConfig, &c.applicationSet, nil)
if c.expectedErr != nil {
assert.Equal(t, c.expectedErr.Error(), gotErr.Error())
} else {
require.NoError(t, gotErr)
}
assert.ElementsMatch(t, c.expected, got)
}
}
func TestPullRequestGetSecretRef(t *testing.T) {
secret := &corev1.Secret{
ObjectMeta: metav1.ObjectMeta{Name: "test-secret", Namespace: "test"},
Data: map[string][]byte{
"my-token": []byte("secret"),
},
}
gen := &PullRequestGenerator{client: fake.NewClientBuilder().WithObjects(secret).Build()}
ctx := context.Background()
cases := []struct {
name, namespace, token string
ref *argoprojiov1alpha1.SecretRef
hasError bool
}{
{
name: "valid ref",
ref: &argoprojiov1alpha1.SecretRef{SecretName: "test-secret", Key: "my-token"},
namespace: "test",
token: "secret",
hasError: false,
},
{
name: "nil ref",
ref: nil,
namespace: "test",
token: "",
hasError: false,
},
{
name: "wrong name",
ref: &argoprojiov1alpha1.SecretRef{SecretName: "other", Key: "my-token"},
namespace: "test",
token: "",
hasError: true,
},
{
name: "wrong key",
ref: &argoprojiov1alpha1.SecretRef{SecretName: "test-secret", Key: "other-token"},
namespace: "test",
token: "",
hasError: true,
},
{
name: "wrong namespace",
ref: &argoprojiov1alpha1.SecretRef{SecretName: "test-secret", Key: "my-token"},
namespace: "other",
token: "",
hasError: true,
},
}
for _, c := range cases {
t.Run(c.name, func(t *testing.T) {
token, err := gen.getSecretRef(ctx, c.ref, c.namespace)
if c.hasError {
assert.NotNil(t, err)
} else {
assert.Nil(t, err)
}
assert.Equal(t, c.token, token)
})
}
}
func TestAllowedSCMProviderPullRequest(t *testing.T) {
cases := []struct {
name string
providerConfig *argoprojiov1alpha1.PullRequestGenerator
expectedError error
}{
{
name: "Error Github",
@@ -287,7 +244,6 @@ func TestAllowedSCMProviderPullRequest(t *testing.T) {
API: "https://myservice.mynamespace.svc.cluster.local",
},
},
expectedError: &ErrDisallowedSCMProvider{},
},
{
name: "Error Gitlab",
@@ -296,7 +252,6 @@ func TestAllowedSCMProviderPullRequest(t *testing.T) {
API: "https://myservice.mynamespace.svc.cluster.local",
},
},
expectedError: &ErrDisallowedSCMProvider{},
},
{
name: "Error Gitea",
@@ -305,7 +260,6 @@ func TestAllowedSCMProviderPullRequest(t *testing.T) {
API: "https://myservice.mynamespace.svc.cluster.local",
},
},
expectedError: &ErrDisallowedSCMProvider{},
},
{
name: "Error Bitbucket",
@@ -314,7 +268,6 @@ func TestAllowedSCMProviderPullRequest(t *testing.T) {
API: "https://myservice.mynamespace.svc.cluster.local",
},
},
expectedError: &ErrDisallowedSCMProvider{},
},
}
@@ -324,13 +277,13 @@ func TestAllowedSCMProviderPullRequest(t *testing.T) {
t.Run(testCaseCopy.name, func(t *testing.T) {
t.Parallel()
pullRequestGenerator := NewPullRequestGenerator(nil, SCMAuthProviders{}, "", []string{
pullRequestGenerator := NewPullRequestGenerator(nil, NewSCMConfig("", []string{
"github.myorg.com",
"gitlab.myorg.com",
"gitea.myorg.com",
"bitbucket.myorg.com",
"azuredevops.myorg.com",
}, true)
}, true, nil, true))
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
@@ -343,16 +296,17 @@ func TestAllowedSCMProviderPullRequest(t *testing.T) {
},
}
_, err := pullRequestGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo)
_, err := pullRequestGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo, nil)
assert.Error(t, err, "Must return an error")
assert.ErrorAs(t, err, testCaseCopy.expectedError)
require.Error(t, err, "Must return an error")
var expectedError ErrDisallowedSCMProvider
assert.ErrorAs(t, err, &expectedError)
})
}
}
func TestSCMProviderDisabled_PRGenerator(t *testing.T) {
generator := NewPullRequestGenerator(nil, SCMAuthProviders{}, "", []string{}, false)
generator := NewPullRequestGenerator(nil, NewSCMConfig("", []string{}, false, nil, true))
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
@@ -369,6 +323,6 @@ func TestSCMProviderDisabled_PRGenerator(t *testing.T) {
},
}
_, err := generator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo)
_, err := generator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo, nil)
assert.ErrorIs(t, err, ErrSCMProvidersDisabled)
}

View File

@@ -7,7 +7,6 @@ import (
"strings"
"time"
corev1 "k8s.io/api/core/v1"
"sigs.k8s.io/controller-runtime/pkg/client"
log "github.com/sirupsen/logrus"
@@ -29,29 +28,38 @@ type SCMProviderGenerator struct {
client client.Client
// Testing hooks.
overrideProvider scm_provider.SCMProviderService
SCMAuthProviders
SCMConfig
}
type SCMConfig struct {
scmRootCAPath string
allowedSCMProviders []string
enableSCMProviders bool
GitHubApps github_app_auth.Credentials
tokenRefStrictMode bool
}
type SCMAuthProviders struct {
GitHubApps github_app_auth.Credentials
}
func NewSCMProviderGenerator(client client.Client, providers SCMAuthProviders, scmRootCAPath string, allowedSCMProviders []string, enableSCMProviders bool) Generator {
return &SCMProviderGenerator{
client: client,
SCMAuthProviders: providers,
func NewSCMConfig(scmRootCAPath string, allowedSCMProviders []string, enableSCMProviders bool, gitHubApps github_app_auth.Credentials, tokenRefStrictMode bool) SCMConfig {
return SCMConfig{
scmRootCAPath: scmRootCAPath,
allowedSCMProviders: allowedSCMProviders,
enableSCMProviders: enableSCMProviders,
GitHubApps: gitHubApps,
tokenRefStrictMode: tokenRefStrictMode,
}
}
func NewSCMProviderGenerator(client client.Client, scmConfig SCMConfig) Generator {
return &SCMProviderGenerator{
client: client,
SCMConfig: scmConfig,
}
}
// Testing generator
func NewTestSCMProviderGenerator(overrideProvider scm_provider.SCMProviderService) Generator {
return &SCMProviderGenerator{overrideProvider: overrideProvider, enableSCMProviders: true}
return &SCMProviderGenerator{overrideProvider: overrideProvider, SCMConfig: SCMConfig{
enableSCMProviders: true,
}}
}
func (g *SCMProviderGenerator) GetRequeueAfter(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator) time.Duration {
@@ -108,7 +116,7 @@ func ScmProviderAllowed(applicationSetInfo *argoprojiov1alpha1.ApplicationSet, g
return NewErrDisallowedSCMProvider(url, allowedScmProviders)
}
func (g *SCMProviderGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, applicationSetInfo *argoprojiov1alpha1.ApplicationSet) ([]map[string]interface{}, error) {
func (g *SCMProviderGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, applicationSetInfo *argoprojiov1alpha1.ApplicationSet, _ client.Client) ([]map[string]interface{}, error) {
if appSetGenerator == nil {
return nil, EmptyAppSetGeneratorError
}
@@ -139,61 +147,83 @@ func (g *SCMProviderGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha
return nil, fmt.Errorf("scm provider: %w", err)
}
} else if providerConfig.Gitlab != nil {
token, err := g.getSecretRef(ctx, providerConfig.Gitlab.TokenRef, applicationSetInfo.Namespace)
if err != nil {
return nil, fmt.Errorf("error fetching Gitlab token: %v", err)
providerConfig := providerConfig.Gitlab
var caCerts []byte
var scmError error
if providerConfig.CARef != nil {
caCerts, scmError = utils.GetConfigMapData(ctx, g.client, providerConfig.CARef, applicationSetInfo.Namespace)
if scmError != nil {
return nil, fmt.Errorf("error fetching CA certificates from ConfigMap: %w", scmError)
}
}
provider, err = scm_provider.NewGitlabProvider(ctx, providerConfig.Gitlab.Group, token, providerConfig.Gitlab.API, providerConfig.Gitlab.AllBranches, providerConfig.Gitlab.IncludeSubgroups, providerConfig.Gitlab.WillIncludeSharedProjects(), providerConfig.Gitlab.Insecure, g.scmRootCAPath, providerConfig.Gitlab.Topic)
token, err := utils.GetSecretRef(ctx, g.client, providerConfig.TokenRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error initializing Gitlab service: %v", err)
return nil, fmt.Errorf("error fetching Gitlab token: %w", err)
}
provider, err = scm_provider.NewGitlabProvider(ctx, providerConfig.Group, token, providerConfig.API, providerConfig.AllBranches, providerConfig.IncludeSubgroups, providerConfig.WillIncludeSharedProjects(), providerConfig.Insecure, g.scmRootCAPath, providerConfig.Topic, caCerts)
if err != nil {
return nil, fmt.Errorf("error initializing Gitlab service: %w", err)
}
} else if providerConfig.Gitea != nil {
token, err := g.getSecretRef(ctx, providerConfig.Gitea.TokenRef, applicationSetInfo.Namespace)
token, err := utils.GetSecretRef(ctx, g.client, providerConfig.Gitea.TokenRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Gitea token: %v", err)
return nil, fmt.Errorf("error fetching Gitea token: %w", err)
}
provider, err = scm_provider.NewGiteaProvider(ctx, providerConfig.Gitea.Owner, token, providerConfig.Gitea.API, providerConfig.Gitea.AllBranches, providerConfig.Gitea.Insecure)
if err != nil {
return nil, fmt.Errorf("error initializing Gitea service: %v", err)
return nil, fmt.Errorf("error initializing Gitea service: %w", err)
}
} else if providerConfig.BitbucketServer != nil {
providerConfig := providerConfig.BitbucketServer
var caCerts []byte
var scmError error
if providerConfig.BasicAuth != nil {
password, err := g.getSecretRef(ctx, providerConfig.BasicAuth.PasswordRef, applicationSetInfo.Namespace)
if err != nil {
return nil, fmt.Errorf("error fetching Secret token: %v", err)
if providerConfig.CARef != nil {
caCerts, scmError = utils.GetConfigMapData(ctx, g.client, providerConfig.CARef, applicationSetInfo.Namespace)
if scmError != nil {
return nil, fmt.Errorf("error fetching CA certificates from ConfigMap: %w", scmError)
}
provider, scmError = scm_provider.NewBitbucketServerProviderBasicAuth(ctx, providerConfig.BasicAuth.Username, password, providerConfig.API, providerConfig.Project, providerConfig.AllBranches)
}
if providerConfig.BearerToken != nil {
appToken, err := utils.GetSecretRef(ctx, g.client, providerConfig.BearerToken.TokenRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Secret Bearer token: %w", err)
}
provider, scmError = scm_provider.NewBitbucketServerProviderBearerToken(ctx, appToken, providerConfig.API, providerConfig.Project, providerConfig.AllBranches, g.scmRootCAPath, providerConfig.Insecure, caCerts)
} else if providerConfig.BasicAuth != nil {
password, err := utils.GetSecretRef(ctx, g.client, providerConfig.BasicAuth.PasswordRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Secret token: %w", err)
}
provider, scmError = scm_provider.NewBitbucketServerProviderBasicAuth(ctx, providerConfig.BasicAuth.Username, password, providerConfig.API, providerConfig.Project, providerConfig.AllBranches, g.scmRootCAPath, providerConfig.Insecure, caCerts)
} else {
provider, scmError = scm_provider.NewBitbucketServerProviderNoAuth(ctx, providerConfig.API, providerConfig.Project, providerConfig.AllBranches)
provider, scmError = scm_provider.NewBitbucketServerProviderNoAuth(ctx, providerConfig.API, providerConfig.Project, providerConfig.AllBranches, g.scmRootCAPath, providerConfig.Insecure, caCerts)
}
if scmError != nil {
return nil, fmt.Errorf("error initializing Bitbucket Server service: %v", scmError)
return nil, fmt.Errorf("error initializing Bitbucket Server service: %w", scmError)
}
} else if providerConfig.AzureDevOps != nil {
token, err := g.getSecretRef(ctx, providerConfig.AzureDevOps.AccessTokenRef, applicationSetInfo.Namespace)
token, err := utils.GetSecretRef(ctx, g.client, providerConfig.AzureDevOps.AccessTokenRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Azure Devops access token: %v", err)
return nil, fmt.Errorf("error fetching Azure Devops access token: %w", err)
}
provider, err = scm_provider.NewAzureDevOpsProvider(ctx, token, providerConfig.AzureDevOps.Organization, providerConfig.AzureDevOps.API, providerConfig.AzureDevOps.TeamProject, providerConfig.AzureDevOps.AllBranches)
if err != nil {
return nil, fmt.Errorf("error initializing Azure Devops service: %v", err)
return nil, fmt.Errorf("error initializing Azure Devops service: %w", err)
}
} else if providerConfig.Bitbucket != nil {
appPassword, err := g.getSecretRef(ctx, providerConfig.Bitbucket.AppPasswordRef, applicationSetInfo.Namespace)
appPassword, err := utils.GetSecretRef(ctx, g.client, providerConfig.Bitbucket.AppPasswordRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Bitbucket cloud appPassword: %v", err)
return nil, fmt.Errorf("error fetching Bitbucket cloud appPassword: %w", err)
}
provider, err = scm_provider.NewBitBucketCloudProvider(ctx, providerConfig.Bitbucket.Owner, providerConfig.Bitbucket.User, appPassword, providerConfig.Bitbucket.AllBranches)
if err != nil {
return nil, fmt.Errorf("error initializing Bitbucket cloud service: %v", err)
return nil, fmt.Errorf("error initializing Bitbucket cloud service: %w", err)
}
} else if providerConfig.AWSCodeCommit != nil {
var awsErr error
provider, awsErr = scm_provider.NewAWSCodeCommitProvider(ctx, providerConfig.AWSCodeCommit.TagFilters, providerConfig.AWSCodeCommit.Role, providerConfig.AWSCodeCommit.Region, providerConfig.AWSCodeCommit.AllBranches)
if awsErr != nil {
return nil, fmt.Errorf("error initializing AWS codecommit service: %v", awsErr)
return nil, fmt.Errorf("error initializing AWS codecommit service: %w", awsErr)
}
} else {
return nil, fmt.Errorf("no SCM provider implementation configured")
@@ -202,7 +232,7 @@ func (g *SCMProviderGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha
// Find all the available repos.
repos, err := scm_provider.ListRepos(ctx, provider, providerConfig.Filters, providerConfig.CloneProtocol)
if err != nil {
return nil, fmt.Errorf("error listing repos: %v", err)
return nil, fmt.Errorf("error listing repos: %w", err)
}
paramsArray := make([]map[string]interface{}, 0, len(repos))
var shortSHALength int
@@ -240,34 +270,11 @@ func (g *SCMProviderGenerator) GenerateParams(appSetGenerator *argoprojiov1alpha
return paramsArray, nil
}
func (g *SCMProviderGenerator) getSecretRef(ctx context.Context, ref *argoprojiov1alpha1.SecretRef, namespace string) (string, error) {
if ref == nil {
return "", nil
}
secret := &corev1.Secret{}
err := g.client.Get(
ctx,
client.ObjectKey{
Name: ref.SecretName,
Namespace: namespace,
},
secret)
if err != nil {
return "", fmt.Errorf("error fetching secret %s/%s: %v", namespace, ref.SecretName, err)
}
tokenBytes, ok := secret.Data[ref.Key]
if !ok {
return "", fmt.Errorf("key %q in secret %s/%s not found", ref.Key, namespace, ref.SecretName)
}
return string(tokenBytes), nil
}
func (g *SCMProviderGenerator) githubProvider(ctx context.Context, github *argoprojiov1alpha1.SCMProviderGeneratorGithub, applicationSetInfo *argoprojiov1alpha1.ApplicationSet) (scm_provider.SCMProviderService, error) {
if github.AppSecretName != "" {
auth, err := g.GitHubApps.GetAuthSecret(ctx, github.AppSecretName)
if err != nil {
return nil, fmt.Errorf("error fetching Github app secret: %v", err)
return nil, fmt.Errorf("error fetching Github app secret: %w", err)
}
return scm_provider.NewGithubAppProviderFor(
@@ -278,9 +285,9 @@ func (g *SCMProviderGenerator) githubProvider(ctx context.Context, github *argop
)
}
token, err := g.getSecretRef(ctx, github.TokenRef, applicationSetInfo.Namespace)
token, err := utils.GetSecretRef(ctx, g.client, github.TokenRef, applicationSetInfo.Namespace, g.tokenRefStrictMode)
if err != nil {
return nil, fmt.Errorf("error fetching Github token: %v", err)
return nil, fmt.Errorf("error fetching Github token: %w", err)
}
return scm_provider.NewGithubProvider(ctx, github.Organization, token, github.API, github.AllBranches)
}

View File

@@ -1,84 +1,16 @@
package generators
import (
"context"
"testing"
"github.com/stretchr/testify/assert"
corev1 "k8s.io/api/core/v1"
"github.com/stretchr/testify/require"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"sigs.k8s.io/controller-runtime/pkg/client/fake"
"github.com/argoproj/argo-cd/v2/applicationset/services/scm_provider"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
func TestSCMProviderGetSecretRef(t *testing.T) {
secret := &corev1.Secret{
ObjectMeta: metav1.ObjectMeta{Name: "test-secret", Namespace: "test"},
Data: map[string][]byte{
"my-token": []byte("secret"),
},
}
gen := &SCMProviderGenerator{client: fake.NewClientBuilder().WithObjects(secret).Build()}
ctx := context.Background()
cases := []struct {
name, namespace, token string
ref *argoprojiov1alpha1.SecretRef
hasError bool
}{
{
name: "valid ref",
ref: &argoprojiov1alpha1.SecretRef{SecretName: "test-secret", Key: "my-token"},
namespace: "test",
token: "secret",
hasError: false,
},
{
name: "nil ref",
ref: nil,
namespace: "test",
token: "",
hasError: false,
},
{
name: "wrong name",
ref: &argoprojiov1alpha1.SecretRef{SecretName: "other", Key: "my-token"},
namespace: "test",
token: "",
hasError: true,
},
{
name: "wrong key",
ref: &argoprojiov1alpha1.SecretRef{SecretName: "test-secret", Key: "other-token"},
namespace: "test",
token: "",
hasError: true,
},
{
name: "wrong namespace",
ref: &argoprojiov1alpha1.SecretRef{SecretName: "test-secret", Key: "my-token"},
namespace: "other",
token: "",
hasError: true,
},
}
for _, c := range cases {
t.Run(c.name, func(t *testing.T) {
token, err := gen.getSecretRef(ctx, c.ref, c.namespace)
if c.hasError {
assert.NotNil(t, err)
} else {
assert.Nil(t, err)
}
assert.Equal(t, c.token, token)
})
}
}
func TestSCMProviderGenerateParams(t *testing.T) {
cases := []struct {
name string
@@ -174,7 +106,7 @@ func TestSCMProviderGenerateParams(t *testing.T) {
mockProvider := &scm_provider.MockProvider{
Repos: testCaseCopy.repos,
}
scmGenerator := &SCMProviderGenerator{overrideProvider: mockProvider, enableSCMProviders: true}
scmGenerator := &SCMProviderGenerator{overrideProvider: mockProvider, SCMConfig: SCMConfig{enableSCMProviders: true}}
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
Name: "set",
@@ -188,15 +120,14 @@ func TestSCMProviderGenerateParams(t *testing.T) {
},
}
got, err := scmGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo)
got, err := scmGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo, nil)
if testCaseCopy.expectedError != nil {
assert.EqualError(t, err, testCaseCopy.expectedError.Error())
} else {
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, testCaseCopy.expected, got)
}
})
}
}
@@ -205,7 +136,6 @@ func TestAllowedSCMProvider(t *testing.T) {
cases := []struct {
name string
providerConfig *argoprojiov1alpha1.SCMProviderGenerator
expectedError error
}{
{
name: "Error Github",
@@ -214,7 +144,6 @@ func TestAllowedSCMProvider(t *testing.T) {
API: "https://myservice.mynamespace.svc.cluster.local",
},
},
expectedError: &ErrDisallowedSCMProvider{},
},
{
name: "Error Gitlab",
@@ -223,7 +152,6 @@ func TestAllowedSCMProvider(t *testing.T) {
API: "https://myservice.mynamespace.svc.cluster.local",
},
},
expectedError: &ErrDisallowedSCMProvider{},
},
{
name: "Error Gitea",
@@ -232,7 +160,6 @@ func TestAllowedSCMProvider(t *testing.T) {
API: "https://myservice.mynamespace.svc.cluster.local",
},
},
expectedError: &ErrDisallowedSCMProvider{},
},
{
name: "Error Bitbucket",
@@ -241,7 +168,6 @@ func TestAllowedSCMProvider(t *testing.T) {
API: "https://myservice.mynamespace.svc.cluster.local",
},
},
expectedError: &ErrDisallowedSCMProvider{},
},
{
name: "Error AzureDevops",
@@ -250,7 +176,6 @@ func TestAllowedSCMProvider(t *testing.T) {
API: "https://myservice.mynamespace.svc.cluster.local",
},
},
expectedError: &ErrDisallowedSCMProvider{},
},
}
@@ -261,14 +186,16 @@ func TestAllowedSCMProvider(t *testing.T) {
t.Parallel()
scmGenerator := &SCMProviderGenerator{
allowedSCMProviders: []string{
"github.myorg.com",
"gitlab.myorg.com",
"gitea.myorg.com",
"bitbucket.myorg.com",
"azuredevops.myorg.com",
SCMConfig: SCMConfig{
allowedSCMProviders: []string{
"github.myorg.com",
"gitlab.myorg.com",
"gitea.myorg.com",
"bitbucket.myorg.com",
"azuredevops.myorg.com",
},
enableSCMProviders: true,
},
enableSCMProviders: true,
}
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
@@ -282,16 +209,17 @@ func TestAllowedSCMProvider(t *testing.T) {
},
}
_, err := scmGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo)
_, err := scmGenerator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo, nil)
assert.Error(t, err, "Must return an error")
assert.ErrorAs(t, err, testCaseCopy.expectedError)
require.Error(t, err, "Must return an error")
var expectedError ErrDisallowedSCMProvider
assert.ErrorAs(t, err, &expectedError)
})
}
}
func TestSCMProviderDisabled_SCMGenerator(t *testing.T) {
generator := &SCMProviderGenerator{enableSCMProviders: false}
generator := &SCMProviderGenerator{SCMConfig: SCMConfig{enableSCMProviders: false}}
applicationSetInfo := argoprojiov1alpha1.ApplicationSet{
ObjectMeta: metav1.ObjectMeta{
@@ -308,6 +236,6 @@ func TestSCMProviderDisabled_SCMGenerator(t *testing.T) {
},
}
_, err := generator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo)
_, err := generator.GenerateParams(&applicationSetInfo.Spec.Generators[0], &applicationSetInfo, nil)
assert.ErrorIs(t, err, ErrSCMProvidersDisabled)
}

View File

@@ -0,0 +1,49 @@
package generators
import (
"context"
"k8s.io/client-go/dynamic"
"k8s.io/client-go/kubernetes"
"sigs.k8s.io/controller-runtime/pkg/client"
"github.com/argoproj/argo-cd/v2/applicationset/services"
)
func GetGenerators(ctx context.Context, c client.Client, k8sClient kubernetes.Interface, namespace string, argoCDService services.Repos, dynamicClient dynamic.Interface, scmConfig SCMConfig) map[string]Generator {
terminalGenerators := map[string]Generator{
"List": NewListGenerator(),
"Clusters": NewClusterGenerator(c, ctx, k8sClient, namespace),
"Git": NewGitGenerator(argoCDService, namespace),
"SCMProvider": NewSCMProviderGenerator(c, scmConfig),
"ClusterDecisionResource": NewDuckTypeGenerator(ctx, dynamicClient, k8sClient, namespace),
"PullRequest": NewPullRequestGenerator(c, scmConfig),
"Plugin": NewPluginGenerator(c, ctx, k8sClient, namespace),
}
nestedGenerators := map[string]Generator{
"List": terminalGenerators["List"],
"Clusters": terminalGenerators["Clusters"],
"Git": terminalGenerators["Git"],
"SCMProvider": terminalGenerators["SCMProvider"],
"ClusterDecisionResource": terminalGenerators["ClusterDecisionResource"],
"PullRequest": terminalGenerators["PullRequest"],
"Plugin": terminalGenerators["Plugin"],
"Matrix": NewMatrixGenerator(terminalGenerators),
"Merge": NewMergeGenerator(terminalGenerators),
}
topLevelGenerators := map[string]Generator{
"List": terminalGenerators["List"],
"Clusters": terminalGenerators["Clusters"],
"Git": terminalGenerators["Git"],
"SCMProvider": terminalGenerators["SCMProvider"],
"ClusterDecisionResource": terminalGenerators["ClusterDecisionResource"],
"PullRequest": terminalGenerators["PullRequest"],
"Plugin": terminalGenerators["Plugin"],
"Matrix": NewMatrixGenerator(nestedGenerators),
"Merge": NewMergeGenerator(nestedGenerators),
}
return topLevelGenerators
}

View File

@@ -12,7 +12,6 @@ func appendTemplatedValues(values map[string]string, params map[string]interface
for key, value := range values {
result, err := replaceTemplatedString(value, params, useGoTemplate, goTemplateOptions)
if err != nil {
return fmt.Errorf("failed to replace templated string: %w", err)
}

View File

@@ -4,6 +4,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestValueInterpolation(t *testing.T) {
@@ -53,10 +54,9 @@ func TestValueInterpolation(t *testing.T) {
}
for _, testCase := range testCases {
t.Run(testCase.name, func(t *testing.T) {
err := appendTemplatedValues(testCase.values, testCase.params, false, nil)
assert.NoError(t, err)
require.NoError(t, err)
assert.EqualValues(t, testCase.expected, testCase.params)
})
}
@@ -115,10 +115,9 @@ func TestValueInterpolationWithGoTemplating(t *testing.T) {
}
for _, testCase := range testCases {
t.Run(testCase.name, func(t *testing.T) {
err := appendTemplatedValues(testCase.values, testCase.params, true, nil)
assert.NoError(t, err)
require.NoError(t, err)
assert.EqualValues(t, testCase.expected, testCase.params)
})
}

View File

@@ -0,0 +1,22 @@
package metrics
import (
"github.com/prometheus/client_golang/prometheus"
ctrlclient "sigs.k8s.io/controller-runtime/pkg/client"
)
// Fake implementation for testing
func NewFakeAppsetMetrics(client ctrlclient.WithWatch) *ApplicationsetMetrics {
reconcileHistogram := prometheus.NewHistogramVec(
prometheus.HistogramOpts{
Name: "argocd_appset_reconcile",
Help: "Application reconciliation performance in seconds.",
// Buckets can be set later on after observing median time
},
[]string{"name", "namespace"},
)
return &ApplicationsetMetrics{
reconcileHistogram: reconcileHistogram,
}
}

View File

@@ -0,0 +1,131 @@
package metrics
import (
"time"
"github.com/prometheus/client_golang/prometheus"
"k8s.io/apimachinery/pkg/labels"
"sigs.k8s.io/controller-runtime/pkg/metrics"
argoappv1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
applisters "github.com/argoproj/argo-cd/v2/pkg/client/listers/application/v1alpha1"
metricsutil "github.com/argoproj/argo-cd/v2/util/metrics"
)
var (
descAppsetLabels *prometheus.Desc
descAppsetDefaultLabels = []string{"namespace", "name"}
descAppsetInfo = prometheus.NewDesc(
"argocd_appset_info",
"Information about applicationset",
append(descAppsetDefaultLabels, "resource_update_status"),
nil,
)
descAppsetGeneratedApps = prometheus.NewDesc(
"argocd_appset_owned_applications",
"Number of applications owned by the applicationset",
descAppsetDefaultLabels,
nil,
)
)
type ApplicationsetMetrics struct {
reconcileHistogram *prometheus.HistogramVec
}
type appsetCollector struct {
lister applisters.ApplicationSetLister
// appsClientSet appclientset.Interface
labels []string
filter func(appset *argoappv1.ApplicationSet) bool
}
func NewApplicationsetMetrics(appsetLister applisters.ApplicationSetLister, appsetLabels []string, appsetFilter func(appset *argoappv1.ApplicationSet) bool) ApplicationsetMetrics {
reconcileHistogram := prometheus.NewHistogramVec(
prometheus.HistogramOpts{
Name: "argocd_appset_reconcile",
Help: "Application reconciliation performance in seconds.",
// Buckets can be set later on after observing median time
},
descAppsetDefaultLabels,
)
appsetCollector := newAppsetCollector(appsetLister, appsetLabels, appsetFilter)
// Register collectors and metrics
metrics.Registry.MustRegister(reconcileHistogram)
metrics.Registry.MustRegister(appsetCollector)
return ApplicationsetMetrics{
reconcileHistogram: reconcileHistogram,
}
}
func (m *ApplicationsetMetrics) ObserveReconcile(appset *argoappv1.ApplicationSet, duration time.Duration) {
m.reconcileHistogram.WithLabelValues(appset.Namespace, appset.Name).Observe(duration.Seconds())
}
func newAppsetCollector(lister applisters.ApplicationSetLister, labels []string, filter func(appset *argoappv1.ApplicationSet) bool) *appsetCollector {
descAppsetDefaultLabels = []string{"namespace", "name"}
if len(labels) > 0 {
descAppsetLabels = prometheus.NewDesc(
"argocd_appset_labels",
"Applicationset labels translated to Prometheus labels",
append(descAppsetDefaultLabels, metricsutil.NormalizeLabels("label", labels)...),
nil,
)
}
return &appsetCollector{
lister: lister,
labels: labels,
filter: filter,
}
}
// Describe implements the prometheus.Collector interface
func (c *appsetCollector) Describe(ch chan<- *prometheus.Desc) {
ch <- descAppsetInfo
ch <- descAppsetGeneratedApps
if len(c.labels) > 0 {
ch <- descAppsetLabels
}
}
// Collect implements the prometheus.Collector interface
func (c *appsetCollector) Collect(ch chan<- prometheus.Metric) {
appsets, _ := c.lister.List(labels.NewSelector())
for _, appset := range appsets {
if c.filter(appset) {
collectAppset(appset, c.labels, ch)
}
}
}
func collectAppset(appset *argoappv1.ApplicationSet, labelsToCollect []string, ch chan<- prometheus.Metric) {
labelValues := make([]string, 0)
commonLabelValues := []string{appset.Namespace, appset.Name}
for _, label := range labelsToCollect {
labelValues = append(labelValues, appset.GetLabels()[label])
}
resourceUpdateStatus := "Unknown"
for _, condition := range appset.Status.Conditions {
if condition.Type == argoappv1.ApplicationSetConditionResourcesUpToDate {
resourceUpdateStatus = condition.Reason
}
}
if len(labelsToCollect) > 0 {
ch <- prometheus.MustNewConstMetric(descAppsetLabels, prometheus.GaugeValue, 1, append(commonLabelValues, labelValues...)...)
}
ch <- prometheus.MustNewConstMetric(descAppsetInfo, prometheus.GaugeValue, 1, appset.Namespace, appset.Name, resourceUpdateStatus)
ch <- prometheus.MustNewConstMetric(descAppsetGeneratedApps, prometheus.GaugeValue, float64(len(appset.Status.Resources)), appset.Namespace, appset.Name)
}

View File

@@ -0,0 +1,256 @@
package metrics
import (
"net/http"
"net/http/httptest"
"strings"
"testing"
"time"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
argoappv1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
"github.com/prometheus/client_golang/prometheus/promhttp"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"k8s.io/apimachinery/pkg/runtime"
ctrlclient "sigs.k8s.io/controller-runtime/pkg/client"
fake "sigs.k8s.io/controller-runtime/pkg/client/fake"
prometheus "github.com/prometheus/client_golang/prometheus"
metricsutil "github.com/argoproj/argo-cd/v2/util/metrics"
"sigs.k8s.io/controller-runtime/pkg/metrics"
"sigs.k8s.io/yaml"
)
var (
applicationsetNamespaces = []string{"argocd", "test-namespace1"}
filter = func(appset *argoappv1.ApplicationSet) bool {
return utils.IsNamespaceAllowed(applicationsetNamespaces, appset.Namespace)
}
collectedLabels = []string{"included/test"}
)
const fakeAppsetList = `
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
name: test1
namespace: argocd
labels:
included/test: test
not-included.label/test: test
spec:
generators:
- git:
directories:
- path: test/*
repoURL: https://github.com/test/test.git
revision: HEAD
template:
metadata:
name: '{{.path.basename}}'
spec:
destination:
namespace: '{{.path.basename}}'
server: https://kubernetes.default.svc
project: default
source:
path: '{{.path.path}}'
repoURL: https://github.com/test/test.git
targetRevision: HEAD
status:
resources:
- group: argoproj.io
health:
status: Missing
kind: Application
name: test-app1
namespace: argocd
status: OutOfSync
version: v1alpha1
- group: argoproj.io
health:
status: Missing
kind: Application
name: test-app2
namespace: argocd
status: OutOfSync
version: v1alpha1
conditions:
- lastTransitionTime: "2024-01-01T00:00:00Z"
message: Successfully generated parameters for all Applications
reason: ApplicationSetUpToDate
status: "False"
type: ErrorOccurred
- lastTransitionTime: "2024-01-01T00:00:00Z"
message: Successfully generated parameters for all Applications
reason: ParametersGenerated
status: "True"
type: ParametersGenerated
- lastTransitionTime: "2024-01-01T00:00:00Z"
message: ApplicationSet up to date
reason: ApplicationSetUpToDate
status: "True"
type: ResourcesUpToDate
---
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
name: test2
namespace: argocd
labels:
not-included.label/test: test
spec:
generators:
- git:
directories:
- path: test/*
repoURL: https://github.com/test/test.git
revision: HEAD
template:
metadata:
name: '{{.path.basename}}'
spec:
destination:
namespace: '{{.path.basename}}'
server: https://kubernetes.default.svc
project: default
source:
path: '{{.path.path}}'
repoURL: https://github.com/test/test.git
targetRevision: HEAD
---
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
name: should-be-filtered-out
namespace: not-allowed
spec:
generators:
- git:
directories:
- path: test/*
repoURL: https://github.com/test/test.git
revision: HEAD
template:
metadata:
name: '{{.path.basename}}'
spec:
destination:
namespace: '{{.path.basename}}'
server: https://kubernetes.default.svc
project: default
source:
path: '{{.path.path}}'
repoURL: https://github.com/test/test.git
targetRevision: HEAD
`
func newFakeAppsets(fakeAppsetYAML string) []argoappv1.ApplicationSet {
var results []argoappv1.ApplicationSet
appsetRawYamls := strings.Split(fakeAppsetYAML, "---")
for _, appsetRawYaml := range appsetRawYamls {
var appset argoappv1.ApplicationSet
err := yaml.Unmarshal([]byte(appsetRawYaml), &appset)
if err != nil {
panic(err)
}
results = append(results, appset)
}
return results
}
func TestApplicationsetCollector(t *testing.T) {
appsetList := newFakeAppsets(fakeAppsetList)
client := initializeClient(appsetList)
metrics.Registry = prometheus.NewRegistry()
appsetCollector := newAppsetCollector(utils.NewAppsetLister(client), collectedLabels, filter)
metrics.Registry.MustRegister(appsetCollector)
req, err := http.NewRequest(http.MethodGet, "/metrics", nil)
require.NoError(t, err)
rr := httptest.NewRecorder()
handler := promhttp.HandlerFor(metrics.Registry, promhttp.HandlerOpts{})
handler.ServeHTTP(rr, req)
assert.Equal(t, http.StatusOK, rr.Code)
// Test correct appset_info and owned applications
assert.Contains(t, rr.Body.String(), `
argocd_appset_info{name="test1",namespace="argocd",resource_update_status="ApplicationSetUpToDate"} 1
`)
assert.Contains(t, rr.Body.String(), `
argocd_appset_owned_applications{name="test1",namespace="argocd"} 2
`)
// Test labels collection - should not include labels not included in the list of collected labels and include the ones that do.
assert.Contains(t, rr.Body.String(), `
argocd_appset_labels{label_included_test="test",name="test1",namespace="argocd"} 1
`)
assert.NotContains(t, rr.Body.String(), normalizeLabel("not-included.label/test"))
// If collected label is not present on the applicationset the value should be empty
assert.Contains(t, rr.Body.String(), `
argocd_appset_labels{label_included_test="",name="test2",namespace="argocd"} 1
`)
// If ResourcesUpToDate condition is not present on the applicationset the status should be reported as 'Unknown'
assert.Contains(t, rr.Body.String(), `
argocd_appset_info{name="test2",namespace="argocd",resource_update_status="Unknown"} 1
`)
// If there are no resources on the applicationset the owned application gague should return 0
assert.Contains(t, rr.Body.String(), `
argocd_appset_owned_applications{name="test2",namespace="argocd"} 0
`)
// Test that filter is working
assert.NotContains(t, rr.Body.String(), `name="should-be-filtered-out"`)
}
func TestObserveReconcile(t *testing.T) {
appsetList := newFakeAppsets(fakeAppsetList)
client := initializeClient(appsetList)
metrics.Registry = prometheus.NewRegistry()
appsetMetrics := NewApplicationsetMetrics(utils.NewAppsetLister(client), collectedLabels, filter)
req, err := http.NewRequest(http.MethodGet, "/metrics", nil)
require.NoError(t, err)
rr := httptest.NewRecorder()
handler := promhttp.HandlerFor(metrics.Registry, promhttp.HandlerOpts{})
appsetMetrics.ObserveReconcile(&appsetList[0], 5*time.Second)
handler.ServeHTTP(rr, req)
assert.Contains(t, rr.Body.String(), `
argocd_appset_reconcile_sum{name="test1",namespace="argocd"} 5
`)
// If there are no resources on the applicationset the owned application gague should return 0
assert.Contains(t, rr.Body.String(), `
argocd_appset_reconcile_count{name="test1",namespace="argocd"} 1
`)
}
func initializeClient(appsets []argoappv1.ApplicationSet) ctrlclient.WithWatch {
scheme := runtime.NewScheme()
err := argoappv1.AddToScheme(scheme)
if err != nil {
panic(err)
}
var clientObjects []ctrlclient.Object
for _, appset := range appsets {
clientObjects = append(clientObjects, appset.DeepCopy())
}
return fake.NewClientBuilder().WithScheme(scheme).WithObjects(clientObjects...).Build()
}
func normalizeLabel(label string) string {
return metricsutil.NormalizeLabels("label", []string{label})[0]
}

View File

@@ -5,7 +5,7 @@ import (
"net/http"
"github.com/bradleyfalzon/ghinstallation/v2"
"github.com/google/go-github/v35/github"
"github.com/google/go-github/v66/github"
"github.com/argoproj/argo-cd/v2/applicationset/services/github_app_auth"
)
@@ -26,7 +26,7 @@ func Client(g github_app_auth.Authentication, url string) (*github.Client, error
} else {
rt.BaseURL = url
httpClient := http.Client{Transport: rt}
client, err = github.NewEnterpriseClient(url, url, &httpClient)
client, err = github.NewClient(&httpClient).WithEnterpriseURLs(url, url)
if err != nil {
return nil, fmt.Errorf("failed to create github enterprise client: %w", err)
}

View File

@@ -66,7 +66,6 @@ func newClient(baseURL string, options ...ClientOptionFunc) (*Client, error) {
}
func (c *Client) NewRequest(method, path string, body interface{}, options []ClientOptionFunc) (*http.Request, error) {
// Make sure the given URL end with a slash
if !strings.HasSuffix(c.baseURL, "/") {
c.baseURL += "/"
@@ -135,14 +134,13 @@ func (c *Client) Do(ctx context.Context, req *http.Request, v interface{}) (*htt
// CheckResponse checks the API response for errors, and returns them if present.
func CheckResponse(resp *http.Response) error {
if c := resp.StatusCode; 200 <= c && c <= 299 {
if c := resp.StatusCode; http.StatusOK <= c && c < http.StatusMultipleChoices {
return nil
}
data, err := io.ReadAll(resp.Body)
if err != nil {
return fmt.Errorf("API error with status code %d: %v", resp.StatusCode, err)
return fmt.Errorf("API error with status code %d: %w", resp.StatusCode, err)
}
var raw map[string]interface{}

View File

@@ -10,6 +10,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestClient(t *testing.T) {
@@ -17,17 +18,14 @@ func TestClient(t *testing.T) {
w.WriteHeader(http.StatusOK)
_, err := w.Write([]byte("Hello, World!"))
if err != nil {
assert.NoError(t, fmt.Errorf("Error Write %v", err))
assert.NoError(t, fmt.Errorf("Error Write %w", err))
}
}))
defer server.Close()
var clientOptionFns []ClientOptionFunc
_, err := NewClient(server.URL, clientOptionFns...)
if err != nil {
t.Fatalf("Failed to create client: %v", err)
}
require.NoError(t, err, "Failed to create client")
}
func TestClientDo(t *testing.T) {
@@ -62,7 +60,7 @@ func TestClientDo(t *testing.T) {
"key3": 123
}]`))
if err != nil {
assert.NoError(t, fmt.Errorf("Error Write %v", err))
assert.NoError(t, fmt.Errorf("Error Write %w", err))
}
})),
clientOptionFns: nil,
@@ -78,7 +76,7 @@ func TestClientDo(t *testing.T) {
"key3": float64(123),
},
},
expectedCode: 200,
expectedCode: http.StatusOK,
expectedError: nil,
},
{
@@ -105,12 +103,12 @@ func TestClientDo(t *testing.T) {
"key3": 123
}]`))
if err != nil {
assert.NoError(t, fmt.Errorf("Error Write %v", err))
assert.NoError(t, fmt.Errorf("Error Write %w", err))
}
})),
clientOptionFns: nil,
expected: []map[string]interface{}(nil),
expectedCode: 401,
expectedCode: http.StatusUnauthorized,
expectedError: fmt.Errorf("API error with status code 401: "),
},
} {
@@ -119,16 +117,10 @@ func TestClientDo(t *testing.T) {
defer cc.fakeServer.Close()
client, err := NewClient(cc.fakeServer.URL, cc.clientOptionFns...)
if err != nil {
t.Fatalf("NewClient returned unexpected error: %v", err)
}
require.NoError(t, err, "NewClient returned unexpected error")
req, err := client.NewRequest("POST", "", cc.params, nil)
if err != nil {
t.Fatalf("NewRequest returned unexpected error: %v", err)
}
require.NoError(t, err, "NewRequest returned unexpected error")
var data []map[string]interface{}
@@ -137,8 +129,8 @@ func TestClientDo(t *testing.T) {
if cc.expectedError != nil {
assert.EqualError(t, err, cc.expectedError.Error())
} else {
assert.Equal(t, resp.StatusCode, cc.expectedCode)
assert.Equal(t, data, cc.expected)
assert.Equal(t, cc.expectedCode, resp.StatusCode)
assert.Equal(t, cc.expected, data)
assert.NoError(t, err)
}
})
@@ -152,12 +144,5 @@ func TestCheckResponse(t *testing.T) {
}
err := CheckResponse(resp)
if err == nil {
t.Error("Expected an error, got nil")
}
expected := "API error with status code 400: invalid_request"
if err.Error() != expected {
t.Errorf("Expected error '%s', got '%s'", expected, err.Error())
}
require.EqualError(t, err, "API error with status code 400: invalid_request")
}

View File

@@ -1,4 +1,4 @@
// Code generated by mockery v2.25.1. DO NOT EDIT.
// Code generated by mockery v2.43.2. DO NOT EDIT.
package mocks
@@ -13,25 +13,29 @@ type Repos struct {
mock.Mock
}
// GetDirectories provides a mock function with given fields: ctx, repoURL, revision, noRevisionCache
func (_m *Repos) GetDirectories(ctx context.Context, repoURL string, revision string, noRevisionCache bool) ([]string, error) {
ret := _m.Called(ctx, repoURL, revision, noRevisionCache)
// GetDirectories provides a mock function with given fields: ctx, repoURL, revision, noRevisionCache, verifyCommit
func (_m *Repos) GetDirectories(ctx context.Context, repoURL string, revision string, noRevisionCache bool, verifyCommit bool) ([]string, error) {
ret := _m.Called(ctx, repoURL, revision, noRevisionCache, verifyCommit)
if len(ret) == 0 {
panic("no return value specified for GetDirectories")
}
var r0 []string
var r1 error
if rf, ok := ret.Get(0).(func(context.Context, string, string, bool) ([]string, error)); ok {
return rf(ctx, repoURL, revision, noRevisionCache)
if rf, ok := ret.Get(0).(func(context.Context, string, string, bool, bool) ([]string, error)); ok {
return rf(ctx, repoURL, revision, noRevisionCache, verifyCommit)
}
if rf, ok := ret.Get(0).(func(context.Context, string, string, bool) []string); ok {
r0 = rf(ctx, repoURL, revision, noRevisionCache)
if rf, ok := ret.Get(0).(func(context.Context, string, string, bool, bool) []string); ok {
r0 = rf(ctx, repoURL, revision, noRevisionCache, verifyCommit)
} else {
if ret.Get(0) != nil {
r0 = ret.Get(0).([]string)
}
}
if rf, ok := ret.Get(1).(func(context.Context, string, string, bool) error); ok {
r1 = rf(ctx, repoURL, revision, noRevisionCache)
if rf, ok := ret.Get(1).(func(context.Context, string, string, bool, bool) error); ok {
r1 = rf(ctx, repoURL, revision, noRevisionCache, verifyCommit)
} else {
r1 = ret.Error(1)
}
@@ -39,25 +43,29 @@ func (_m *Repos) GetDirectories(ctx context.Context, repoURL string, revision st
return r0, r1
}
// GetFiles provides a mock function with given fields: ctx, repoURL, revision, pattern, noRevisionCache
func (_m *Repos) GetFiles(ctx context.Context, repoURL string, revision string, pattern string, noRevisionCache bool) (map[string][]byte, error) {
ret := _m.Called(ctx, repoURL, revision, pattern, noRevisionCache)
// GetFiles provides a mock function with given fields: ctx, repoURL, revision, pattern, noRevisionCache, verifyCommit
func (_m *Repos) GetFiles(ctx context.Context, repoURL string, revision string, pattern string, noRevisionCache bool, verifyCommit bool) (map[string][]byte, error) {
ret := _m.Called(ctx, repoURL, revision, pattern, noRevisionCache, verifyCommit)
if len(ret) == 0 {
panic("no return value specified for GetFiles")
}
var r0 map[string][]byte
var r1 error
if rf, ok := ret.Get(0).(func(context.Context, string, string, string, bool) (map[string][]byte, error)); ok {
return rf(ctx, repoURL, revision, pattern, noRevisionCache)
if rf, ok := ret.Get(0).(func(context.Context, string, string, string, bool, bool) (map[string][]byte, error)); ok {
return rf(ctx, repoURL, revision, pattern, noRevisionCache, verifyCommit)
}
if rf, ok := ret.Get(0).(func(context.Context, string, string, string, bool) map[string][]byte); ok {
r0 = rf(ctx, repoURL, revision, pattern, noRevisionCache)
if rf, ok := ret.Get(0).(func(context.Context, string, string, string, bool, bool) map[string][]byte); ok {
r0 = rf(ctx, repoURL, revision, pattern, noRevisionCache, verifyCommit)
} else {
if ret.Get(0) != nil {
r0 = ret.Get(0).(map[string][]byte)
}
}
if rf, ok := ret.Get(1).(func(context.Context, string, string, string, bool) error); ok {
r1 = rf(ctx, repoURL, revision, pattern, noRevisionCache)
if rf, ok := ret.Get(1).(func(context.Context, string, string, string, bool, bool) error); ok {
r1 = rf(ctx, repoURL, revision, pattern, noRevisionCache, verifyCommit)
} else {
r1 = ret.Error(1)
}
@@ -65,13 +73,12 @@ func (_m *Repos) GetFiles(ctx context.Context, repoURL string, revision string,
return r0, r1
}
type mockConstructorTestingTNewRepos interface {
// NewRepos creates a new instance of Repos. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
// The first argument is typically a *testing.T value.
func NewRepos(t interface {
mock.TestingT
Cleanup(func())
}
// NewRepos creates a new instance of Repos. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
func NewRepos(t mockConstructorTestingTNewRepos) *Repos {
}) *Repos {
mock := &Repos{}
mock.Mock.Test(t)

View File

@@ -1,57 +0,0 @@
// Code generated by mockery v2.21.1. DO NOT EDIT.
package mocks
import (
context "context"
mock "github.com/stretchr/testify/mock"
v1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
// RepositoryDB is an autogenerated mock type for the RepositoryDB type
type RepositoryDB struct {
mock.Mock
}
// GetRepository provides a mock function with given fields: ctx, url
func (_m *RepositoryDB) GetRepository(ctx context.Context, url string) (*v1alpha1.Repository, error) {
ret := _m.Called(ctx, url)
var r0 *v1alpha1.Repository
var r1 error
if rf, ok := ret.Get(0).(func(context.Context, string) (*v1alpha1.Repository, error)); ok {
return rf(ctx, url)
}
if rf, ok := ret.Get(0).(func(context.Context, string) *v1alpha1.Repository); ok {
r0 = rf(ctx, url)
} else {
if ret.Get(0) != nil {
r0 = ret.Get(0).(*v1alpha1.Repository)
}
}
if rf, ok := ret.Get(1).(func(context.Context, string) error); ok {
r1 = rf(ctx, url)
} else {
r1 = ret.Error(1)
}
return r0, r1
}
type mockConstructorTestingTNewRepositoryDB interface {
mock.TestingT
Cleanup(func())
}
// NewRepositoryDB creates a new instance of RepositoryDB. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
func NewRepositoryDB(t mockConstructorTestingTNewRepositoryDB) *RepositoryDB {
mock := &RepositoryDB{}
mock.Mock.Test(t)
t.Cleanup(func() { mock.AssertExpectations(t) })
return mock
}

View File

@@ -45,7 +45,7 @@ func NewPluginService(ctx context.Context, appSetName string, baseURL string, to
client, err := internalhttp.NewClient(baseURL, clientOptionFns...)
if err != nil {
return nil, fmt.Errorf("error creating plugin client: %v", err)
return nil, fmt.Errorf("error creating plugin client: %w", err)
}
return &Service{
@@ -56,17 +56,15 @@ func NewPluginService(ctx context.Context, appSetName string, baseURL string, to
func (p *Service) List(ctx context.Context, parameters v1alpha1.PluginParameters) (*ServiceResponse, error) {
req, err := p.client.NewRequest(http.MethodPost, "api/v1/getparams.execute", ServiceRequest{ApplicationSetName: p.appSetName, Input: v1alpha1.PluginInput{Parameters: parameters}}, nil)
if err != nil {
return nil, fmt.Errorf("NewRequest returned unexpected error: %v", err)
return nil, fmt.Errorf("NewRequest returned unexpected error: %w", err)
}
var data ServiceResponse
_, err = p.client.Do(ctx, req, &data)
if err != nil {
return nil, fmt.Errorf("error get api '%s': %v", p.appSetName, err)
return nil, fmt.Errorf("error get api '%s': %w", p.appSetName, err)
}
return &data, err

View File

@@ -9,6 +9,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestPlugin(t *testing.T) {
@@ -23,30 +24,21 @@ func TestPlugin(t *testing.T) {
return
}
_, err := w.Write([]byte(expectedJSON))
if err != nil {
assert.NoError(t, fmt.Errorf("Error Write %v", err))
assert.NoError(t, fmt.Errorf("Error Write %w", err))
}
})
ts := httptest.NewServer(handler)
defer ts.Close()
client, err := NewPluginService(context.Background(), "plugin-test", ts.URL, token, 0)
if err != nil {
t.Errorf("unexpected error: %v", err)
}
require.NoError(t, err)
data, err := client.List(context.Background(), nil)
if err != nil {
t.Errorf("unexpected error: %v", err)
}
require.NoError(t, err)
var expectedData ServiceResponse
err = json.Unmarshal([]byte(expectedJSON), &expectedData)
if err != nil {
t.Fatal(err)
}
require.NoError(t, err)
assert.Equal(t, &expectedData, data)
}

View File

@@ -36,8 +36,10 @@ type AzureDevOpsService struct {
labels []string
}
var _ PullRequestService = (*AzureDevOpsService)(nil)
var _ AzureDevOpsClientFactory = &devopsFactoryImpl{}
var (
_ PullRequestService = (*AzureDevOpsService)(nil)
_ AzureDevOpsClientFactory = &devopsFactoryImpl{}
)
func NewAzureDevOpsService(ctx context.Context, token, url, organization, project, repo string, labels []string) (PullRequestService, error) {
organizationUrl := buildURL(url, organization)
@@ -80,6 +82,7 @@ func (a *AzureDevOpsService) List(ctx context.Context) ([]*PullRequest, error) {
pr.Repository.Name == nil ||
pr.PullRequestId == nil ||
pr.SourceRefName == nil ||
pr.TargetRefName == nil ||
pr.LastMergeSourceCommit == nil ||
pr.LastMergeSourceCommit.CommitId == nil {
continue
@@ -92,10 +95,13 @@ func (a *AzureDevOpsService) List(ctx context.Context) ([]*PullRequest, error) {
if *pr.Repository.Name == a.repo {
pullRequests = append(pullRequests, &PullRequest{
Number: *pr.PullRequestId,
Branch: strings.Replace(*pr.SourceRefName, "refs/heads/", "", 1),
HeadSHA: *pr.LastMergeSourceCommit.CommitId,
Labels: azureDevOpsLabels,
Number: *pr.PullRequestId,
Title: *pr.Title,
Branch: strings.Replace(*pr.SourceRefName, "refs/heads/", "", 1),
TargetBranch: strings.Replace(*pr.TargetRefName, "refs/heads/", "", 1),
HeadSHA: *pr.LastMergeSourceCommit.CommitId,
Labels: azureDevOpsLabels,
Author: strings.Split(*pr.CreatedBy.UniqueName, "@")[0], // Get the part before the @ in the email-address
})
}
}

View File

@@ -4,10 +4,13 @@ import (
"context"
"testing"
"github.com/microsoft/azure-devops-go-api/azuredevops/webapi"
"github.com/microsoft/azure-devops-go-api/azuredevops/core"
git "github.com/microsoft/azure-devops-go-api/azuredevops/git"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/mock"
"github.com/stretchr/testify/require"
azureMock "github.com/argoproj/argo-cd/v2/applicationset/services/scm_provider/azure_devops/git/mocks"
)
@@ -28,6 +31,10 @@ func createLabelsPtr(x []core.WebApiTagDefinition) *[]core.WebApiTagDefinition {
return &x
}
func createUniqueNamePtr(x string) *string {
return &x
}
type AzureClientFactoryMock struct {
mock *mock.Mock
}
@@ -55,13 +62,17 @@ func TestListPullRequest(t *testing.T) {
teamProject := "myorg_project"
repoName := "myorg_project_repo"
pr_id := 123
pr_title := "feat(123)"
pr_head_sha := "cd4973d9d14a08ffe6b641a89a68891d6aac8056"
ctx := context.Background()
uniqueName := "testName"
pullRequestMock := []git.GitPullRequest{
{
PullRequestId: createIntPtr(pr_id),
Title: createStringPtr(pr_title),
SourceRefName: createStringPtr("refs/heads/feature-branch"),
TargetRefName: createStringPtr("refs/heads/main"),
LastMergeSourceCommit: &git.GitCommitRef{
CommitId: createStringPtr(pr_head_sha),
},
@@ -69,6 +80,9 @@ func TestListPullRequest(t *testing.T) {
Repository: &git.GitRepository{
Name: createStringPtr(repoName),
},
CreatedBy: &webapi.IdentityRef{
UniqueName: createUniqueNamePtr(uniqueName + "@example.com"),
},
},
}
@@ -90,11 +104,14 @@ func TestListPullRequest(t *testing.T) {
}
list, err := provider.List(ctx)
assert.NoError(t, err)
assert.Equal(t, 1, len(list))
require.NoError(t, err)
assert.Len(t, list, 1)
assert.Equal(t, "feature-branch", list[0].Branch)
assert.Equal(t, "main", list[0].TargetBranch)
assert.Equal(t, pr_head_sha, list[0].HeadSHA)
assert.Equal(t, "feat(123)", list[0].Title)
assert.Equal(t, pr_id, list[0].Number)
assert.Equal(t, uniqueName, list[0].Author)
}
func TestConvertLabes(t *testing.T) {
@@ -215,7 +232,7 @@ func TestBuildURL(t *testing.T) {
for _, tc := range testCases {
t.Run(tc.name, func(t *testing.T) {
result := buildURL(tc.url, tc.organization)
assert.Equal(t, result, tc.expected)
assert.Equal(t, tc.expected, result)
})
}
}

View File

@@ -17,7 +17,9 @@ type BitbucketCloudService struct {
type BitbucketCloudPullRequest struct {
ID int `json:"id"`
Title string `json:"title"`
Source BitbucketCloudPullRequestSource `json:"source"`
Author BitbucketCloudPullRequestAuthor `json:"author"`
}
type BitbucketCloudPullRequestSource struct {
@@ -33,6 +35,11 @@ type BitbucketCloudPullRequestSourceCommit struct {
Hash string `json:"hash"`
}
// Also have display_name and uuid, but don't plan to use them.
type BitbucketCloudPullRequestAuthor struct {
Nickname string `json:"nickname"`
}
type PullRequestResponse struct {
Page int32 `json:"page"`
Size int32 `json:"size"`
@@ -60,7 +67,7 @@ func parseUrl(uri string) (*url.URL, error) {
func NewBitbucketCloudServiceBasicAuth(baseUrl, username, password, owner, repositorySlug string) (PullRequestService, error) {
url, err := parseUrl(baseUrl)
if err != nil {
return nil, fmt.Errorf("error parsing base url of %s for %s/%s: %v", baseUrl, owner, repositorySlug, err)
return nil, fmt.Errorf("error parsing base url of %s for %s/%s: %w", baseUrl, owner, repositorySlug, err)
}
bitbucketClient := bitbucket.NewBasicAuth(username, password)
@@ -76,7 +83,7 @@ func NewBitbucketCloudServiceBasicAuth(baseUrl, username, password, owner, repos
func NewBitbucketCloudServiceBearerToken(baseUrl, bearerToken, owner, repositorySlug string) (PullRequestService, error) {
url, err := parseUrl(baseUrl)
if err != nil {
return nil, fmt.Errorf("error parsing base url of %s for %s/%s: %v", baseUrl, owner, repositorySlug, err)
return nil, fmt.Errorf("error parsing base url of %s for %s/%s: %w", baseUrl, owner, repositorySlug, err)
}
bitbucketClient := bitbucket.NewOAuthbearerToken(bearerToken)
@@ -102,7 +109,7 @@ func (b *BitbucketCloudService) List(_ context.Context) ([]*PullRequest, error)
response, err := b.client.Repositories.PullRequests.Gets(opts)
if err != nil {
return nil, fmt.Errorf("error listing pull requests for %s/%s: %v", b.owner, b.repositorySlug, err)
return nil, fmt.Errorf("error listing pull requests for %s/%s: %w", b.owner, b.repositorySlug, err)
}
resp, ok := response.(map[string]interface{})
@@ -117,20 +124,22 @@ func (b *BitbucketCloudService) List(_ context.Context) ([]*PullRequest, error)
jsonStr, err := json.Marshal(repoArray)
if err != nil {
return nil, fmt.Errorf("error marshalling response body to json: %v", err)
return nil, fmt.Errorf("error marshalling response body to json: %w", err)
}
var pulls []BitbucketCloudPullRequest
if err := json.Unmarshal(jsonStr, &pulls); err != nil {
return nil, fmt.Errorf("error unmarshalling json to type '[]BitbucketCloudPullRequest': %v", err)
return nil, fmt.Errorf("error unmarshalling json to type '[]BitbucketCloudPullRequest': %w", err)
}
pullRequests := []*PullRequest{}
for _, pull := range pulls {
pullRequests = append(pullRequests, &PullRequest{
Number: pull.ID,
Title: pull.Title,
Branch: pull.Source.Branch.Name,
HeadSHA: pull.Source.Commit.Hash,
Author: pull.Author.Nickname,
})
}

View File

@@ -9,11 +9,13 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
func defaultHandlerCloud(t *testing.T) func(http.ResponseWriter, *http.Request) {
t.Helper()
return func(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "application/json")
var err error
@@ -26,6 +28,7 @@ func defaultHandlerCloud(t *testing.T) func(http.ResponseWriter, *http.Request)
"values": [
{
"id": 101,
"title": "feat(foo-bar)",
"source": {
"branch": {
"name": "feature/foo-bar"
@@ -34,6 +37,9 @@ func defaultHandlerCloud(t *testing.T) func(http.ResponseWriter, *http.Request)
"type": "commit",
"hash": "1a8dd249c04a"
}
},
"author": {
"nickname": "testName"
}
}
]
@@ -51,26 +57,26 @@ func TestParseUrlEmptyUrl(t *testing.T) {
url, err := parseUrl("")
bitbucketUrl, _ := url.Parse("https://api.bitbucket.org/2.0")
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, bitbucketUrl, url)
}
func TestInvalidBaseUrlBasicAuthCloud(t *testing.T) {
_, err := NewBitbucketCloudServiceBasicAuth("http:// example.org", "user", "password", "OWNER", "REPO")
assert.Error(t, err)
require.Error(t, err)
}
func TestInvalidBaseUrlBearerTokenCloud(t *testing.T) {
_, err := NewBitbucketCloudServiceBearerToken("http:// example.org", "TOKEN", "OWNER", "REPO")
assert.Error(t, err)
require.Error(t, err)
}
func TestInvalidBaseUrlNoAuthCloud(t *testing.T) {
_, err := NewBitbucketCloudServiceNoAuth("http:// example.org", "OWNER", "REPO")
assert.Error(t, err)
require.Error(t, err)
}
func TestListPullRequestBearerTokenCloud(t *testing.T) {
@@ -80,13 +86,15 @@ func TestListPullRequestBearerTokenCloud(t *testing.T) {
}))
defer ts.Close()
svc, err := NewBitbucketCloudServiceBearerToken(ts.URL, "TOKEN", "OWNER", "REPO")
assert.NoError(t, err)
require.NoError(t, err)
pullRequests, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.NoError(t, err)
assert.Equal(t, 1, len(pullRequests))
require.NoError(t, err)
assert.Len(t, pullRequests, 1)
assert.Equal(t, 101, pullRequests[0].Number)
assert.Equal(t, "feat(foo-bar)", pullRequests[0].Title)
assert.Equal(t, "feature/foo-bar", pullRequests[0].Branch)
assert.Equal(t, "1a8dd249c04a", pullRequests[0].HeadSHA)
assert.Equal(t, "testName", pullRequests[0].Author)
}
func TestListPullRequestNoAuthCloud(t *testing.T) {
@@ -96,13 +104,15 @@ func TestListPullRequestNoAuthCloud(t *testing.T) {
}))
defer ts.Close()
svc, err := NewBitbucketCloudServiceNoAuth(ts.URL, "OWNER", "REPO")
assert.NoError(t, err)
require.NoError(t, err)
pullRequests, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.NoError(t, err)
assert.Equal(t, 1, len(pullRequests))
require.NoError(t, err)
assert.Len(t, pullRequests, 1)
assert.Equal(t, 101, pullRequests[0].Number)
assert.Equal(t, "feat(foo-bar)", pullRequests[0].Title)
assert.Equal(t, "feature/foo-bar", pullRequests[0].Branch)
assert.Equal(t, "1a8dd249c04a", pullRequests[0].HeadSHA)
assert.Equal(t, "testName", pullRequests[0].Author)
}
func TestListPullRequestBasicAuthCloud(t *testing.T) {
@@ -112,13 +122,15 @@ func TestListPullRequestBasicAuthCloud(t *testing.T) {
}))
defer ts.Close()
svc, err := NewBitbucketCloudServiceBasicAuth(ts.URL, "user", "password", "OWNER", "REPO")
assert.NoError(t, err)
require.NoError(t, err)
pullRequests, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.NoError(t, err)
assert.Equal(t, 1, len(pullRequests))
require.NoError(t, err)
assert.Len(t, pullRequests, 1)
assert.Equal(t, 101, pullRequests[0].Number)
assert.Equal(t, "feat(foo-bar)", pullRequests[0].Title)
assert.Equal(t, "feature/foo-bar", pullRequests[0].Branch)
assert.Equal(t, "1a8dd249c04a", pullRequests[0].HeadSHA)
assert.Equal(t, "testName", pullRequests[0].Author)
}
func TestListPullRequestPaginationCloud(t *testing.T) {
@@ -135,6 +147,7 @@ func TestListPullRequestPaginationCloud(t *testing.T) {
"values": [
{
"id": 101,
"title": "feat(101)",
"source": {
"branch": {
"name": "feature-101"
@@ -143,10 +156,14 @@ func TestListPullRequestPaginationCloud(t *testing.T) {
"type": "commit",
"hash": "1a8dd249c04a"
}
},
"author": {
"nickname": "testName"
}
},
{
"id": 102,
"title": "feat(102)",
"source": {
"branch": {
"name": "feature-102"
@@ -155,6 +172,9 @@ func TestListPullRequestPaginationCloud(t *testing.T) {
"type": "commit",
"hash": "4cf807e67a6d"
}
},
"author": {
"nickname": "testName"
}
}
]
@@ -168,6 +188,7 @@ func TestListPullRequestPaginationCloud(t *testing.T) {
"values": [
{
"id": 103,
"title": "feat(103)",
"source": {
"branch": {
"name": "feature-103"
@@ -176,6 +197,9 @@ func TestListPullRequestPaginationCloud(t *testing.T) {
"type": "commit",
"hash": "6344d9623e3b"
}
},
"author": {
"nickname": "testName"
}
}
]
@@ -189,35 +213,41 @@ func TestListPullRequestPaginationCloud(t *testing.T) {
}))
defer ts.Close()
svc, err := NewBitbucketCloudServiceNoAuth(ts.URL, "OWNER", "REPO")
assert.NoError(t, err)
require.NoError(t, err)
pullRequests, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.NoError(t, err)
assert.Equal(t, 3, len(pullRequests))
require.NoError(t, err)
assert.Len(t, pullRequests, 3)
assert.Equal(t, PullRequest{
Number: 101,
Title: "feat(101)",
Branch: "feature-101",
HeadSHA: "1a8dd249c04a",
Author: "testName",
}, *pullRequests[0])
assert.Equal(t, PullRequest{
Number: 102,
Title: "feat(102)",
Branch: "feature-102",
HeadSHA: "4cf807e67a6d",
Author: "testName",
}, *pullRequests[1])
assert.Equal(t, PullRequest{
Number: 103,
Title: "feat(103)",
Branch: "feature-103",
HeadSHA: "6344d9623e3b",
Author: "testName",
}, *pullRequests[2])
}
func TestListResponseErrorCloud(t *testing.T) {
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(500)
w.WriteHeader(http.StatusInternalServerError)
}))
defer ts.Close()
svc, _ := NewBitbucketCloudServiceNoAuth(ts.URL, "OWNER", "REPO")
_, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.Error(t, err)
require.Error(t, err)
}
func TestListResponseMalformedCloud(t *testing.T) {
@@ -241,7 +271,7 @@ func TestListResponseMalformedCloud(t *testing.T) {
defer ts.Close()
svc, _ := NewBitbucketCloudServiceNoAuth(ts.URL, "OWNER", "REPO")
_, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.Error(t, err)
require.Error(t, err)
}
func TestListResponseMalformedValuesCloud(t *testing.T) {
@@ -265,7 +295,7 @@ func TestListResponseMalformedValuesCloud(t *testing.T) {
defer ts.Close()
svc, _ := NewBitbucketCloudServiceNoAuth(ts.URL, "OWNER", "REPO")
_, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.Error(t, err)
require.Error(t, err)
}
func TestListResponseEmptyCloud(t *testing.T) {
@@ -288,9 +318,9 @@ func TestListResponseEmptyCloud(t *testing.T) {
}))
defer ts.Close()
svc, err := NewBitbucketCloudServiceNoAuth(ts.URL, "OWNER", "REPO")
assert.NoError(t, err)
require.NoError(t, err)
pullRequests, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.NoError(t, err)
require.NoError(t, err)
assert.Empty(t, pullRequests)
}
@@ -308,6 +338,7 @@ func TestListPullRequestBranchMatchCloud(t *testing.T) {
"values": [
{
"id": 101,
"title": "feat(101)",
"source": {
"branch": {
"name": "feature-101"
@@ -316,10 +347,14 @@ func TestListPullRequestBranchMatchCloud(t *testing.T) {
"type": "commit",
"hash": "1a8dd249c04a"
}
},
"author": {
"nickname": "testName"
}
},
{
"id": 200,
"title": "feat(200)",
"source": {
"branch": {
"name": "feature-200"
@@ -328,6 +363,9 @@ func TestListPullRequestBranchMatchCloud(t *testing.T) {
"type": "commit",
"hash": "4cf807e67a6d"
}
},
"author": {
"nickname": "testName"
}
}
]
@@ -341,6 +379,7 @@ func TestListPullRequestBranchMatchCloud(t *testing.T) {
"values": [
{
"id": 102,
"title": "feat(102)",
"source": {
"branch": {
"name": "feature-102"
@@ -349,6 +388,9 @@ func TestListPullRequestBranchMatchCloud(t *testing.T) {
"type": "commit",
"hash": "6344d9623e3b"
}
},
"author": {
"nickname": "testName"
}
}
]
@@ -363,48 +405,54 @@ func TestListPullRequestBranchMatchCloud(t *testing.T) {
defer ts.Close()
regexp := `feature-1[\d]{2}`
svc, err := NewBitbucketCloudServiceNoAuth(ts.URL, "OWNER", "REPO")
assert.NoError(t, err)
require.NoError(t, err)
pullRequests, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{
{
BranchMatch: &regexp,
},
})
assert.NoError(t, err)
assert.Equal(t, 2, len(pullRequests))
require.NoError(t, err)
assert.Len(t, pullRequests, 2)
assert.Equal(t, PullRequest{
Number: 101,
Title: "feat(101)",
Branch: "feature-101",
HeadSHA: "1a8dd249c04a",
Author: "testName",
}, *pullRequests[0])
assert.Equal(t, PullRequest{
Number: 102,
Title: "feat(102)",
Branch: "feature-102",
HeadSHA: "6344d9623e3b",
Author: "testName",
}, *pullRequests[1])
regexp = `.*2$`
svc, err = NewBitbucketCloudServiceNoAuth(ts.URL, "OWNER", "REPO")
assert.NoError(t, err)
require.NoError(t, err)
pullRequests, err = ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{
{
BranchMatch: &regexp,
},
})
assert.NoError(t, err)
assert.Equal(t, 1, len(pullRequests))
require.NoError(t, err)
assert.Len(t, pullRequests, 1)
assert.Equal(t, PullRequest{
Number: 102,
Title: "feat(102)",
Branch: "feature-102",
HeadSHA: "6344d9623e3b",
Author: "testName",
}, *pullRequests[0])
regexp = `[\d{2}`
svc, err = NewBitbucketCloudServiceNoAuth(ts.URL, "OWNER", "REPO")
assert.NoError(t, err)
require.NoError(t, err)
_, err = ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{
{
BranchMatch: &regexp,
},
})
assert.Error(t, err)
require.Error(t, err)
}

View File

@@ -3,10 +3,12 @@ package pull_request
import (
"context"
"fmt"
"net/http"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
bitbucketv1 "github.com/gfleury/go-bitbucket-v1"
log "github.com/sirupsen/logrus"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
)
type BitbucketService struct {
@@ -19,7 +21,7 @@ type BitbucketService struct {
var _ PullRequestService = (*BitbucketService)(nil)
func NewBitbucketServiceBasicAuth(ctx context.Context, username, password, url, projectKey, repositorySlug string) (PullRequestService, error) {
func NewBitbucketServiceBasicAuth(ctx context.Context, username, password, url, projectKey, repositorySlug string, scmRootCAPath string, insecure bool, caCerts []byte) (PullRequestService, error) {
bitbucketConfig := bitbucketv1.NewConfiguration(url)
// Avoid the XSRF check
bitbucketConfig.AddDefaultHeader("x-atlassian-token", "no-check")
@@ -29,15 +31,29 @@ func NewBitbucketServiceBasicAuth(ctx context.Context, username, password, url,
UserName: username,
Password: password,
})
return newBitbucketService(ctx, bitbucketConfig, projectKey, repositorySlug)
return newBitbucketService(ctx, bitbucketConfig, projectKey, repositorySlug, scmRootCAPath, insecure, caCerts)
}
func NewBitbucketServiceNoAuth(ctx context.Context, url, projectKey, repositorySlug string) (PullRequestService, error) {
return newBitbucketService(ctx, bitbucketv1.NewConfiguration(url), projectKey, repositorySlug)
func NewBitbucketServiceBearerToken(ctx context.Context, bearerToken, url, projectKey, repositorySlug string, scmRootCAPath string, insecure bool, caCerts []byte) (PullRequestService, error) {
bitbucketConfig := bitbucketv1.NewConfiguration(url)
// Avoid the XSRF check
bitbucketConfig.AddDefaultHeader("x-atlassian-token", "no-check")
bitbucketConfig.AddDefaultHeader("x-requested-with", "XMLHttpRequest")
ctx = context.WithValue(ctx, bitbucketv1.ContextAccessToken, bearerToken)
return newBitbucketService(ctx, bitbucketConfig, projectKey, repositorySlug, scmRootCAPath, insecure, caCerts)
}
func newBitbucketService(ctx context.Context, bitbucketConfig *bitbucketv1.Configuration, projectKey, repositorySlug string) (PullRequestService, error) {
func NewBitbucketServiceNoAuth(ctx context.Context, url, projectKey, repositorySlug string, scmRootCAPath string, insecure bool, caCerts []byte) (PullRequestService, error) {
return newBitbucketService(ctx, bitbucketv1.NewConfiguration(url), projectKey, repositorySlug, scmRootCAPath, insecure, caCerts)
}
func newBitbucketService(ctx context.Context, bitbucketConfig *bitbucketv1.Configuration, projectKey, repositorySlug string, scmRootCAPath string, insecure bool, caCerts []byte) (PullRequestService, error) {
bitbucketConfig.BasePath = utils.NormalizeBitbucketBasePath(bitbucketConfig.BasePath)
tlsConfig := utils.GetTlsConfig(scmRootCAPath, insecure, caCerts)
bitbucketConfig.HTTPClient = &http.Client{Transport: &http.Transport{
TLSClientConfig: tlsConfig,
}}
bitbucketClient := bitbucketv1.NewAPIClient(ctx, bitbucketConfig)
return &BitbucketService{
@@ -56,21 +72,23 @@ func (b *BitbucketService) List(_ context.Context) ([]*PullRequest, error) {
for {
response, err := b.client.DefaultApi.GetPullRequestsPage(b.projectKey, b.repositorySlug, paged)
if err != nil {
return nil, fmt.Errorf("error listing pull requests for %s/%s: %v", b.projectKey, b.repositorySlug, err)
return nil, fmt.Errorf("error listing pull requests for %s/%s: %w", b.projectKey, b.repositorySlug, err)
}
pulls, err := bitbucketv1.GetPullRequestsResponse(response)
if err != nil {
log.Errorf("error parsing pull request response '%v'", response.Values)
return nil, fmt.Errorf("error parsing pull request response for %s/%s: %v", b.projectKey, b.repositorySlug, err)
return nil, fmt.Errorf("error parsing pull request response for %s/%s: %w", b.projectKey, b.repositorySlug, err)
}
for _, pull := range pulls {
pullRequests = append(pullRequests, &PullRequest{
Number: pull.ID,
Title: pull.Title,
Branch: pull.FromRef.DisplayID, // ID: refs/heads/main DisplayID: main
TargetBranch: pull.ToRef.DisplayID,
HeadSHA: pull.FromRef.LatestCommit, // This is not defined in the official docs, but works in practice
Labels: []string{}, // Not supported by library
Author: pull.Author.User.Name,
})
}

View File

@@ -2,16 +2,21 @@ package pull_request
import (
"context"
"crypto/x509"
"encoding/pem"
"io"
"net/http"
"net/http/httptest"
"testing"
"github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
func defaultHandler(t *testing.T) func(http.ResponseWriter, *http.Request) {
t.Helper()
return func(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "application/json")
var err error
@@ -24,6 +29,7 @@ func defaultHandler(t *testing.T) func(http.ResponseWriter, *http.Request) {
"values": [
{
"id": 101,
"title": "feat(ABC) : 123",
"toRef": {
"latestCommit": "5b766e3564a3453808f3cd3dd3f2e5fad8ef0e7a",
"displayId": "master",
@@ -33,6 +39,11 @@ func defaultHandler(t *testing.T) func(http.ResponseWriter, *http.Request) {
"id": "refs/heads/feature-ABC-123",
"displayId": "feature-ABC-123",
"latestCommit": "cb3cf2e4d1517c83e720d2585b9402dbef71f992"
},
"author": {
"user": {
"name": "testName"
}
}
}
],
@@ -53,15 +64,17 @@ func TestListPullRequestNoAuth(t *testing.T) {
defaultHandler(t)(w, r)
}))
defer ts.Close()
svc, err := NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO")
assert.NoError(t, err)
svc, err := NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO", "", false, nil)
require.NoError(t, err)
pullRequests, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.NoError(t, err)
assert.Equal(t, 1, len(pullRequests))
require.NoError(t, err)
assert.Len(t, pullRequests, 1)
assert.Equal(t, 101, pullRequests[0].Number)
assert.Equal(t, "feat(ABC) : 123", pullRequests[0].Title)
assert.Equal(t, "feature-ABC-123", pullRequests[0].Branch)
assert.Equal(t, "master", pullRequests[0].TargetBranch)
assert.Equal(t, "cb3cf2e4d1517c83e720d2585b9402dbef71f992", pullRequests[0].HeadSHA)
assert.Equal(t, "testName", pullRequests[0].Author)
}
func TestListPullRequestPagination(t *testing.T) {
@@ -77,6 +90,7 @@ func TestListPullRequestPagination(t *testing.T) {
"values": [
{
"id": 101,
"title": "feat(101)",
"toRef": {
"latestCommit": "5b766e3564a3453808f3cd3dd3f2e5fad8ef0e7a",
"displayId": "master",
@@ -86,10 +100,16 @@ func TestListPullRequestPagination(t *testing.T) {
"id": "refs/heads/feature-101",
"displayId": "feature-101",
"latestCommit": "ab3cf2e4d1517c83e720d2585b9402dbef71f992"
},
"author": {
"user": {
"name": "testName"
}
}
},
{
"id": 102,
"title": "feat(102)",
"toRef": {
"latestCommit": "5b766e3564a3453808f3cd3dd3f2e5fad8ef0e7a",
"displayId": "branch",
@@ -99,6 +119,11 @@ func TestListPullRequestPagination(t *testing.T) {
"id": "refs/heads/feature-102",
"displayId": "feature-102",
"latestCommit": "bb3cf2e4d1517c83e720d2585b9402dbef71f992"
},
"author": {
"user": {
"name": "testName"
}
}
}
],
@@ -112,6 +137,7 @@ func TestListPullRequestPagination(t *testing.T) {
"values": [
{
"id": 200,
"title": "feat(200)",
"toRef": {
"latestCommit": "5b766e3564a3453808f3cd3dd3f2e5fad8ef0e7a",
"displayId": "master",
@@ -121,6 +147,11 @@ func TestListPullRequestPagination(t *testing.T) {
"id": "refs/heads/feature-200",
"displayId": "feature-200",
"latestCommit": "cb3cf2e4d1517c83e720d2585b9402dbef71f992"
},
"author": {
"user": {
"name": "testName"
}
}
}
],
@@ -134,31 +165,37 @@ func TestListPullRequestPagination(t *testing.T) {
}
}))
defer ts.Close()
svc, err := NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO")
assert.NoError(t, err)
svc, err := NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO", "", false, nil)
require.NoError(t, err)
pullRequests, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.NoError(t, err)
assert.Equal(t, 3, len(pullRequests))
require.NoError(t, err)
assert.Len(t, pullRequests, 3)
assert.Equal(t, PullRequest{
Number: 101,
Title: "feat(101)",
Branch: "feature-101",
TargetBranch: "master",
HeadSHA: "ab3cf2e4d1517c83e720d2585b9402dbef71f992",
Labels: []string{},
Author: "testName",
}, *pullRequests[0])
assert.Equal(t, PullRequest{
Number: 102,
Title: "feat(102)",
Branch: "feature-102",
TargetBranch: "branch",
HeadSHA: "bb3cf2e4d1517c83e720d2585b9402dbef71f992",
Labels: []string{},
Author: "testName",
}, *pullRequests[1])
assert.Equal(t, PullRequest{
Number: 200,
Title: "feat(200)",
Branch: "feature-200",
TargetBranch: "master",
HeadSHA: "cb3cf2e4d1517c83e720d2585b9402dbef71f992",
Labels: []string{},
Author: "testName",
}, *pullRequests[2])
}
@@ -170,24 +207,109 @@ func TestListPullRequestBasicAuth(t *testing.T) {
defaultHandler(t)(w, r)
}))
defer ts.Close()
svc, err := NewBitbucketServiceBasicAuth(context.Background(), "user", "password", ts.URL, "PROJECT", "REPO")
assert.NoError(t, err)
svc, err := NewBitbucketServiceBasicAuth(context.Background(), "user", "password", ts.URL, "PROJECT", "REPO", "", false, nil)
require.NoError(t, err)
pullRequests, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.NoError(t, err)
assert.Equal(t, 1, len(pullRequests))
require.NoError(t, err)
assert.Len(t, pullRequests, 1)
assert.Equal(t, 101, pullRequests[0].Number)
assert.Equal(t, "feature-ABC-123", pullRequests[0].Branch)
assert.Equal(t, "cb3cf2e4d1517c83e720d2585b9402dbef71f992", pullRequests[0].HeadSHA)
}
func TestListPullRequestBearerAuth(t *testing.T) {
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
assert.Equal(t, "Bearer tolkien", r.Header.Get("Authorization"))
assert.Equal(t, "no-check", r.Header.Get("X-Atlassian-Token"))
defaultHandler(t)(w, r)
}))
defer ts.Close()
svc, err := NewBitbucketServiceBearerToken(context.Background(), "tolkien", ts.URL, "PROJECT", "REPO", "", false, nil)
require.NoError(t, err)
pullRequests, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
require.NoError(t, err)
assert.Len(t, pullRequests, 1)
assert.Equal(t, 101, pullRequests[0].Number)
assert.Equal(t, "feat(ABC) : 123", pullRequests[0].Title)
assert.Equal(t, "feature-ABC-123", pullRequests[0].Branch)
assert.Equal(t, "cb3cf2e4d1517c83e720d2585b9402dbef71f992", pullRequests[0].HeadSHA)
}
func TestListPullRequestTLS(t *testing.T) {
tests := []struct {
name string
tlsInsecure bool
passCerts bool
requireErr bool
}{
{
name: "TLS Insecure: true, No Certs",
tlsInsecure: true,
passCerts: false,
requireErr: false,
},
{
name: "TLS Insecure: true, With Certs",
tlsInsecure: true,
passCerts: true,
requireErr: false,
},
{
name: "TLS Insecure: false, With Certs",
tlsInsecure: false,
passCerts: true,
requireErr: false,
},
{
name: "TLS Insecure: false, No Certs",
tlsInsecure: false,
passCerts: false,
requireErr: true,
},
}
for _, test := range tests {
test := test
t.Run(test.name, func(t *testing.T) {
ts := httptest.NewTLSServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
defaultHandler(t)(w, r)
}))
defer ts.Close()
var certs []byte
if test.passCerts == true {
for _, cert := range ts.TLS.Certificates {
for _, c := range cert.Certificate {
parsedCert, err := x509.ParseCertificate(c)
require.NoError(t, err, "Failed to parse certificate")
certs = append(certs, pem.EncodeToMemory(&pem.Block{
Type: "CERTIFICATE",
Bytes: parsedCert.Raw,
})...)
}
}
}
svc, err := NewBitbucketServiceBasicAuth(context.Background(), "user", "password", ts.URL, "PROJECT", "REPO", "", test.tlsInsecure, certs)
require.NoError(t, err)
_, err = ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
if test.requireErr {
require.Error(t, err)
} else {
require.NoError(t, err)
}
})
}
}
func TestListResponseError(t *testing.T) {
ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusInternalServerError)
}))
defer ts.Close()
svc, _ := NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO")
svc, _ := NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO", "", false, nil)
_, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.Error(t, err)
require.Error(t, err)
}
func TestListResponseMalformed(t *testing.T) {
@@ -210,9 +332,9 @@ func TestListResponseMalformed(t *testing.T) {
}
}))
defer ts.Close()
svc, _ := NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO")
svc, _ := NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO", "", false, nil)
_, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.Error(t, err)
require.Error(t, err)
}
func TestListResponseEmpty(t *testing.T) {
@@ -235,10 +357,10 @@ func TestListResponseEmpty(t *testing.T) {
}
}))
defer ts.Close()
svc, err := NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO")
assert.NoError(t, err)
svc, err := NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO", "", false, nil)
require.NoError(t, err)
pullRequests, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{})
assert.NoError(t, err)
require.NoError(t, err)
assert.Empty(t, pullRequests)
}
@@ -255,6 +377,7 @@ func TestListPullRequestBranchMatch(t *testing.T) {
"values": [
{
"id": 101,
"title": "feat(101)",
"toRef": {
"latestCommit": "5b766e3564a3453808f3cd3dd3f2e5fad8ef0e7a",
"displayId": "master",
@@ -264,10 +387,16 @@ func TestListPullRequestBranchMatch(t *testing.T) {
"id": "refs/heads/feature-101",
"displayId": "feature-101",
"latestCommit": "ab3cf2e4d1517c83e720d2585b9402dbef71f992"
},
"author": {
"user": {
"name": "testName"
}
}
},
{
"id": 102,
"title": "feat(102)",
"toRef": {
"latestCommit": "5b766e3564a3453808f3cd3dd3f2e5fad8ef0e7a",
"displayId": "branch",
@@ -277,6 +406,11 @@ func TestListPullRequestBranchMatch(t *testing.T) {
"id": "refs/heads/feature-102",
"displayId": "feature-102",
"latestCommit": "bb3cf2e4d1517c83e720d2585b9402dbef71f992"
},
"author": {
"user": {
"name": "testName"
}
}
}
],
@@ -290,6 +424,7 @@ func TestListPullRequestBranchMatch(t *testing.T) {
"values": [
{
"id": 200,
"title": "feat(200)",
"toRef": {
"latestCommit": "5b766e3564a3453808f3cd3dd3f2e5fad8ef0e7a",
"displayId": "master",
@@ -299,6 +434,11 @@ func TestListPullRequestBranchMatch(t *testing.T) {
"id": "refs/heads/feature-200",
"displayId": "feature-200",
"latestCommit": "cb3cf2e4d1517c83e720d2585b9402dbef71f992"
},
"author": {
"user": {
"name": "testName"
}
}
}
],
@@ -313,55 +453,61 @@ func TestListPullRequestBranchMatch(t *testing.T) {
}))
defer ts.Close()
regexp := `feature-1[\d]{2}`
svc, err := NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO")
assert.NoError(t, err)
svc, err := NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO", "", false, nil)
require.NoError(t, err)
pullRequests, err := ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{
{
BranchMatch: &regexp,
},
})
assert.NoError(t, err)
assert.Equal(t, 2, len(pullRequests))
require.NoError(t, err)
assert.Len(t, pullRequests, 2)
assert.Equal(t, PullRequest{
Number: 101,
Title: "feat(101)",
Branch: "feature-101",
TargetBranch: "master",
HeadSHA: "ab3cf2e4d1517c83e720d2585b9402dbef71f992",
Labels: []string{},
Author: "testName",
}, *pullRequests[0])
assert.Equal(t, PullRequest{
Number: 102,
Title: "feat(102)",
Branch: "feature-102",
TargetBranch: "branch",
HeadSHA: "bb3cf2e4d1517c83e720d2585b9402dbef71f992",
Labels: []string{},
Author: "testName",
}, *pullRequests[1])
regexp = `.*2$`
svc, err = NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO")
assert.NoError(t, err)
svc, err = NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO", "", false, nil)
require.NoError(t, err)
pullRequests, err = ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{
{
BranchMatch: &regexp,
},
})
assert.NoError(t, err)
assert.Equal(t, 1, len(pullRequests))
require.NoError(t, err)
assert.Len(t, pullRequests, 1)
assert.Equal(t, PullRequest{
Number: 102,
Title: "feat(102)",
Branch: "feature-102",
TargetBranch: "branch",
HeadSHA: "bb3cf2e4d1517c83e720d2585b9402dbef71f992",
Labels: []string{},
Author: "testName",
}, *pullRequests[0])
regexp = `[\d{2}`
svc, err = NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO")
assert.NoError(t, err)
svc, err = NewBitbucketServiceNoAuth(context.Background(), ts.URL, "PROJECT", "REPO", "", false, nil)
require.NoError(t, err)
_, err = ListPullRequests(context.Background(), svc, []v1alpha1.PullRequestGeneratorFilter{
{
BranchMatch: &regexp,
},
})
assert.Error(t, err)
require.Error(t, err)
}

View File

@@ -57,10 +57,12 @@ func (g *GiteaService) List(ctx context.Context) ([]*PullRequest, error) {
for _, pr := range prs {
list = append(list, &PullRequest{
Number: int(pr.Index),
Title: pr.Title,
Branch: pr.Head.Ref,
TargetBranch: pr.Base.Ref,
HeadSHA: pr.Head.Sha,
Labels: getGiteaPRLabelNames(pr.Labels),
Author: pr.Poster.UserName,
})
}
return list, nil

View File

@@ -10,9 +10,11 @@ import (
"code.gitea.io/sdk/gitea"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func giteaMockHandler(t *testing.T) func(http.ResponseWriter, *http.Request) {
t.Helper()
return func(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "application/json")
fmt.Println(r.RequestURI)
@@ -250,14 +252,16 @@ func TestGiteaList(t *testing.T) {
giteaMockHandler(t)(w, r)
}))
host, err := NewGiteaService(context.Background(), "", ts.URL, "test-argocd", "pr-test", false)
assert.Nil(t, err)
require.NoError(t, err)
prs, err := host.List(context.Background())
assert.Nil(t, err)
assert.Equal(t, len(prs), 1)
assert.Equal(t, prs[0].Number, 1)
assert.Equal(t, prs[0].Branch, "test")
assert.Equal(t, prs[0].TargetBranch, "main")
assert.Equal(t, prs[0].HeadSHA, "7bbaf62d92ddfafd9cc8b340c619abaec32bc09f")
require.NoError(t, err)
assert.Len(t, prs, 1)
assert.Equal(t, 1, prs[0].Number)
assert.Equal(t, "add an empty file", prs[0].Title)
assert.Equal(t, "test", prs[0].Branch)
assert.Equal(t, "main", prs[0].TargetBranch)
assert.Equal(t, "7bbaf62d92ddfafd9cc8b340c619abaec32bc09f", prs[0].HeadSHA)
assert.Equal(t, "graytshirt", prs[0].Author)
}
func TestGetGiteaPRLabelNames(t *testing.T) {

View File

@@ -5,7 +5,7 @@ import (
"fmt"
"os"
"github.com/google/go-github/v35/github"
"github.com/google/go-github/v66/github"
"golang.org/x/oauth2"
)
@@ -35,7 +35,7 @@ func NewGithubService(ctx context.Context, token, url, owner, repo string, label
client = github.NewClient(httpClient)
} else {
var err error
client, err = github.NewEnterpriseClient(url, url, httpClient)
client, err = github.NewClient(httpClient).WithEnterpriseURLs(url, url)
if err != nil {
return nil, err
}
@@ -66,10 +66,12 @@ func (g *GithubService) List(ctx context.Context) ([]*PullRequest, error) {
}
pullRequests = append(pullRequests, &PullRequest{
Number: *pull.Number,
Title: *pull.Title,
Branch: *pull.Head.Ref,
TargetBranch: *pull.Base.Ref,
HeadSHA: *pull.Head.SHA,
Labels: getGithubPRLabelNames(pull.Labels),
Author: *pull.User.Login,
})
}
if resp.NextPage == 0 {

View File

@@ -3,8 +3,8 @@ package pull_request
import (
"testing"
"github.com/google/go-github/v35/github"
"github.com/stretchr/testify/assert"
"github.com/google/go-github/v66/github"
"github.com/stretchr/testify/require"
)
func toPtr(s string) *string {
@@ -52,9 +52,8 @@ func TestContainLabels(t *testing.T) {
for _, c := range cases {
t.Run(c.Name, func(t *testing.T) {
if got := containLabels(c.Labels, c.PullLabels); got != c.Expect {
t.Errorf("expect: %v, got: %v", c.Expect, got)
}
got := containLabels(c.Labels, c.PullLabels)
require.Equal(t, got, c.Expect)
})
}
}
@@ -83,7 +82,7 @@ func TestGetGitHubPRLabelNames(t *testing.T) {
for _, test := range Tests {
t.Run(test.Name, func(t *testing.T) {
labels := getGithubPRLabelNames(test.PullLabels)
assert.Equal(t, test.ExpectedResult, labels)
require.Equal(t, test.ExpectedResult, labels)
})
}
}

View File

@@ -6,9 +6,10 @@ import (
"net/http"
"os"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
"github.com/hashicorp/go-retryablehttp"
gitlab "github.com/xanzy/go-gitlab"
"github.com/argoproj/argo-cd/v2/applicationset/utils"
)
type GitLabService struct {
@@ -20,7 +21,7 @@ type GitLabService struct {
var _ PullRequestService = (*GitLabService)(nil)
func NewGitLabService(ctx context.Context, token, url, project string, labels []string, pullRequestState string, scmRootCAPath string, insecure bool) (PullRequestService, error) {
func NewGitLabService(ctx context.Context, token, url, project string, labels []string, pullRequestState string, scmRootCAPath string, insecure bool, caCerts []byte) (PullRequestService, error) {
var clientOptionFns []gitlab.ClientOptionFunc
// Set a custom Gitlab base URL if one is provided
@@ -33,7 +34,7 @@ func NewGitLabService(ctx context.Context, token, url, project string, labels []
}
tr := http.DefaultTransport.(*http.Transport).Clone()
tr.TLSClientConfig = utils.GetTlsConfig(scmRootCAPath, insecure)
tr.TLSClientConfig = utils.GetTlsConfig(scmRootCAPath, insecure, caCerts)
retryClient := retryablehttp.NewClient()
retryClient.HTTPClient.Transport = tr
@@ -42,7 +43,7 @@ func NewGitLabService(ctx context.Context, token, url, project string, labels []
client, err := gitlab.NewClient(token, clientOptionFns...)
if err != nil {
return nil, fmt.Errorf("error creating Gitlab client: %v", err)
return nil, fmt.Errorf("error creating Gitlab client: %w", err)
}
return &GitLabService{
@@ -54,13 +55,12 @@ func NewGitLabService(ctx context.Context, token, url, project string, labels []
}
func (g *GitLabService) List(ctx context.Context) ([]*PullRequest, error) {
// Filter the merge requests on labels, if they are specified.
var labels *gitlab.Labels
var labels *gitlab.LabelOptions
if len(g.labels) > 0 {
labels = (*gitlab.Labels)(&g.labels)
var labelsList gitlab.LabelOptions = g.labels
labels = &labelsList
}
opts := &gitlab.ListProjectMergeRequestsOptions{
ListOptions: gitlab.ListOptions{
PerPage: 100,
@@ -76,15 +76,17 @@ func (g *GitLabService) List(ctx context.Context) ([]*PullRequest, error) {
for {
mrs, resp, err := g.client.MergeRequests.ListProjectMergeRequests(g.project, opts)
if err != nil {
return nil, fmt.Errorf("error listing merge requests for project '%s': %v", g.project, err)
return nil, fmt.Errorf("error listing merge requests for project '%s': %w", g.project, err)
}
for _, mr := range mrs {
pullRequests = append(pullRequests, &PullRequest{
Number: mr.IID,
Title: mr.Title,
Branch: mr.SourceBranch,
TargetBranch: mr.TargetBranch,
HeadSHA: mr.SHA,
Labels: mr.Labels,
Author: mr.Author.Username,
})
}
if resp.NextPage == 0 {

View File

@@ -2,6 +2,8 @@ package pull_request
import (
"context"
"crypto/x509"
"encoding/pem"
"io"
"net/http"
"net/http/httptest"
@@ -9,17 +11,16 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func writeMRListResponse(t *testing.T, w io.Writer) {
t.Helper()
f, err := os.Open("fixtures/gitlab_mr_list_response.json")
if err != nil {
t.Fatalf("error opening fixture file: %v", err)
}
require.NoErrorf(t, err, "error opening fixture file: %v", err)
if _, err = io.Copy(w, f); err != nil {
t.Fatalf("error writing response: %v", err)
}
_, err = io.Copy(w, f)
require.NoErrorf(t, err, "error writing response: %v", err)
}
func TestGitLabServiceCustomBaseURL(t *testing.T) {
@@ -34,11 +35,11 @@ func TestGitLabServiceCustomBaseURL(t *testing.T) {
writeMRListResponse(t, w)
})
svc, err := NewGitLabService(context.Background(), "", server.URL, "278964", nil, "", "", false)
assert.NoError(t, err)
svc, err := NewGitLabService(context.Background(), "", server.URL, "278964", nil, "", "", false, nil)
require.NoError(t, err)
_, err = svc.List(context.Background())
assert.NoError(t, err)
require.NoError(t, err)
}
func TestGitLabServiceToken(t *testing.T) {
@@ -53,11 +54,11 @@ func TestGitLabServiceToken(t *testing.T) {
writeMRListResponse(t, w)
})
svc, err := NewGitLabService(context.Background(), "token-123", server.URL, "278964", nil, "", "", false)
assert.NoError(t, err)
svc, err := NewGitLabService(context.Background(), "token-123", server.URL, "278964", nil, "", "", false, nil)
require.NoError(t, err)
_, err = svc.List(context.Background())
assert.NoError(t, err)
require.NoError(t, err)
}
func TestList(t *testing.T) {
@@ -72,16 +73,18 @@ func TestList(t *testing.T) {
writeMRListResponse(t, w)
})
svc, err := NewGitLabService(context.Background(), "", server.URL, "278964", []string{}, "", "", false)
assert.NoError(t, err)
svc, err := NewGitLabService(context.Background(), "", server.URL, "278964", []string{}, "", "", false, nil)
require.NoError(t, err)
prs, err := svc.List(context.Background())
assert.NoError(t, err)
require.NoError(t, err)
assert.Len(t, prs, 1)
assert.Equal(t, prs[0].Number, 15442)
assert.Equal(t, prs[0].Branch, "use-structured-logging-for-db-load-balancer")
assert.Equal(t, prs[0].TargetBranch, "master")
assert.Equal(t, prs[0].HeadSHA, "2fc4e8b972ff3208ec63b6143e34ad67ff343ad7")
assert.Equal(t, 15442, prs[0].Number)
assert.Equal(t, "Draft: Use structured logging for DB load balancer", prs[0].Title)
assert.Equal(t, "use-structured-logging-for-db-load-balancer", prs[0].Branch)
assert.Equal(t, "master", prs[0].TargetBranch)
assert.Equal(t, "2fc4e8b972ff3208ec63b6143e34ad67ff343ad7", prs[0].HeadSHA)
assert.Equal(t, "hfyngvason", prs[0].Author)
}
func TestListWithLabels(t *testing.T) {
@@ -96,11 +99,11 @@ func TestListWithLabels(t *testing.T) {
writeMRListResponse(t, w)
})
svc, err := NewGitLabService(context.Background(), "", server.URL, "278964", []string{"feature", "ready"}, "", "", false)
assert.NoError(t, err)
svc, err := NewGitLabService(context.Background(), "", server.URL, "278964", []string{"feature", "ready"}, "", "", false, nil)
require.NoError(t, err)
_, err = svc.List(context.Background())
assert.NoError(t, err)
require.NoError(t, err)
}
func TestListWithState(t *testing.T) {
@@ -115,9 +118,77 @@ func TestListWithState(t *testing.T) {
writeMRListResponse(t, w)
})
svc, err := NewGitLabService(context.Background(), "", server.URL, "278964", []string{}, "opened", "", false)
assert.NoError(t, err)
svc, err := NewGitLabService(context.Background(), "", server.URL, "278964", []string{}, "opened", "", false, nil)
require.NoError(t, err)
_, err = svc.List(context.Background())
assert.NoError(t, err)
require.NoError(t, err)
}
func TestListWithStateTLS(t *testing.T) {
tests := []struct {
name string
tlsInsecure bool
passCerts bool
requireErr bool
}{
{
name: "TLS Insecure: true, No Certs",
tlsInsecure: true,
passCerts: false,
requireErr: false,
},
{
name: "TLS Insecure: true, With Certs",
tlsInsecure: true,
passCerts: true,
requireErr: false,
},
{
name: "TLS Insecure: false, With Certs",
tlsInsecure: false,
passCerts: true,
requireErr: false,
},
{
name: "TLS Insecure: false, No Certs",
tlsInsecure: false,
passCerts: false,
requireErr: true,
},
}
for _, test := range tests {
test := test
t.Run(test.name, func(t *testing.T) {
ts := httptest.NewTLSServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
writeMRListResponse(t, w)
}))
defer ts.Close()
var certs []byte
if test.passCerts == true {
for _, cert := range ts.TLS.Certificates {
for _, c := range cert.Certificate {
parsedCert, err := x509.ParseCertificate(c)
require.NoError(t, err, "Failed to parse certificate")
certs = append(certs, pem.EncodeToMemory(&pem.Block{
Type: "CERTIFICATE",
Bytes: parsedCert.Raw,
})...)
}
}
}
svc, err := NewGitLabService(context.Background(), "", ts.URL, "278964", []string{}, "opened", "", test.tlsInsecure, certs)
require.NoError(t, err)
_, err = svc.List(context.Background())
if test.requireErr {
require.Error(t, err)
} else {
require.NoError(t, err)
}
})
}
}

View File

@@ -8,6 +8,8 @@ import (
type PullRequest struct {
// Number is a number that will be the ID of the pull request.
Number int
// Title of the pull request.
Title string
// Branch is the name of the branch from which the pull request originated.
Branch string
// TargetBranch is the name of the target branch of the pull request.
@@ -16,6 +18,8 @@ type PullRequest struct {
HeadSHA string
// Labels of the pull request.
Labels []string
// Author is the author of the pull request.
Author string
}
type PullRequestService interface {

View File

@@ -16,13 +16,13 @@ func compileFilters(filters []argoprojiov1alpha1.PullRequestGeneratorFilter) ([]
if filter.BranchMatch != nil {
outFilter.BranchMatch, err = regexp.Compile(*filter.BranchMatch)
if err != nil {
return nil, fmt.Errorf("error compiling BranchMatch regexp %q: %v", *filter.BranchMatch, err)
return nil, fmt.Errorf("error compiling BranchMatch regexp %q: %w", *filter.BranchMatch, err)
}
}
if filter.TargetBranchMatch != nil {
outFilter.TargetBranchMatch, err = regexp.Compile(*filter.TargetBranchMatch)
if err != nil {
return nil, fmt.Errorf("error compiling TargetBranchMatch regexp %q: %v", *filter.TargetBranchMatch, err)
return nil, fmt.Errorf("error compiling TargetBranchMatch regexp %q: %w", *filter.TargetBranchMatch, err)
}
}
outFilters = append(outFilters, outFilter)

View File

@@ -4,22 +4,27 @@ import (
"context"
"testing"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
argoprojiov1alpha1 "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
func strp(s string) *string {
return &s
}
func TestFilterBranchMatchBadRegexp(t *testing.T) {
provider, _ := NewFakeService(
context.Background(),
[]*PullRequest{
{
Number: 1,
Title: "PR branch1",
Branch: "branch1",
TargetBranch: "master",
HeadSHA: "089d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name1",
},
},
nil,
@@ -30,7 +35,7 @@ func TestFilterBranchMatchBadRegexp(t *testing.T) {
},
}
_, err := ListPullRequests(context.Background(), provider, filters)
assert.Error(t, err)
require.Error(t, err)
}
func TestFilterBranchMatch(t *testing.T) {
@@ -39,27 +44,35 @@ func TestFilterBranchMatch(t *testing.T) {
[]*PullRequest{
{
Number: 1,
Title: "PR one",
Branch: "one",
TargetBranch: "master",
HeadSHA: "189d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name1",
},
{
Number: 2,
Title: "PR two",
Branch: "two",
TargetBranch: "master",
HeadSHA: "289d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name2",
},
{
Number: 3,
Title: "PR three",
Branch: "three",
TargetBranch: "master",
HeadSHA: "389d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name3",
},
{
Number: 4,
Title: "PR four",
Branch: "four",
TargetBranch: "master",
HeadSHA: "489d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name4",
},
},
nil,
@@ -70,7 +83,7 @@ func TestFilterBranchMatch(t *testing.T) {
},
}
pullRequests, err := ListPullRequests(context.Background(), provider, filters)
assert.NoError(t, err)
require.NoError(t, err)
assert.Len(t, pullRequests, 1)
assert.Equal(t, "two", pullRequests[0].Branch)
}
@@ -81,27 +94,35 @@ func TestFilterTargetBranchMatch(t *testing.T) {
[]*PullRequest{
{
Number: 1,
Title: "PR one",
Branch: "one",
TargetBranch: "master",
HeadSHA: "189d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name1",
},
{
Number: 2,
Title: "PR two",
Branch: "two",
TargetBranch: "branch1",
HeadSHA: "289d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name2",
},
{
Number: 3,
Title: "PR three",
Branch: "three",
TargetBranch: "branch2",
HeadSHA: "389d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name3",
},
{
Number: 4,
Title: "PR four",
Branch: "four",
TargetBranch: "branch3",
HeadSHA: "489d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name4",
},
},
nil,
@@ -112,7 +133,7 @@ func TestFilterTargetBranchMatch(t *testing.T) {
},
}
pullRequests, err := ListPullRequests(context.Background(), provider, filters)
assert.NoError(t, err)
require.NoError(t, err)
assert.Len(t, pullRequests, 1)
assert.Equal(t, "two", pullRequests[0].Branch)
}
@@ -123,27 +144,35 @@ func TestMultiFilterOr(t *testing.T) {
[]*PullRequest{
{
Number: 1,
Title: "PR one",
Branch: "one",
TargetBranch: "master",
HeadSHA: "189d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name1",
},
{
Number: 2,
Title: "PR two",
Branch: "two",
TargetBranch: "master",
HeadSHA: "289d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name2",
},
{
Number: 3,
Title: "PR three",
Branch: "three",
TargetBranch: "master",
HeadSHA: "389d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name3",
},
{
Number: 4,
Title: "PR four",
Branch: "four",
TargetBranch: "master",
HeadSHA: "489d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name4",
},
},
nil,
@@ -157,7 +186,7 @@ func TestMultiFilterOr(t *testing.T) {
},
}
pullRequests, err := ListPullRequests(context.Background(), provider, filters)
assert.NoError(t, err)
require.NoError(t, err)
assert.Len(t, pullRequests, 3)
assert.Equal(t, "two", pullRequests[0].Branch)
assert.Equal(t, "three", pullRequests[1].Branch)
@@ -170,27 +199,35 @@ func TestMultiFilterOrWithTargetBranchFilter(t *testing.T) {
[]*PullRequest{
{
Number: 1,
Title: "PR one",
Branch: "one",
TargetBranch: "master",
HeadSHA: "189d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name1",
},
{
Number: 2,
Title: "PR two",
Branch: "two",
TargetBranch: "branch1",
HeadSHA: "289d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name2",
},
{
Number: 3,
Title: "PR three",
Branch: "three",
TargetBranch: "branch2",
HeadSHA: "389d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name3",
},
{
Number: 4,
Title: "PR four",
Branch: "four",
TargetBranch: "branch3",
HeadSHA: "489d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name4",
},
},
nil,
@@ -206,7 +243,7 @@ func TestMultiFilterOrWithTargetBranchFilter(t *testing.T) {
},
}
pullRequests, err := ListPullRequests(context.Background(), provider, filters)
assert.NoError(t, err)
require.NoError(t, err)
assert.Len(t, pullRequests, 2)
assert.Equal(t, "two", pullRequests[0].Branch)
assert.Equal(t, "four", pullRequests[1].Branch)
@@ -218,22 +255,26 @@ func TestNoFilters(t *testing.T) {
[]*PullRequest{
{
Number: 1,
Title: "PR one",
Branch: "one",
TargetBranch: "master",
HeadSHA: "189d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name1",
},
{
Number: 2,
Title: "PR two",
Branch: "two",
TargetBranch: "master",
HeadSHA: "289d92cbf9ff857a39e6feccd32798ca700fb958",
Author: "name2",
},
},
nil,
)
filters := []argoprojiov1alpha1.PullRequestGeneratorFilter{}
repos, err := ListPullRequests(context.Background(), provider, filters)
assert.NoError(t, err)
require.NoError(t, err)
assert.Len(t, repos, 2)
assert.Equal(t, "one", repos[0].Branch)
assert.Equal(t, "two", repos[1].Branch)

View File

@@ -6,49 +6,37 @@ import (
"github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
"github.com/argoproj/argo-cd/v2/reposerver/apiclient"
"github.com/argoproj/argo-cd/v2/util/db"
"github.com/argoproj/argo-cd/v2/util/git"
"github.com/argoproj/argo-cd/v2/util/io"
)
//go:generate go run github.com/vektra/mockery/v2@v2.25.1 --name=RepositoryDB
// RepositoryDB Is a lean facade for ArgoDB,
// Using a lean interface makes it easier to test the functionality of the git generator
type RepositoryDB interface {
GetRepository(ctx context.Context, url string) (*v1alpha1.Repository, error)
}
type argoCDService struct {
repositoriesDB RepositoryDB
getRepository func(ctx context.Context, url, project string) (*v1alpha1.Repository, error)
storecreds git.CredsStore
submoduleEnabled bool
repoServerClientSet apiclient.Clientset
newFileGlobbingEnabled bool
}
//go:generate go run github.com/vektra/mockery/v2@v2.25.1 --name=Repos
type Repos interface {
// GetFiles returns content of files (not directories) within the target repo
GetFiles(ctx context.Context, repoURL string, revision string, pattern string, noRevisionCache bool) (map[string][]byte, error)
GetFiles(ctx context.Context, repoURL string, revision string, pattern string, noRevisionCache, verifyCommit bool) (map[string][]byte, error)
// GetDirectories returns a list of directories (not files) within the target repo
GetDirectories(ctx context.Context, repoURL string, revision string, noRevisionCache bool) ([]string, error)
GetDirectories(ctx context.Context, repoURL string, revision string, noRevisionCache, verifyCommit bool) ([]string, error)
}
func NewArgoCDService(db db.ArgoDB, submoduleEnabled bool, repoClientset apiclient.Clientset, newFileGlobbingEnabled bool) (Repos, error) {
func NewArgoCDService(getRepository func(ctx context.Context, url, project string) (*v1alpha1.Repository, error), submoduleEnabled bool, repoClientset apiclient.Clientset, newFileGlobbingEnabled bool) (Repos, error) {
return &argoCDService{
repositoriesDB: db.(RepositoryDB),
getRepository: getRepository,
submoduleEnabled: submoduleEnabled,
repoServerClientSet: repoClientset,
newFileGlobbingEnabled: newFileGlobbingEnabled,
}, nil
}
func (a *argoCDService) GetFiles(ctx context.Context, repoURL string, revision string, pattern string, noRevisionCache bool) (map[string][]byte, error) {
repo, err := a.repositoriesDB.GetRepository(ctx, repoURL)
func (a *argoCDService) GetFiles(ctx context.Context, repoURL string, revision string, pattern string, noRevisionCache, verifyCommit bool) (map[string][]byte, error) {
repo, err := a.getRepository(ctx, repoURL, "")
if err != nil {
return nil, fmt.Errorf("error in GetRepository: %w", err)
}
@@ -60,6 +48,7 @@ func (a *argoCDService) GetFiles(ctx context.Context, repoURL string, revision s
Path: pattern,
NewGitFileGlobbingEnabled: a.newFileGlobbingEnabled,
NoRevisionCache: noRevisionCache,
VerifyCommit: verifyCommit,
}
closer, client, err := a.repoServerClientSet.NewRepoServerClient()
if err != nil {
@@ -74,8 +63,8 @@ func (a *argoCDService) GetFiles(ctx context.Context, repoURL string, revision s
return fileResponse.GetMap(), nil
}
func (a *argoCDService) GetDirectories(ctx context.Context, repoURL string, revision string, noRevisionCache bool) ([]string, error) {
repo, err := a.repositoriesDB.GetRepository(ctx, repoURL)
func (a *argoCDService) GetDirectories(ctx context.Context, repoURL string, revision string, noRevisionCache, verifyCommit bool) ([]string, error) {
repo, err := a.getRepository(ctx, repoURL, "")
if err != nil {
return nil, fmt.Errorf("error in GetRepository: %w", err)
}
@@ -85,6 +74,7 @@ func (a *argoCDService) GetDirectories(ctx context.Context, repoURL string, revi
SubmoduleEnabled: a.submoduleEnabled,
Revision: revision,
NoRevisionCache: noRevisionCache,
VerifyCommit: verifyCommit,
}
closer, client, err := a.repoServerClientSet.NewRepoServerClient()
@@ -98,5 +88,4 @@ func (a *argoCDService) GetDirectories(ctx context.Context, repoURL string, revi
return nil, fmt.Errorf("error retrieving Git Directories: %w", err)
}
return dirResponse.GetPaths(), nil
}

View File

@@ -5,23 +5,22 @@ import (
"fmt"
"testing"
"github.com/argoproj/argo-cd/v2/applicationset/services/mocks"
"github.com/argoproj/argo-cd/v2/reposerver/apiclient"
repo_mocks "github.com/argoproj/argo-cd/v2/reposerver/apiclient/mocks"
db_mocks "github.com/argoproj/argo-cd/v2/util/db/mocks"
"github.com/argoproj/argo-cd/v2/util/git"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/mock"
"github.com/stretchr/testify/require"
"github.com/argoproj/argo-cd/v2/reposerver/apiclient"
repo_mocks "github.com/argoproj/argo-cd/v2/reposerver/apiclient/mocks"
"github.com/argoproj/argo-cd/v2/util/git"
"github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
func TestGetDirectories(t *testing.T) {
type fields struct {
repositoriesDBFuncs []func(*mocks.RepositoryDB)
storecreds git.CredsStore
submoduleEnabled bool
getRepository func(ctx context.Context, url, project string) (*v1alpha1.Repository, error)
repoServerClientFuncs []func(*repo_mocks.RepoServerServiceClient)
}
type args struct {
@@ -29,6 +28,7 @@ func TestGetDirectories(t *testing.T) {
repoURL string
revision string
noRevisionCache bool
verifyCommit bool
}
tests := []struct {
name string
@@ -38,17 +38,13 @@ func TestGetDirectories(t *testing.T) {
wantErr assert.ErrorAssertionFunc
}{
{name: "ErrorGettingRepos", fields: fields{
repositoriesDBFuncs: []func(*mocks.RepositoryDB){
func(db *mocks.RepositoryDB) {
db.On("GetRepository", mock.Anything, mock.Anything).Return(nil, fmt.Errorf("unable to get repos"))
},
getRepository: func(ctx context.Context, url, project string) (*v1alpha1.Repository, error) {
return nil, fmt.Errorf("unable to get repos")
},
}, args: args{}, want: nil, wantErr: assert.Error},
{name: "ErrorGettingDirs", fields: fields{
repositoriesDBFuncs: []func(*mocks.RepositoryDB){
func(db *mocks.RepositoryDB) {
db.On("GetRepository", mock.Anything, mock.Anything).Return(&v1alpha1.Repository{}, nil)
},
getRepository: func(ctx context.Context, url, project string) (*v1alpha1.Repository, error) {
return &v1alpha1.Repository{}, nil
},
repoServerClientFuncs: []func(*repo_mocks.RepoServerServiceClient){
func(client *repo_mocks.RepoServerServiceClient) {
@@ -57,10 +53,8 @@ func TestGetDirectories(t *testing.T) {
},
}, args: args{}, want: nil, wantErr: assert.Error},
{name: "HappyCase", fields: fields{
repositoriesDBFuncs: []func(*mocks.RepositoryDB){
func(db *mocks.RepositoryDB) {
db.On("GetRepository", mock.Anything, mock.Anything).Return(&v1alpha1.Repository{}, nil)
},
getRepository: func(ctx context.Context, url, project string) (*v1alpha1.Repository, error) {
return &v1alpha1.Repository{}, nil
},
repoServerClientFuncs: []func(*repo_mocks.RepoServerServiceClient){
func(client *repo_mocks.RepoServerServiceClient) {
@@ -70,26 +64,32 @@ func TestGetDirectories(t *testing.T) {
},
},
}, args: args{}, want: []string{"foo", "foo/bar", "bar/foo"}, wantErr: assert.NoError},
{name: "ErrorVerifyingCommit", fields: fields{
getRepository: func(ctx context.Context, url, project string) (*v1alpha1.Repository, error) {
return &v1alpha1.Repository{}, nil
},
repoServerClientFuncs: []func(*repo_mocks.RepoServerServiceClient){
func(client *repo_mocks.RepoServerServiceClient) {
client.On("GetGitDirectories", mock.Anything, mock.Anything).Return(nil, fmt.Errorf("revision HEAD is not signed"))
},
},
}, args: args{}, want: nil, wantErr: assert.Error},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
mockDb := &mocks.RepositoryDB{}
mockRepoClient := &repo_mocks.RepoServerServiceClient{}
// decorate the mocks
for i := range tt.fields.repositoriesDBFuncs {
tt.fields.repositoriesDBFuncs[i](mockDb)
}
for i := range tt.fields.repoServerClientFuncs {
tt.fields.repoServerClientFuncs[i](mockRepoClient)
}
a := &argoCDService{
repositoriesDB: mockDb,
getRepository: tt.fields.getRepository,
storecreds: tt.fields.storecreds,
submoduleEnabled: tt.fields.submoduleEnabled,
repoServerClientSet: &repo_mocks.Clientset{RepoServerServiceClient: mockRepoClient},
}
got, err := a.GetDirectories(tt.args.ctx, tt.args.repoURL, tt.args.revision, tt.args.noRevisionCache)
got, err := a.GetDirectories(tt.args.ctx, tt.args.repoURL, tt.args.revision, tt.args.noRevisionCache, tt.args.verifyCommit)
if !tt.wantErr(t, err, fmt.Sprintf("GetDirectories(%v, %v, %v, %v)", tt.args.ctx, tt.args.repoURL, tt.args.revision, tt.args.noRevisionCache)) {
return
}
@@ -100,10 +100,10 @@ func TestGetDirectories(t *testing.T) {
func TestGetFiles(t *testing.T) {
type fields struct {
repositoriesDBFuncs []func(*mocks.RepositoryDB)
storecreds git.CredsStore
submoduleEnabled bool
repoServerClientFuncs []func(*repo_mocks.RepoServerServiceClient)
getRepository func(ctx context.Context, url, project string) (*v1alpha1.Repository, error)
}
type args struct {
ctx context.Context
@@ -111,6 +111,7 @@ func TestGetFiles(t *testing.T) {
revision string
pattern string
noRevisionCache bool
verifyCommit bool
}
tests := []struct {
name string
@@ -120,17 +121,13 @@ func TestGetFiles(t *testing.T) {
wantErr assert.ErrorAssertionFunc
}{
{name: "ErrorGettingRepos", fields: fields{
repositoriesDBFuncs: []func(*mocks.RepositoryDB){
func(db *mocks.RepositoryDB) {
db.On("GetRepository", mock.Anything, mock.Anything).Return(nil, fmt.Errorf("unable to get repos"))
},
getRepository: func(ctx context.Context, url, project string) (*v1alpha1.Repository, error) {
return nil, fmt.Errorf("unable to get repos")
},
}, args: args{}, want: nil, wantErr: assert.Error},
{name: "ErrorGettingFiles", fields: fields{
repositoriesDBFuncs: []func(*mocks.RepositoryDB){
func(db *mocks.RepositoryDB) {
db.On("GetRepository", mock.Anything, mock.Anything).Return(&v1alpha1.Repository{}, nil)
},
getRepository: func(ctx context.Context, url, project string) (*v1alpha1.Repository, error) {
return &v1alpha1.Repository{}, nil
},
repoServerClientFuncs: []func(*repo_mocks.RepoServerServiceClient){
func(client *repo_mocks.RepoServerServiceClient) {
@@ -139,10 +136,8 @@ func TestGetFiles(t *testing.T) {
},
}, args: args{}, want: nil, wantErr: assert.Error},
{name: "HappyCase", fields: fields{
repositoriesDBFuncs: []func(*mocks.RepositoryDB){
func(db *mocks.RepositoryDB) {
db.On("GetRepository", mock.Anything, mock.Anything).Return(&v1alpha1.Repository{}, nil)
},
getRepository: func(ctx context.Context, url, project string) (*v1alpha1.Repository, error) {
return &v1alpha1.Repository{}, nil
},
repoServerClientFuncs: []func(*repo_mocks.RepoServerServiceClient){
func(client *repo_mocks.RepoServerServiceClient) {
@@ -158,26 +153,32 @@ func TestGetFiles(t *testing.T) {
"foo.json": []byte("hello: world!"),
"bar.yaml": []byte("yay: appsets"),
}, wantErr: assert.NoError},
{name: "ErrorVerifyingCommit", fields: fields{
getRepository: func(ctx context.Context, url, project string) (*v1alpha1.Repository, error) {
return &v1alpha1.Repository{}, nil
},
repoServerClientFuncs: []func(*repo_mocks.RepoServerServiceClient){
func(client *repo_mocks.RepoServerServiceClient) {
client.On("GetGitFiles", mock.Anything, mock.Anything).Return(nil, fmt.Errorf("revision HEAD is not signed"))
},
},
}, args: args{}, want: nil, wantErr: assert.Error},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
mockDb := &mocks.RepositoryDB{}
mockRepoClient := &repo_mocks.RepoServerServiceClient{}
// decorate the mocks
for i := range tt.fields.repositoriesDBFuncs {
tt.fields.repositoriesDBFuncs[i](mockDb)
}
for i := range tt.fields.repoServerClientFuncs {
tt.fields.repoServerClientFuncs[i](mockRepoClient)
}
a := &argoCDService{
repositoriesDB: mockDb,
getRepository: tt.fields.getRepository,
storecreds: tt.fields.storecreds,
submoduleEnabled: tt.fields.submoduleEnabled,
repoServerClientSet: &repo_mocks.Clientset{RepoServerServiceClient: mockRepoClient},
}
got, err := a.GetFiles(tt.args.ctx, tt.args.repoURL, tt.args.revision, tt.args.pattern, tt.args.noRevisionCache)
got, err := a.GetFiles(tt.args.ctx, tt.args.repoURL, tt.args.revision, tt.args.pattern, tt.args.noRevisionCache, tt.args.verifyCommit)
if !tt.wantErr(t, err, fmt.Sprintf("GetFiles(%v, %v, %v, %v, %v)", tt.args.ctx, tt.args.repoURL, tt.args.revision, tt.args.pattern, tt.args.noRevisionCache)) {
return
}
@@ -187,7 +188,9 @@ func TestGetFiles(t *testing.T) {
}
func TestNewArgoCDService(t *testing.T) {
service, err := NewArgoCDService(&db_mocks.ArgoDB{}, false, &repo_mocks.Clientset{}, false)
assert.NoError(t, err, err)
service, err := NewArgoCDService(func(ctx context.Context, url, project string) (*v1alpha1.Repository, error) {
return &v1alpha1.Repository{}, nil
}, false, &repo_mocks.Clientset{}, false)
require.NoError(t, err)
assert.NotNil(t, service)
}

View File

@@ -2,13 +2,14 @@ package scm_provider
import (
"context"
"errors"
"fmt"
"github.com/aws/aws-sdk-go/aws/request"
pathpkg "path"
"path/filepath"
"strings"
application "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
"github.com/aws/aws-sdk-go/aws/request"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/arn"
"github.com/aws/aws-sdk-go/aws/awserr"
@@ -19,6 +20,8 @@ import (
log "github.com/sirupsen/logrus"
"golang.org/x/exp/maps"
"k8s.io/utils/strings/slices"
application "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
const (
@@ -325,7 +328,8 @@ func getCodeCommitFIPSEndpoint(repoUrl string) (string, error) {
}
func hasAwsError(err error, codes ...string) bool {
if awsErr, ok := err.(awserr.Error); ok {
var awsErr awserr.Error
if errors.As(err, &awsErr) {
return slices.Contains(codes, awsErr.Code())
}
return false
@@ -354,7 +358,7 @@ func createAWSDiscoveryClients(_ context.Context, role string, region string) (*
Credentials: assumeRoleCreds,
})
if err != nil {
return nil, nil, fmt.Errorf("error creating new AWS discovery session: %s", err)
return nil, nil, fmt.Errorf("error creating new AWS discovery session: %w", err)
}
} else {
log.Debugf("role is not provided for AWS CodeCommit discovery, using pod role")

View File

@@ -1,4 +1,4 @@
// Code generated by mockery v2.26.1. DO NOT EDIT.
// Code generated by mockery v2.43.2. DO NOT EDIT.
package mocks
@@ -17,14 +17,6 @@ type AWSCodeCommitClient struct {
mock.Mock
}
type AWSCodeCommitClient_Expecter struct {
mock *mock.Mock
}
func (_m *AWSCodeCommitClient) EXPECT() *AWSCodeCommitClient_Expecter {
return &AWSCodeCommitClient_Expecter{mock: &_m.Mock}
}
// GetFolderWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *AWSCodeCommitClient) GetFolderWithContext(_a0 context.Context, _a1 *codecommit.GetFolderInput, _a2 ...request.Option) (*codecommit.GetFolderOutput, error) {
_va := make([]interface{}, len(_a2))
@@ -36,6 +28,10 @@ func (_m *AWSCodeCommitClient) GetFolderWithContext(_a0 context.Context, _a1 *co
_ca = append(_ca, _va...)
ret := _m.Called(_ca...)
if len(ret) == 0 {
panic("no return value specified for GetFolderWithContext")
}
var r0 *codecommit.GetFolderOutput
var r1 error
if rf, ok := ret.Get(0).(func(context.Context, *codecommit.GetFolderInput, ...request.Option) (*codecommit.GetFolderOutput, error)); ok {
@@ -58,43 +54,6 @@ func (_m *AWSCodeCommitClient) GetFolderWithContext(_a0 context.Context, _a1 *co
return r0, r1
}
// AWSCodeCommitClient_GetFolderWithContext_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetFolderWithContext'
type AWSCodeCommitClient_GetFolderWithContext_Call struct {
*mock.Call
}
// GetFolderWithContext is a helper method to define mock.On call
// - _a0 context.Context
// - _a1 *codecommit.GetFolderInput
// - _a2 ...request.Option
func (_e *AWSCodeCommitClient_Expecter) GetFolderWithContext(_a0 interface{}, _a1 interface{}, _a2 ...interface{}) *AWSCodeCommitClient_GetFolderWithContext_Call {
return &AWSCodeCommitClient_GetFolderWithContext_Call{Call: _e.mock.On("GetFolderWithContext",
append([]interface{}{_a0, _a1}, _a2...)...)}
}
func (_c *AWSCodeCommitClient_GetFolderWithContext_Call) Run(run func(_a0 context.Context, _a1 *codecommit.GetFolderInput, _a2 ...request.Option)) *AWSCodeCommitClient_GetFolderWithContext_Call {
_c.Call.Run(func(args mock.Arguments) {
variadicArgs := make([]request.Option, len(args)-2)
for i, a := range args[2:] {
if a != nil {
variadicArgs[i] = a.(request.Option)
}
}
run(args[0].(context.Context), args[1].(*codecommit.GetFolderInput), variadicArgs...)
})
return _c
}
func (_c *AWSCodeCommitClient_GetFolderWithContext_Call) Return(_a0 *codecommit.GetFolderOutput, _a1 error) *AWSCodeCommitClient_GetFolderWithContext_Call {
_c.Call.Return(_a0, _a1)
return _c
}
func (_c *AWSCodeCommitClient_GetFolderWithContext_Call) RunAndReturn(run func(context.Context, *codecommit.GetFolderInput, ...request.Option) (*codecommit.GetFolderOutput, error)) *AWSCodeCommitClient_GetFolderWithContext_Call {
_c.Call.Return(run)
return _c
}
// GetRepositoryWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *AWSCodeCommitClient) GetRepositoryWithContext(_a0 context.Context, _a1 *codecommit.GetRepositoryInput, _a2 ...request.Option) (*codecommit.GetRepositoryOutput, error) {
_va := make([]interface{}, len(_a2))
@@ -106,6 +65,10 @@ func (_m *AWSCodeCommitClient) GetRepositoryWithContext(_a0 context.Context, _a1
_ca = append(_ca, _va...)
ret := _m.Called(_ca...)
if len(ret) == 0 {
panic("no return value specified for GetRepositoryWithContext")
}
var r0 *codecommit.GetRepositoryOutput
var r1 error
if rf, ok := ret.Get(0).(func(context.Context, *codecommit.GetRepositoryInput, ...request.Option) (*codecommit.GetRepositoryOutput, error)); ok {
@@ -128,43 +91,6 @@ func (_m *AWSCodeCommitClient) GetRepositoryWithContext(_a0 context.Context, _a1
return r0, r1
}
// AWSCodeCommitClient_GetRepositoryWithContext_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetRepositoryWithContext'
type AWSCodeCommitClient_GetRepositoryWithContext_Call struct {
*mock.Call
}
// GetRepositoryWithContext is a helper method to define mock.On call
// - _a0 context.Context
// - _a1 *codecommit.GetRepositoryInput
// - _a2 ...request.Option
func (_e *AWSCodeCommitClient_Expecter) GetRepositoryWithContext(_a0 interface{}, _a1 interface{}, _a2 ...interface{}) *AWSCodeCommitClient_GetRepositoryWithContext_Call {
return &AWSCodeCommitClient_GetRepositoryWithContext_Call{Call: _e.mock.On("GetRepositoryWithContext",
append([]interface{}{_a0, _a1}, _a2...)...)}
}
func (_c *AWSCodeCommitClient_GetRepositoryWithContext_Call) Run(run func(_a0 context.Context, _a1 *codecommit.GetRepositoryInput, _a2 ...request.Option)) *AWSCodeCommitClient_GetRepositoryWithContext_Call {
_c.Call.Run(func(args mock.Arguments) {
variadicArgs := make([]request.Option, len(args)-2)
for i, a := range args[2:] {
if a != nil {
variadicArgs[i] = a.(request.Option)
}
}
run(args[0].(context.Context), args[1].(*codecommit.GetRepositoryInput), variadicArgs...)
})
return _c
}
func (_c *AWSCodeCommitClient_GetRepositoryWithContext_Call) Return(_a0 *codecommit.GetRepositoryOutput, _a1 error) *AWSCodeCommitClient_GetRepositoryWithContext_Call {
_c.Call.Return(_a0, _a1)
return _c
}
func (_c *AWSCodeCommitClient_GetRepositoryWithContext_Call) RunAndReturn(run func(context.Context, *codecommit.GetRepositoryInput, ...request.Option) (*codecommit.GetRepositoryOutput, error)) *AWSCodeCommitClient_GetRepositoryWithContext_Call {
_c.Call.Return(run)
return _c
}
// ListBranchesWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *AWSCodeCommitClient) ListBranchesWithContext(_a0 context.Context, _a1 *codecommit.ListBranchesInput, _a2 ...request.Option) (*codecommit.ListBranchesOutput, error) {
_va := make([]interface{}, len(_a2))
@@ -176,6 +102,10 @@ func (_m *AWSCodeCommitClient) ListBranchesWithContext(_a0 context.Context, _a1
_ca = append(_ca, _va...)
ret := _m.Called(_ca...)
if len(ret) == 0 {
panic("no return value specified for ListBranchesWithContext")
}
var r0 *codecommit.ListBranchesOutput
var r1 error
if rf, ok := ret.Get(0).(func(context.Context, *codecommit.ListBranchesInput, ...request.Option) (*codecommit.ListBranchesOutput, error)); ok {
@@ -198,43 +128,6 @@ func (_m *AWSCodeCommitClient) ListBranchesWithContext(_a0 context.Context, _a1
return r0, r1
}
// AWSCodeCommitClient_ListBranchesWithContext_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'ListBranchesWithContext'
type AWSCodeCommitClient_ListBranchesWithContext_Call struct {
*mock.Call
}
// ListBranchesWithContext is a helper method to define mock.On call
// - _a0 context.Context
// - _a1 *codecommit.ListBranchesInput
// - _a2 ...request.Option
func (_e *AWSCodeCommitClient_Expecter) ListBranchesWithContext(_a0 interface{}, _a1 interface{}, _a2 ...interface{}) *AWSCodeCommitClient_ListBranchesWithContext_Call {
return &AWSCodeCommitClient_ListBranchesWithContext_Call{Call: _e.mock.On("ListBranchesWithContext",
append([]interface{}{_a0, _a1}, _a2...)...)}
}
func (_c *AWSCodeCommitClient_ListBranchesWithContext_Call) Run(run func(_a0 context.Context, _a1 *codecommit.ListBranchesInput, _a2 ...request.Option)) *AWSCodeCommitClient_ListBranchesWithContext_Call {
_c.Call.Run(func(args mock.Arguments) {
variadicArgs := make([]request.Option, len(args)-2)
for i, a := range args[2:] {
if a != nil {
variadicArgs[i] = a.(request.Option)
}
}
run(args[0].(context.Context), args[1].(*codecommit.ListBranchesInput), variadicArgs...)
})
return _c
}
func (_c *AWSCodeCommitClient_ListBranchesWithContext_Call) Return(_a0 *codecommit.ListBranchesOutput, _a1 error) *AWSCodeCommitClient_ListBranchesWithContext_Call {
_c.Call.Return(_a0, _a1)
return _c
}
func (_c *AWSCodeCommitClient_ListBranchesWithContext_Call) RunAndReturn(run func(context.Context, *codecommit.ListBranchesInput, ...request.Option) (*codecommit.ListBranchesOutput, error)) *AWSCodeCommitClient_ListBranchesWithContext_Call {
_c.Call.Return(run)
return _c
}
// ListRepositoriesWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *AWSCodeCommitClient) ListRepositoriesWithContext(_a0 context.Context, _a1 *codecommit.ListRepositoriesInput, _a2 ...request.Option) (*codecommit.ListRepositoriesOutput, error) {
_va := make([]interface{}, len(_a2))
@@ -246,6 +139,10 @@ func (_m *AWSCodeCommitClient) ListRepositoriesWithContext(_a0 context.Context,
_ca = append(_ca, _va...)
ret := _m.Called(_ca...)
if len(ret) == 0 {
panic("no return value specified for ListRepositoriesWithContext")
}
var r0 *codecommit.ListRepositoriesOutput
var r1 error
if rf, ok := ret.Get(0).(func(context.Context, *codecommit.ListRepositoriesInput, ...request.Option) (*codecommit.ListRepositoriesOutput, error)); ok {
@@ -268,50 +165,12 @@ func (_m *AWSCodeCommitClient) ListRepositoriesWithContext(_a0 context.Context,
return r0, r1
}
// AWSCodeCommitClient_ListRepositoriesWithContext_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'ListRepositoriesWithContext'
type AWSCodeCommitClient_ListRepositoriesWithContext_Call struct {
*mock.Call
}
// ListRepositoriesWithContext is a helper method to define mock.On call
// - _a0 context.Context
// - _a1 *codecommit.ListRepositoriesInput
// - _a2 ...request.Option
func (_e *AWSCodeCommitClient_Expecter) ListRepositoriesWithContext(_a0 interface{}, _a1 interface{}, _a2 ...interface{}) *AWSCodeCommitClient_ListRepositoriesWithContext_Call {
return &AWSCodeCommitClient_ListRepositoriesWithContext_Call{Call: _e.mock.On("ListRepositoriesWithContext",
append([]interface{}{_a0, _a1}, _a2...)...)}
}
func (_c *AWSCodeCommitClient_ListRepositoriesWithContext_Call) Run(run func(_a0 context.Context, _a1 *codecommit.ListRepositoriesInput, _a2 ...request.Option)) *AWSCodeCommitClient_ListRepositoriesWithContext_Call {
_c.Call.Run(func(args mock.Arguments) {
variadicArgs := make([]request.Option, len(args)-2)
for i, a := range args[2:] {
if a != nil {
variadicArgs[i] = a.(request.Option)
}
}
run(args[0].(context.Context), args[1].(*codecommit.ListRepositoriesInput), variadicArgs...)
})
return _c
}
func (_c *AWSCodeCommitClient_ListRepositoriesWithContext_Call) Return(_a0 *codecommit.ListRepositoriesOutput, _a1 error) *AWSCodeCommitClient_ListRepositoriesWithContext_Call {
_c.Call.Return(_a0, _a1)
return _c
}
func (_c *AWSCodeCommitClient_ListRepositoriesWithContext_Call) RunAndReturn(run func(context.Context, *codecommit.ListRepositoriesInput, ...request.Option) (*codecommit.ListRepositoriesOutput, error)) *AWSCodeCommitClient_ListRepositoriesWithContext_Call {
_c.Call.Return(run)
return _c
}
type mockConstructorTestingTNewAWSCodeCommitClient interface {
// NewAWSCodeCommitClient creates a new instance of AWSCodeCommitClient. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
// The first argument is typically a *testing.T value.
func NewAWSCodeCommitClient(t interface {
mock.TestingT
Cleanup(func())
}
// NewAWSCodeCommitClient creates a new instance of AWSCodeCommitClient. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
func NewAWSCodeCommitClient(t mockConstructorTestingTNewAWSCodeCommitClient) *AWSCodeCommitClient {
}) *AWSCodeCommitClient {
mock := &AWSCodeCommitClient{}
mock.Mock.Test(t)

View File

@@ -1,4 +1,4 @@
// Code generated by mockery v2.26.1. DO NOT EDIT.
// Code generated by mockery v2.43.2. DO NOT EDIT.
package mocks
@@ -16,14 +16,6 @@ type AWSTaggingClient struct {
mock.Mock
}
type AWSTaggingClient_Expecter struct {
mock *mock.Mock
}
func (_m *AWSTaggingClient) EXPECT() *AWSTaggingClient_Expecter {
return &AWSTaggingClient_Expecter{mock: &_m.Mock}
}
// GetResourcesWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *AWSTaggingClient) GetResourcesWithContext(_a0 context.Context, _a1 *resourcegroupstaggingapi.GetResourcesInput, _a2 ...request.Option) (*resourcegroupstaggingapi.GetResourcesOutput, error) {
_va := make([]interface{}, len(_a2))
@@ -35,6 +27,10 @@ func (_m *AWSTaggingClient) GetResourcesWithContext(_a0 context.Context, _a1 *re
_ca = append(_ca, _va...)
ret := _m.Called(_ca...)
if len(ret) == 0 {
panic("no return value specified for GetResourcesWithContext")
}
var r0 *resourcegroupstaggingapi.GetResourcesOutput
var r1 error
if rf, ok := ret.Get(0).(func(context.Context, *resourcegroupstaggingapi.GetResourcesInput, ...request.Option) (*resourcegroupstaggingapi.GetResourcesOutput, error)); ok {
@@ -57,50 +53,12 @@ func (_m *AWSTaggingClient) GetResourcesWithContext(_a0 context.Context, _a1 *re
return r0, r1
}
// AWSTaggingClient_GetResourcesWithContext_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetResourcesWithContext'
type AWSTaggingClient_GetResourcesWithContext_Call struct {
*mock.Call
}
// GetResourcesWithContext is a helper method to define mock.On call
// - _a0 context.Context
// - _a1 *resourcegroupstaggingapi.GetResourcesInput
// - _a2 ...request.Option
func (_e *AWSTaggingClient_Expecter) GetResourcesWithContext(_a0 interface{}, _a1 interface{}, _a2 ...interface{}) *AWSTaggingClient_GetResourcesWithContext_Call {
return &AWSTaggingClient_GetResourcesWithContext_Call{Call: _e.mock.On("GetResourcesWithContext",
append([]interface{}{_a0, _a1}, _a2...)...)}
}
func (_c *AWSTaggingClient_GetResourcesWithContext_Call) Run(run func(_a0 context.Context, _a1 *resourcegroupstaggingapi.GetResourcesInput, _a2 ...request.Option)) *AWSTaggingClient_GetResourcesWithContext_Call {
_c.Call.Run(func(args mock.Arguments) {
variadicArgs := make([]request.Option, len(args)-2)
for i, a := range args[2:] {
if a != nil {
variadicArgs[i] = a.(request.Option)
}
}
run(args[0].(context.Context), args[1].(*resourcegroupstaggingapi.GetResourcesInput), variadicArgs...)
})
return _c
}
func (_c *AWSTaggingClient_GetResourcesWithContext_Call) Return(_a0 *resourcegroupstaggingapi.GetResourcesOutput, _a1 error) *AWSTaggingClient_GetResourcesWithContext_Call {
_c.Call.Return(_a0, _a1)
return _c
}
func (_c *AWSTaggingClient_GetResourcesWithContext_Call) RunAndReturn(run func(context.Context, *resourcegroupstaggingapi.GetResourcesInput, ...request.Option) (*resourcegroupstaggingapi.GetResourcesOutput, error)) *AWSTaggingClient_GetResourcesWithContext_Call {
_c.Call.Return(run)
return _c
}
type mockConstructorTestingTNewAWSTaggingClient interface {
// NewAWSTaggingClient creates a new instance of AWSTaggingClient. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
// The first argument is typically a *testing.T value.
func NewAWSTaggingClient(t interface {
mock.TestingT
Cleanup(func())
}
// NewAWSTaggingClient creates a new instance of AWSTaggingClient. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
func NewAWSTaggingClient(t mockConstructorTestingTNewAWSTaggingClient) *AWSTaggingClient {
}) *AWSTaggingClient {
mock := &AWSTaggingClient{}
mock.Mock.Test(t)

View File

@@ -6,14 +6,15 @@ import (
"sort"
"testing"
"github.com/argoproj/argo-cd/v2/applicationset/services/scm_provider/aws_codecommit/mocks"
"github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/service/codecommit"
"github.com/aws/aws-sdk-go/service/resourcegroupstaggingapi"
"github.com/google/go-cmp/cmp"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/mock"
"github.com/argoproj/argo-cd/v2/applicationset/services/scm_provider/aws_codecommit/mocks"
"github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
type awsCodeCommitTestRepository struct {
@@ -177,8 +178,8 @@ func TestAWSCodeCommitListRepos(t *testing.T) {
if repo.getRepositoryNilMetadata {
repoMetadata = nil
}
codeCommitClient.EXPECT().
GetRepositoryWithContext(ctx, &codecommit.GetRepositoryInput{RepositoryName: aws.String(repo.name)}).
codeCommitClient.
On("GetRepositoryWithContext", ctx, &codecommit.GetRepositoryInput{RepositoryName: aws.String(repo.name)}).
Return(&codecommit.GetRepositoryOutput{RepositoryMetadata: repoMetadata}, repo.getRepositoryError)
codecommitRepoNameIdPairs = append(codecommitRepoNameIdPairs, &codecommit.RepositoryNameIdPair{
RepositoryId: aws.String(repo.id),
@@ -193,14 +194,14 @@ func TestAWSCodeCommitListRepos(t *testing.T) {
}
if testCase.expectListAtCodeCommit {
codeCommitClient.EXPECT().
ListRepositoriesWithContext(ctx, &codecommit.ListRepositoriesInput{}).
codeCommitClient.
On("ListRepositoriesWithContext", ctx, &codecommit.ListRepositoriesInput{}).
Return(&codecommit.ListRepositoriesOutput{
Repositories: codecommitRepoNameIdPairs,
}, testCase.listRepositoryError)
} else {
taggingClient.EXPECT().
GetResourcesWithContext(ctx, mock.MatchedBy(equalIgnoringTagFilterOrder(&resourcegroupstaggingapi.GetResourcesInput{
taggingClient.
On("GetResourcesWithContext", ctx, mock.MatchedBy(equalIgnoringTagFilterOrder(&resourcegroupstaggingapi.GetResourcesInput{
TagFilters: testCase.expectTagFilters,
ResourceTypeFilters: aws.StringSlice([]string{resourceTypeCodeCommitRepository}),
}))).
@@ -350,8 +351,8 @@ func TestAWSCodeCommitRepoHasPath(t *testing.T) {
taggingClient := mocks.NewAWSTaggingClient(t)
ctx := context.Background()
if testCase.expectedGetFolderPath != "" {
codeCommitClient.EXPECT().
GetFolderWithContext(ctx, &codecommit.GetFolderInput{
codeCommitClient.
On("GetFolderWithContext", ctx, &codecommit.GetFolderInput{
CommitSpecifier: aws.String(branch),
FolderPath: aws.String(testCase.expectedGetFolderPath),
RepositoryName: aws.String(repoName),
@@ -423,14 +424,14 @@ func TestAWSCodeCommitGetBranches(t *testing.T) {
taggingClient := mocks.NewAWSTaggingClient(t)
ctx := context.Background()
if testCase.allBranches {
codeCommitClient.EXPECT().
ListBranchesWithContext(ctx, &codecommit.ListBranchesInput{
codeCommitClient.
On("ListBranchesWithContext", ctx, &codecommit.ListBranchesInput{
RepositoryName: aws.String(name),
}).
Return(&codecommit.ListBranchesOutput{Branches: aws.StringSlice(testCase.branches)}, testCase.apiError)
} else {
codeCommitClient.EXPECT().
GetRepositoryWithContext(ctx, &codecommit.GetRepositoryInput{RepositoryName: aws.String(name)}).
codeCommitClient.
On("GetRepositoryWithContext", ctx, &codecommit.GetRepositoryInput{RepositoryName: aws.String(name)}).
Return(&codecommit.GetRepositoryOutput{RepositoryMetadata: &codecommit.RepositoryMetadata{
AccountId: aws.String(organization),
DefaultBranch: aws.String(defaultBranch),

View File

@@ -2,6 +2,7 @@ package scm_provider
import (
"context"
"errors"
"fmt"
netUrl "net/url"
"strings"
@@ -51,8 +52,10 @@ type AzureDevOpsProvider struct {
allBranches bool
}
var _ SCMProviderService = &AzureDevOpsProvider{}
var _ AzureDevOpsClientFactory = &devopsFactoryImpl{}
var (
_ SCMProviderService = &AzureDevOpsProvider{}
_ AzureDevOpsClientFactory = &devopsFactoryImpl{}
)
func NewAzureDevOpsProvider(ctx context.Context, accessToken string, org string, url string, project string, allBranches bool) (*AzureDevOpsProvider, error) {
if accessToken == "" {
@@ -60,7 +63,6 @@ func NewAzureDevOpsProvider(ctx context.Context, accessToken string, org string,
}
devOpsURL, err := getValidDevOpsURL(url, org)
if err != nil {
return nil, err
}
@@ -77,7 +79,6 @@ func (g *AzureDevOpsProvider) ListRepos(ctx context.Context, cloneProtocol strin
}
getRepoArgs := azureGit.GetRepositoriesArgs{Project: &g.teamProject}
azureRepos, err := gitClient.GetRepositories(ctx, getRepoArgs)
if err != nil {
return nil, err
}
@@ -106,7 +107,7 @@ func (g *AzureDevOpsProvider) RepoHasPath(ctx context.Context, repo *Repository,
}
var repoId string
if uuid, isUuid := repo.RepositoryId.(uuid.UUID); isUuid { //most likely an UUID, but do type-safe check anyway. Do %v fallback if not expected type.
if uuid, isUuid := repo.RepositoryId.(uuid.UUID); isUuid { // most likely an UUID, but do type-safe check anyway. Do %v fallback if not expected type.
repoId = uuid.String()
} else {
repoId = fmt.Sprintf("%v", repo.RepositoryId)
@@ -115,9 +116,9 @@ func (g *AzureDevOpsProvider) RepoHasPath(ctx context.Context, repo *Repository,
branchName := repo.Branch
getItemArgs := azureGit.GetItemArgs{RepositoryId: &repoId, Project: &g.teamProject, Path: &path, VersionDescriptor: &azureGit.GitVersionDescriptor{Version: &branchName}}
_, err = gitClient.GetItem(ctx, getItemArgs)
if err != nil {
if wrappedError, isWrappedError := err.(azuredevops.WrappedError); isWrappedError && wrappedError.TypeKey != nil {
var wrappedError azuredevops.WrappedError
if errors.As(err, &wrappedError) && wrappedError.TypeKey != nil {
if *wrappedError.TypeKey == AzureDevOpsErrorsTypeKeyValues.GitItemNotFound {
return false, nil
}
@@ -138,11 +139,12 @@ func (g *AzureDevOpsProvider) GetBranches(ctx context.Context, repo *Repository)
repos := []*Repository{}
if !g.allBranches {
defaultBranchName := strings.Replace(repo.Branch, "refs/heads/", "", 1) //Azure DevOps returns default branch info like 'refs/heads/main', but does not support branch lookup of this format.
defaultBranchName := strings.Replace(repo.Branch, "refs/heads/", "", 1) // Azure DevOps returns default branch info like 'refs/heads/main', but does not support branch lookup of this format.
getBranchArgs := azureGit.GetBranchArgs{RepositoryId: &repo.Repository, Project: &g.teamProject, Name: &defaultBranchName}
branchResult, err := gitClient.GetBranch(ctx, getBranchArgs)
if err != nil {
if wrappedError, isWrappedError := err.(azuredevops.WrappedError); isWrappedError && wrappedError.TypeKey != nil {
var wrappedError azuredevops.WrappedError
if errors.As(err, &wrappedError) && wrappedError.TypeKey != nil {
if *wrappedError.TypeKey == AzureDevOpsErrorsTypeKeyValues.GitRepositoryNotFound {
return repos, nil
}
@@ -170,7 +172,8 @@ func (g *AzureDevOpsProvider) GetBranches(ctx context.Context, repo *Repository)
getBranchesRequest := azureGit.GetBranchesArgs{RepositoryId: &repo.Repository, Project: &g.teamProject}
branches, err := gitClient.GetBranches(ctx, getBranchesRequest)
if err != nil {
if wrappedError, isWrappedError := err.(azuredevops.WrappedError); isWrappedError && wrappedError.TypeKey != nil {
var wrappedError azuredevops.WrappedError
if errors.As(err, &wrappedError) && wrappedError.TypeKey != nil {
if *wrappedError.TypeKey == AzureDevOpsErrorsTypeKeyValues.GitRepositoryNotFound {
return repos, nil
}
@@ -209,7 +212,6 @@ func getValidDevOpsURL(url string, org string) (string, error) {
devOpsURL := fmt.Sprintf("%s%s%s", url, separator, org)
urlCheck, err := netUrl.ParseRequestURI(devOpsURL)
if err != nil {
return "", fmt.Errorf("got an invalid URL for the Azure SCM generator: %w", err)
}

File diff suppressed because it is too large Load Diff

View File

@@ -8,15 +8,17 @@ import (
"github.com/google/uuid"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/mock"
"k8s.io/utils/pointer"
"github.com/stretchr/testify/require"
"k8s.io/utils/ptr"
azureMock "github.com/argoproj/argo-cd/v2/applicationset/services/scm_provider/azure_devops/git/mocks"
"github.com/microsoft/azure-devops-go-api/azuredevops"
azureGit "github.com/microsoft/azure-devops-go-api/azuredevops/git"
azureMock "github.com/argoproj/argo-cd/v2/applicationset/services/scm_provider/azure_devops/git/mocks"
)
func s(input string) *string {
return pointer.String(input)
return ptr.To(input)
}
func TestAzureDevopsRepoHasPath(t *testing.T) {
@@ -89,26 +91,24 @@ func TestAzureDevopsRepoHasPath(t *testing.T) {
hasPath, err := provider.RepoHasPath(ctx, repo, path)
if testCase.clientError != nil {
assert.ErrorContains(t, err, testCase.clientError.Error())
require.ErrorContains(t, err, testCase.clientError.Error())
gitClientMock.AssertNotCalled(t, "GetItem", ctx, azureGit.GetItemArgs{Project: &teamProject, Path: &path, VersionDescriptor: &azureGit.GitVersionDescriptor{Version: &branchName}, RepositoryId: repoId})
return
}
if testCase.returnError {
assert.ErrorContains(t, err, testCase.errorMessage)
require.ErrorContains(t, err, testCase.errorMessage)
}
assert.Equal(t, testCase.pathFound, hasPath)
gitClientMock.AssertCalled(t, "GetItem", ctx, azureGit.GetItemArgs{Project: &teamProject, Path: &path, VersionDescriptor: &azureGit.GitVersionDescriptor{Version: &branchName}, RepositoryId: repoId})
})
}
}
func TestGetDefaultBranchOnDisabledRepo(t *testing.T) {
organization := "myorg"
teamProject := "myorg_project"
repoName := "myorg_project_repo"
@@ -155,9 +155,9 @@ func TestGetDefaultBranchOnDisabledRepo(t *testing.T) {
branches, err := provider.GetBranches(ctx, repo)
if testCase.shouldReturnError {
assert.Error(t, err)
require.Error(t, err)
} else {
assert.NoError(t, err)
require.NoError(t, err)
}
assert.Empty(t, branches)
@@ -168,7 +168,6 @@ func TestGetDefaultBranchOnDisabledRepo(t *testing.T) {
}
func TestGetAllBranchesOnDisabledRepo(t *testing.T) {
organization := "myorg"
teamProject := "myorg_project"
repoName := "myorg_project_repo"
@@ -215,9 +214,9 @@ func TestGetAllBranchesOnDisabledRepo(t *testing.T) {
branches, err := provider.GetBranches(ctx, repo)
if testCase.shouldReturnError {
assert.Error(t, err)
require.Error(t, err)
} else {
assert.NoError(t, err)
require.NoError(t, err)
}
assert.Empty(t, branches)
@@ -228,9 +227,7 @@ func TestGetAllBranchesOnDisabledRepo(t *testing.T) {
}
func TestAzureDevOpsGetDefaultBranchStripsRefsName(t *testing.T) {
t.Run("Get branches only default branch removes characters before querying azure devops", func(t *testing.T) {
organization := "myorg"
teamProject := "myorg_project"
repoName := "myorg_project_repo"
@@ -253,7 +250,7 @@ func TestAzureDevOpsGetDefaultBranchStripsRefsName(t *testing.T) {
provider := AzureDevOpsProvider{organization: organization, teamProject: teamProject, clientFactory: clientFactoryMock, allBranches: false}
branches, err := provider.GetBranches(ctx, repo)
assert.NoError(t, err)
require.NoError(t, err)
assert.Len(t, branches, 1)
assert.Equal(t, strippedBranchName, branches[0].Branch)
@@ -310,7 +307,7 @@ func TestAzureDevOpsGetBranchesDefultBranchOnly(t *testing.T) {
branches, err := provider.GetBranches(ctx, repo)
if testCase.clientError != nil {
assert.ErrorContains(t, err, testCase.clientError.Error())
require.ErrorContains(t, err, testCase.clientError.Error())
gitClientMock.AssertNotCalled(t, "GetBranch", ctx, azureGit.GetBranchArgs{RepositoryId: &repoName, Project: &teamProject, Name: &defaultBranch})
return
@@ -318,7 +315,7 @@ func TestAzureDevOpsGetBranchesDefultBranchOnly(t *testing.T) {
if testCase.getBranchesApiError != nil {
assert.Empty(t, branches)
assert.ErrorContains(t, err, testCase.getBranchesApiError.Error())
require.ErrorContains(t, err, testCase.getBranchesApiError.Error())
} else {
if testCase.expectedBranch != nil {
assert.NotEmpty(t, branches)
@@ -394,21 +391,20 @@ func TestAzureDevopsGetBranches(t *testing.T) {
branches, err := provider.GetBranches(ctx, repo)
if testCase.expectedProcessingErrorMsg != "" {
assert.ErrorContains(t, err, testCase.expectedProcessingErrorMsg)
require.ErrorContains(t, err, testCase.expectedProcessingErrorMsg)
assert.Nil(t, branches)
return
}
if testCase.clientError != nil {
assert.ErrorContains(t, err, testCase.clientError.Error())
require.ErrorContains(t, err, testCase.clientError.Error())
gitClientMock.AssertNotCalled(t, "GetBranches", ctx, azureGit.GetBranchesArgs{RepositoryId: &repoName, Project: &teamProject})
return
}
if testCase.getBranchesApiError != nil {
assert.Empty(t, branches)
assert.ErrorContains(t, err, testCase.getBranchesApiError.Error())
require.ErrorContains(t, err, testCase.getBranchesApiError.Error())
} else {
if len(*testCase.expectedBranches) > 0 {
assert.NotEmpty(t, branches)
@@ -472,14 +468,14 @@ func TestGetAzureDevopsRepositories(t *testing.T) {
{Name: s("missing_default_branch"), RemoteUrl: s("https://remoteurl.u"), Id: repoId},
{DefaultBranch: s("missing_name"), RemoteUrl: s("https://remoteurl.u"), Id: repoId},
{Name: s("missing_remote_url"), DefaultBranch: s("main"), Id: repoId},
{Name: s("missing_id"), DefaultBranch: s("main"), RemoteUrl: s("https://remoteurl.u")}},
{Name: s("missing_id"), DefaultBranch: s("main"), RemoteUrl: s("https://remoteurl.u")},
},
expectedNumberOfRepos: 1,
},
}
for _, testCase := range testCases {
t.Run(testCase.name, func(t *testing.T) {
gitClientMock := azureMock.Client{}
gitClientMock.On("GetRepositories", ctx, azureGit.GetRepositoriesArgs{Project: s(teamProject)}).Return(&testCase.repositories, testCase.getRepositoriesError)
@@ -491,7 +487,7 @@ func TestGetAzureDevopsRepositories(t *testing.T) {
repositories, err := provider.ListRepos(ctx, "https")
if testCase.getRepositoriesError != nil {
assert.Error(t, err, "Expected an error from test case %v", testCase.name)
require.Error(t, err, "Expected an error from test case %v", testCase.name)
}
if testCase.expectedNumberOfRepos == 0 {

View File

@@ -46,13 +46,12 @@ func (c *ExtendedClient) GetContents(repo *Repository, path string) (bool, error
return true, nil
}
return false, fmt.Errorf(resp.Status)
return false, fmt.Errorf("%s", resp.Status)
}
var _ SCMProviderService = &BitBucketCloudProvider{}
func NewBitBucketCloudProvider(ctx context.Context, owner string, user string, password string, allBranches bool) (*BitBucketCloudProvider, error) {
client := &ExtendedClient{
bitbucket.NewBasicAuth(user, password),
user,
@@ -66,13 +65,13 @@ func (g *BitBucketCloudProvider) GetBranches(ctx context.Context, repo *Reposito
repos := []*Repository{}
branches, err := g.listBranches(repo)
if err != nil {
return nil, fmt.Errorf("error listing branches for %s/%s: %v", repo.Organization, repo.Repository, err)
return nil, fmt.Errorf("error listing branches for %s/%s: %w", repo.Organization, repo.Repository, err)
}
for _, branch := range branches {
hash, ok := branch.Target["hash"].(string)
if !ok {
return nil, fmt.Errorf("error getting SHA for branch for %s/%s/%s: %v", g.owner, repo.Repository, branch.Name, err)
return nil, fmt.Errorf("error getting SHA for branch for %s/%s/%s: %w", g.owner, repo.Repository, branch.Name, err)
}
repos = append(repos, &Repository{
Organization: repo.Organization,
@@ -98,12 +97,12 @@ func (g *BitBucketCloudProvider) ListRepos(ctx context.Context, cloneProtocol st
repos := []*Repository{}
accountReposResp, err := g.client.Repositories.ListForAccount(opt)
if err != nil {
return nil, fmt.Errorf("error listing repositories for %s: %v", g.owner, err)
return nil, fmt.Errorf("error listing repositories for %s: %w", g.owner, err)
}
for _, bitBucketRepo := range accountReposResp.Items {
cloneUrl, err := findCloneURL(cloneProtocol, &bitBucketRepo)
if err != nil {
return nil, fmt.Errorf("error fetching clone url for repo %s: %v", bitBucketRepo.Slug, err)
return nil, fmt.Errorf("error fetching clone url for repo %s: %w", bitBucketRepo.Slug, err)
}
repos = append(repos, &Repository{
Organization: g.owner,
@@ -151,11 +150,9 @@ func (g *BitBucketCloudProvider) listBranches(repo *Repository) ([]bitbucket.Rep
return nil, err
}
return branches.Branches, nil
}
func findCloneURL(cloneProtocol string, repo *bitbucket.Repository) (*string, error) {
cloneLinks, ok := repo.Links["clone"].([]interface{})
if !ok {
return nil, fmt.Errorf("unknown type returned from repo links")

View File

@@ -8,6 +8,7 @@ import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1"
)
@@ -18,7 +19,7 @@ func TestBitbucketHasRepo(t *testing.T) {
res.WriteHeader(http.StatusNotFound)
_, err := res.Write([]byte(""))
if err != nil {
assert.NoError(t, fmt.Errorf("Error in mock response %v", err))
require.NoError(t, fmt.Errorf("Error in mock response %w", err))
}
}
if req.URL.Path == "/repositories/test-owner/testmike/src/dc1edb6c7d650d8ba67719ddf7b662ad8f8fb798/.gitignore" {
@@ -55,7 +56,7 @@ func TestBitbucketHasRepo(t *testing.T) {
"size": 624
}`))
if err != nil {
assert.NoError(t, fmt.Errorf("Error in mock response %v", err))
require.NoError(t, fmt.Errorf("Error in mock response %w", err))
}
}
}))
@@ -95,7 +96,7 @@ func TestBitbucketHasRepo(t *testing.T) {
}
hasPath, err := provider.RepoHasPath(context.Background(), repo, c.path)
if err != nil {
assert.Error(t, fmt.Errorf("Error in test %v", err))
require.Error(t, fmt.Errorf("Error in test %w", err))
}
if c.status != http.StatusOK {
assert.False(t, hasPath)
@@ -208,7 +209,7 @@ func TestBitbucketListRepos(t *testing.T) {
"size": 1
}`))
if err != nil {
assert.NoError(t, fmt.Errorf("Error in mock response %v", err))
require.NoError(t, fmt.Errorf("Error in mock response %w", err))
}
}
if req.URL.Path == "/repositories/test-owner/testmike/refs/branches/main" {
@@ -303,7 +304,7 @@ func TestBitbucketListRepos(t *testing.T) {
}
}`))
if err != nil {
assert.NoError(t, fmt.Errorf("Error in mock response %v", err))
require.NoError(t, fmt.Errorf("Error in mock response %w", err))
}
}
if req.URL.Path == "/repositories/test-owner" {
@@ -442,7 +443,7 @@ func TestBitbucketListRepos(t *testing.T) {
"size": 1
}`))
if err != nil {
assert.NoError(t, fmt.Errorf("Error in mock response %v", err))
require.NoError(t, fmt.Errorf("Error in mock response %w", err))
}
}
}))
@@ -489,9 +490,9 @@ func TestBitbucketListRepos(t *testing.T) {
provider, _ := NewBitBucketCloudProvider(context.Background(), c.owner, "user", "password", c.allBranches)
rawRepos, err := ListRepos(context.Background(), provider, c.filters, c.proto)
if c.hasError {
assert.Error(t, err)
require.Error(t, err)
} else {
assert.NoError(t, err)
require.NoError(t, err)
repos := []*Repository{}
branches := []string{}
for _, r := range rawRepos {

Some files were not shown because too many files have changed in this diff Show More