Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: Update ro.Status.ALB when first creating rollout object #1986

Merged
merged 15 commits into from
Jul 22, 2022

Conversation

zachaller
Copy link
Collaborator

This fixes the case when we first create a rollout the status.ALB field does not
get updated with valid information from the alb.

Signed-off-by: zachaller [email protected]

@zachaller zachaller marked this pull request as draft April 19, 2022 20:06
@codecov
Copy link

codecov bot commented Apr 20, 2022

Codecov Report

Merging #1986 (c1cd376) into master (c4205e8) will decrease coverage by 0.01%.
The diff coverage is 89.18%.

@@            Coverage Diff             @@
##           master    #1986      +/-   ##
==========================================
- Coverage   82.21%   82.19%   -0.02%     
==========================================
  Files         121      121              
  Lines       17865    17883      +18     
==========================================
+ Hits        14687    14699      +12     
- Misses       2413     2417       +4     
- Partials      765      767       +2     
Impacted Files Coverage Δ
rollout/trafficrouting.go 75.48% <83.33%> (-1.08%) ⬇️
rollout/trafficrouting/alb/alb.go 83.10% <90.00%> (+0.64%) ⬆️
utils/rollout/rolloututil.go 92.30% <100.00%> (+0.57%) ⬆️
rollout/trafficrouting/istio/controller.go 50.81% <0.00%> (-1.63%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c4205e8...c1cd376. Read the comment docs.

@zachaller zachaller force-pushed the fix-alb-ro-status-update branch 2 times, most recently from d5670db to cd5d7c3 Compare April 21, 2022 13:42
@zachaller zachaller marked this pull request as ready for review April 21, 2022 18:02
@zachaller zachaller changed the title fix: Update ro.Status.ALB when first create rollout object fix: Update ro.Status.ALB when first creating rollout object Apr 22, 2022
Copy link
Member

@agrawroh agrawroh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good overall. Leaving some minor comments.

}
if weightVerified != nil {
if *weightVerified {
c.log.Infof("Desired weight (stepIdx: %d) %d verified", *index, desiredWeight)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be debug instead? How often would this be called?

Copy link
Collaborator Author

@zachaller zachaller May 8, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This also was previously an Inof log all I originally changed was just reming the outer if block.

This is not called too many times and it's also extremely valuable information that I think I would want available even in non debug mode as an end user.

if *weightVerified {
c.log.Infof("Desired weight (stepIdx: %d) %d verified", *index, desiredWeight)
} else {
c.log.Infof("Desired weight (stepIdx: %d) %d not yet verified", *index, desiredWeight)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as above. Please reason between using info vs. debug as it can really hurt the performance and pollute the logs if we flush everything.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same comment as above not a change I made and I also think the information is valuable enough for non debug logging.

return nil // return nil instead of error since we want to continue with normal reconciliation
}
if weightVerified != nil {
if *weightVerified {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could the line #197 be moved under this block?

Copy link
Collaborator Author

@zachaller zachaller May 8, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So originally all I changed was removing the outer if block. I have one concern about moving it to inside that block and that is I think I would also need to move it to set it back to false case as well which seems then better to leave it where it's at.

rollout/trafficrouting/alb/alb.go Show resolved Hide resolved
rollout/service_test.go Outdated Show resolved Hide resolved
rollout/service_test.go Outdated Show resolved Hide resolved
rollout/trafficrouting/alb/alb_test.go Outdated Show resolved Hide resolved
@zachaller zachaller force-pushed the fix-alb-ro-status-update branch 3 times, most recently from 0ba2159 to 6e0244f Compare May 9, 2022 02:35
@sonarcloud
Copy link

sonarcloud bot commented May 9, 2022

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
14.6% 14.6% Duplication

@harikrongali harikrongali added this to the v1.3 milestone Jun 22, 2022
@harikrongali
Copy link
Contributor

can you rebase against master so that we can merge?

… object

This fixes the case when we first create a rollout the status.ALB field does not
get updated with valid information form the elb.

Signed-off-by: zachaller <[email protected]>
This creates a new rolloututil function ShouldVerifyWeight that verifies
that we should call aws because the rollout is in the middle of some update.

The reason I feel this should move into the ingress implmentation function VerifyWeight
is becuase in the future other ingresses might also need to verify weights and adding
ingress specific status checks in trafficrouting.go like a leak details where it should be
up to the ingress provider to determin if it should be careful of rate limiting do to say it
being a cloud provider call.

Signed-off-by: zachaller <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: zachaller <[email protected]>
@github-actions
Copy link
Contributor

github-actions bot commented Jul 12, 2022

Go Published Test Results

1 714 tests   1 714 ✔️  2m 29s ⏱️
   101 suites         0 💤
       1 files           0

Results for commit c1cd376.

♻️ This comment has been updated with latest results.

@github-actions
Copy link
Contributor

github-actions bot commented Jul 12, 2022

E2E Tests Published Test Results

  1 files    1 suites   50m 16s ⏱️
88 tests 83 ✔️ 3 💤 2
90 runs  85 ✔️ 3 💤 2

For more details on these failures, see this check.

Results for commit c1cd376.

♻️ This comment has been updated with latest results.

Signed-off-by: zachaller <[email protected]>
Signed-off-by: zachaller <[email protected]>
rollout/trafficrouting/alb/alb.go Show resolved Hide resolved
rollout/trafficrouting.go Outdated Show resolved Hide resolved
Signed-off-by: zachaller <[email protected]>
Signed-off-by: zachaller <[email protected]>
@sonarcloud
Copy link

sonarcloud bot commented Jul 20, 2022

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
2.0% 2.0% Duplication

Copy link
Member

@perenesenko perenesenko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@perenesenko perenesenko merged commit 1bffed5 into argoproj:master Jul 22, 2022
tperdue321 added a commit to rallyhealth/argo-rollouts that referenced this pull request Oct 18, 2022
* feat: add support for influxdb as a metrics provider (argoproj#1839)

* feat: add InfluxDB metric provider implementation

Signed-off-by: Jayme Bird <[email protected]>

* feat: add influx to metric provider util count, add missing graphite

Signed-off-by: Jayme Bird <[email protected]>

* feat: add protobuf definitions for InfluxdbMetric

Signed-off-by: Jayme Bird <[email protected]>

* feat: add docs for the Influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add tests for influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add go mod replace for version of moq due to security issue

Signed-off-by: Jayme Bird <[email protected]>

* feat: update error message to distinguish failed cases - review feedback

Signed-off-by: Jayme Bird <[email protected]>

* feat: update tests to simplify mocking of QueryTableResult

An upstream change to the influx go client makes it easier to mock
QueryTableResult in tests. This removes a lot of boilerplate duplication
in the tests.

Signed-off-by: Jayme Bird <[email protected]>

* feat: re-run codegen

Signed-off-by: Jayme Bird <[email protected]>

* feat: Adds support for Istio traffic mirroring (argoproj#2074)

* feat: Add support for istio traffic mirroring steps

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

* bump e2e timeout

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

* Remove unintended change

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

* Cleaner events

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

* Add docs for mirror and fix up header routing

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

* small doc changes

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

* Add example

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

* Fix types and change example

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

* Remove unused type

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

* Docs change

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

* Fix PR comments

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

* Check for >=

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

* Remove unused function

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

* codegen

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

* Add better error logging

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

* a few more error msgs

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

* fix comments

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

* typo

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

* fix logic error

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

* redo header logic

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

* cleanup

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

* Fix issue with keeping route weight updated when no routes
are defined in spec.strategy.canary.trafficRouting.istio.virtualService.routes
requiring only a single route

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

* cleanup routes when promiting with last step being a pause

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

* fix bug with promote and last step is a pause

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

* Fix tests

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

* fix typo

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

* chore: improve openapi schema (argoproj#2081)

* feat: include all CRDs to the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat: use kube-openapi naming convention in the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* chore: generate OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat(grafana): Allow selecting datasource for grafana dashboard (argoproj#1988)

Signed-off-by: Jesse Antoszyk <[email protected]>

* feat: support /rollouts/:namespace?q=... and /rollout/:namespace/:name (argoproj#1902)

Signed-off-by: Simon Ninon <[email protected]>

* chore: Add e2e and unit test comment reports (argoproj#2123)

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

* chore: upgrade deps (argoproj#2136)

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

* fixes argoproj#2141 Added list and watch to clusterrole (argoproj#2145)

Signed-off-by: Martin Adler <[email protected]>

* fix: Update ro.Status.ALB when first creating rollout object (argoproj#1986)

* fix: make sure we update rollout.Status.ALB when first create Rollout object

This fixes the case when we first create a rollout the status.ALB field does not
get updated with valid information form the elb.

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

* Refactor check for if we should verify alb.

This creates a new rolloututil function ShouldVerifyWeight that verifies
that we should call aws because the rollout is in the middle of some update.

The reason I feel this should move into the ingress implmentation function VerifyWeight
is becuase in the future other ingresses might also need to verify weights and adding
ingress specific status checks in trafficrouting.go like a leak details where it should be
up to the ingress provider to determin if it should be careful of rate limiting do to say it
being a cloud provider call.

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

* lint

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

* Fix tests

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

* Add new test for ShouldVerifyWeight

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

* Fix logic

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

* Add test for where we do not need to verify weight and its already set

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

* fix up review comments

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

* fix tests

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

* fix bad merge

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

* Fix test

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

* Fix test

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

* Clearer function name

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

* Clean up if logic

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

* fix: remove metrics when objects are removed from cluster to prevent build up (argoproj#2115)

* fix: remove metrics on resource removal

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

* Add test

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

* More tests

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

* back off deps updates

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

* Fix dep change

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

* upgrade prom deps for new features

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

* fix deps

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

* chore: use controler-gen for cluster analysis template scope (argoproj#2148)

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

* fix(analysis): Fix Analysis Terminal Decision For Dry-Run Metrics (argoproj#2131)

Signed-off-by: Rohit Agrawal <[email protected]>

* docs: update release doc with brew formula details (argoproj#2165)

Signed-off-by: Leonardo Luz Almeida <[email protected]>

* fix(docs) Graphite metrics provider linked in docs sidebar. Fixes argoproj#2102. (argoproj#2094)

* Graphite metrics provider linked in docs sidebar

This fixes an issue wherein the Graphite metrics
provider has no sidebar link in the docs hosted
at https://argoproj.github.io/argo-rollouts/.

As a bonus, this also removes various trailing
whitespace from analysis docs.

Signed-off-by: Mike Ball <[email protected]>

* build trigger

Signed-off-by: Mike Ball <[email protected]>

* feat: emit rollout delete event (argoproj#1893)

Signed-off-by: Hui Kang <[email protected]>

Co-authored-by: Hui Kang <[email protected]>

* chore: Upgrade golang (argoproj#2160)

* Upgrade golang

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

* upgrade golang to 1.18 for e2e

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

* Fix deps

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

* Update build action

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

* Upgrade push action

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

* Update docker file

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

* Bump golang lint to match

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

* fix go.mod

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

* fix: Failed to process: Object 'Kind' is missing in Errors with rollouts notification (argoproj#2150)

* fix: update rolloutobject with gvk before writing to rollout informer

Signed-off-by: Ravi Hari <[email protected]>

* fix: controller schema linting

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* fix: rootPath support so that it uses the embedded files system (argoproj#2198)

* fix: rootPath support so that it uses the embeded files system

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

* Catch edge cases and make sure we always server index.html on not found

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

* turn path.Clean into var

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

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

* fix: change completed condition so it only triggers on pod hash changes also adds an event for when it  does changes. (argoproj#2203)

* feat: add healthy event/condition and fix completed event/condition

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

* fix unit tests

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

* rename vars to make more sense and remove healthy event becase it will never be consistent

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

* fix unit tests

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

* possible fix for e2e

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

* fix e2e

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

* unit test for complete function

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

* small cleanup and changes to not check generation

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

* fix unit test and proper behavior

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

* Fix e2e

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

* rename and fix one unit test

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

* fix unit tests

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

* fix unit test

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

* add seperate test for TestRolloutComplete

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

* renames

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

* fix e2e

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

* Set Completed to false

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

* Add event

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

* fix e2e

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

* refactor

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

* Fix all but one unit test

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

* fix last unit test

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

* lint

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

* cleanup

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

* Rename

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

* More renames

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

* small comment change

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

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

* feat: Add support for spec.ingressClassName (argoproj#2178)

This change adds support for `spec.ingressClassName` while still supporting
`kubernetes.io/ingress.class` annotation for backwards compatibility.

Fixes argoproj#1277

Signed-off-by: Siavash Safi <[email protected]>

Signed-off-by: Siavash Safi <[email protected]>

* fix: enable notifications without when condition (argoproj#2231)

* fix: enable notifications without when condition

Signed-off-by: Ravi Hari <[email protected]>

* fix: use trigger action item from the list

Signed-off-by: Ravi Hari <[email protected]>

* fix: add emptycondition logic to make notifications work with/without conditions

Signed-off-by: Ravi Hari <[email protected]>

* fix: linting

Signed-off-by: Ravi Hari <[email protected]>

Signed-off-by: Ravi Hari <[email protected]>

* Use standard cli format for dashboard root path (argoproj#2244)

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

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

* merge conflict broke tests

Signed-off-by: Travis Perdue <[email protected]>

Signed-off-by: Jayme Bird <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: Mário Bezerra <[email protected]>
Signed-off-by: Jesse Antoszyk <[email protected]>
Signed-off-by: Simon Ninon <[email protected]>
Signed-off-by: Martin Adler <[email protected]>
Signed-off-by: Rohit Agrawal <[email protected]>
Signed-off-by: Leonardo Luz Almeida <[email protected]>
Signed-off-by: Mike Ball <[email protected]>
Signed-off-by: Ravi Hari <[email protected]>
Signed-off-by: Siavash Safi <[email protected]>
Signed-off-by: Travis Perdue <[email protected]>
Co-authored-by: jaymebrd <[email protected]>
Co-authored-by: Zach Aller <[email protected]>
Co-authored-by: Mário Bezerra <[email protected]>
Co-authored-by: Jesse Antoszyk <[email protected]>
Co-authored-by: Simon Ninon <[email protected]>
Co-authored-by: Martin Adler <[email protected]>
Co-authored-by: Rohit Agrawal <[email protected]>
Co-authored-by: Leonardo Luz Almeida <[email protected]>
Co-authored-by: Mike Ball <[email protected]>
Co-authored-by: cskh <[email protected]>
Co-authored-by: Hui Kang <[email protected]>
Co-authored-by: RaviHari <[email protected]>
Co-authored-by: Siavash Safi <[email protected]>
jenciso pushed a commit to jenciso/argo-rollouts that referenced this pull request Oct 25, 2022
…j#1986)

* fix: make sure we update rollout.Status.ALB when first create Rollout object

This fixes the case when we first create a rollout the status.ALB field does not
get updated with valid information form the elb.

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

* Refactor check for if we should verify alb.

This creates a new rolloututil function ShouldVerifyWeight that verifies
that we should call aws because the rollout is in the middle of some update.

The reason I feel this should move into the ingress implmentation function VerifyWeight
is becuase in the future other ingresses might also need to verify weights and adding
ingress specific status checks in trafficrouting.go like a leak details where it should be
up to the ingress provider to determin if it should be careful of rate limiting do to say it
being a cloud provider call.

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

* lint

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

* Fix tests

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

* Add new test for ShouldVerifyWeight

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

* Fix logic

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

* Add test for where we do not need to verify weight and its already set

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

* fix up review comments

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

* fix tests

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

* fix bad merge

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

* Fix test

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

* Fix test

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

* Clearer function name

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

* Clean up if logic

Signed-off-by: zachaller <[email protected]>
tperdue321 added a commit to rallyhealth/argo-rollouts that referenced this pull request Oct 31, 2022
* feat: add support for influxdb as a metrics provider (argoproj#1839)

* feat: add InfluxDB metric provider implementation

Signed-off-by: Jayme Bird <[email protected]>

* feat: add influx to metric provider util count, add missing graphite

Signed-off-by: Jayme Bird <[email protected]>

* feat: add protobuf definitions for InfluxdbMetric

Signed-off-by: Jayme Bird <[email protected]>

* feat: add docs for the Influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add tests for influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add go mod replace for version of moq due to security issue

Signed-off-by: Jayme Bird <[email protected]>

* feat: update error message to distinguish failed cases - review feedback

Signed-off-by: Jayme Bird <[email protected]>

* feat: update tests to simplify mocking of QueryTableResult

An upstream change to the influx go client makes it easier to mock
QueryTableResult in tests. This removes a lot of boilerplate duplication
in the tests.

Signed-off-by: Jayme Bird <[email protected]>

* feat: re-run codegen

Signed-off-by: Jayme Bird <[email protected]>

* feat: Adds support for Istio traffic mirroring (argoproj#2074)

* feat: Add support for istio traffic mirroring steps

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

* bump e2e timeout

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

* Remove unintended change

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

* Cleaner events

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

* Add docs for mirror and fix up header routing

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

* small doc changes

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

* Add example

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

* Fix types and change example

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

* Remove unused type

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

* Docs change

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

* Fix PR comments

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

* Check for >=

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

* Remove unused function

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

* codegen

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

* Add better error logging

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

* a few more error msgs

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

* fix comments

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

* typo

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

* fix logic error

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

* redo header logic

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

* cleanup

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

* Fix issue with keeping route weight updated when no routes
are defined in spec.strategy.canary.trafficRouting.istio.virtualService.routes
requiring only a single route

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

* cleanup routes when promiting with last step being a pause

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

* fix bug with promote and last step is a pause

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

* Fix tests

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

* fix typo

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

* chore: improve openapi schema (argoproj#2081)

* feat: include all CRDs to the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat: use kube-openapi naming convention in the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* chore: generate OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat(grafana): Allow selecting datasource for grafana dashboard (argoproj#1988)

Signed-off-by: Jesse Antoszyk <[email protected]>

* feat: support /rollouts/:namespace?q=... and /rollout/:namespace/:name (argoproj#1902)

Signed-off-by: Simon Ninon <[email protected]>

* chore: Add e2e and unit test comment reports (argoproj#2123)

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

* chore: upgrade deps (argoproj#2136)

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

* fixes argoproj#2141 Added list and watch to clusterrole (argoproj#2145)

Signed-off-by: Martin Adler <[email protected]>

* fix: Update ro.Status.ALB when first creating rollout object (argoproj#1986)

* fix: make sure we update rollout.Status.ALB when first create Rollout object

This fixes the case when we first create a rollout the status.ALB field does not
get updated with valid information form the elb.

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

* Refactor check for if we should verify alb.

This creates a new rolloututil function ShouldVerifyWeight that verifies
that we should call aws because the rollout is in the middle of some update.

The reason I feel this should move into the ingress implmentation function VerifyWeight
is becuase in the future other ingresses might also need to verify weights and adding
ingress specific status checks in trafficrouting.go like a leak details where it should be
up to the ingress provider to determin if it should be careful of rate limiting do to say it
being a cloud provider call.

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

* lint

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

* Fix tests

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

* Add new test for ShouldVerifyWeight

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

* Fix logic

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

* Add test for where we do not need to verify weight and its already set

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

* fix up review comments

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

* fix tests

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

* fix bad merge

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

* Fix test

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

* Fix test

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

* Clearer function name

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

* Clean up if logic

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

* fix: remove metrics when objects are removed from cluster to prevent build up (argoproj#2115)

* fix: remove metrics on resource removal

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

* Add test

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

* More tests

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

* back off deps updates

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

* Fix dep change

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

* upgrade prom deps for new features

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

* fix deps

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

* chore: use controler-gen for cluster analysis template scope (argoproj#2148)

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

* fix(analysis): Fix Analysis Terminal Decision For Dry-Run Metrics (argoproj#2131)

Signed-off-by: Rohit Agrawal <[email protected]>

* docs: update release doc with brew formula details (argoproj#2165)

Signed-off-by: Leonardo Luz Almeida <[email protected]>

* fix(docs) Graphite metrics provider linked in docs sidebar. Fixes argoproj#2102. (argoproj#2094)

* Graphite metrics provider linked in docs sidebar

This fixes an issue wherein the Graphite metrics
provider has no sidebar link in the docs hosted
at https://argoproj.github.io/argo-rollouts/.

As a bonus, this also removes various trailing
whitespace from analysis docs.

Signed-off-by: Mike Ball <[email protected]>

* build trigger

Signed-off-by: Mike Ball <[email protected]>

* feat: emit rollout delete event (argoproj#1893)

Signed-off-by: Hui Kang <[email protected]>

Co-authored-by: Hui Kang <[email protected]>

* chore: Upgrade golang (argoproj#2160)

* Upgrade golang

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

* upgrade golang to 1.18 for e2e

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

* Fix deps

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

* Update build action

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

* Upgrade push action

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

* Update docker file

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

* Bump golang lint to match

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

* fix go.mod

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

* fix: Failed to process: Object 'Kind' is missing in Errors with rollouts notification (argoproj#2150)

* fix: update rolloutobject with gvk before writing to rollout informer

Signed-off-by: Ravi Hari <[email protected]>

* fix: controller schema linting

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* fix: rootPath support so that it uses the embedded files system (argoproj#2198)

* fix: rootPath support so that it uses the embeded files system

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

* Catch edge cases and make sure we always server index.html on not found

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

* turn path.Clean into var

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

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

* fix: change completed condition so it only triggers on pod hash changes also adds an event for when it  does changes. (argoproj#2203)

* feat: add healthy event/condition and fix completed event/condition

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

* fix unit tests

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

* rename vars to make more sense and remove healthy event becase it will never be consistent

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

* fix unit tests

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

* possible fix for e2e

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

* fix e2e

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

* unit test for complete function

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

* small cleanup and changes to not check generation

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

* fix unit test and proper behavior

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

* Fix e2e

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

* rename and fix one unit test

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

* fix unit tests

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

* fix unit test

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

* add seperate test for TestRolloutComplete

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

* renames

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

* fix e2e

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

* Set Completed to false

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

* Add event

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

* fix e2e

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

* refactor

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

* Fix all but one unit test

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

* fix last unit test

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

* lint

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

* cleanup

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

* Rename

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

* More renames

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

* small comment change

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

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

* feat: Add support for spec.ingressClassName (argoproj#2178)

This change adds support for `spec.ingressClassName` while still supporting
`kubernetes.io/ingress.class` annotation for backwards compatibility.

Fixes argoproj#1277

Signed-off-by: Siavash Safi <[email protected]>

Signed-off-by: Siavash Safi <[email protected]>

* fix: enable notifications without when condition (argoproj#2231)

* fix: enable notifications without when condition

Signed-off-by: Ravi Hari <[email protected]>

* fix: use trigger action item from the list

Signed-off-by: Ravi Hari <[email protected]>

* fix: add emptycondition logic to make notifications work with/without conditions

Signed-off-by: Ravi Hari <[email protected]>

* fix: linting

Signed-off-by: Ravi Hari <[email protected]>

Signed-off-by: Ravi Hari <[email protected]>

* Use standard cli format for dashboard root path (argoproj#2244)

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

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

* fix: UI not redirecting on / (argoproj#2252)

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

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

* fix: nil pointer while linting with basic canary and ingresses (argoproj#2256)

* fix: nil pointer while linting basic canary with Ingress resources

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

* Add test case

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

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

* fix(controller):  Fix k8s clientset controller metrics. Fixes argoproj#2139 (argoproj#2261)

* Add roundtripper to kubeconfig before creating kubeclient

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

* Check if k8sRequestsCount is nil before attempting increase

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

* Added Flipkart to Users.md

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

* gofmt controller/metrics/client.go

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

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

* fixes(controller): istio dropping fields not defined in type (argoproj#2268)

* fixes argoproj#2266

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

* typo

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

* test after calling set mirror

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

* Keep port on user defined service by adding to internal types

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

* github trigger re-run

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

* Drop port on virtual service to be consistent with added routes

Drop the port on the virtual service with the statment that rollouts only supports
one port services.

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

* cleanup test to just test extra fields and add a port check on destination as well

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

* keep port for both mirroring and header routes

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

* github trigger re-run

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

* github trigger re-run

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

* add function comment

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

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

Signed-off-by: Jayme Bird <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: Mário Bezerra <[email protected]>
Signed-off-by: Jesse Antoszyk <[email protected]>
Signed-off-by: Simon Ninon <[email protected]>
Signed-off-by: Martin Adler <[email protected]>
Signed-off-by: Rohit Agrawal <[email protected]>
Signed-off-by: Leonardo Luz Almeida <[email protected]>
Signed-off-by: Mike Ball <[email protected]>
Signed-off-by: Ravi Hari <[email protected]>
Signed-off-by: Siavash Safi <[email protected]>
Signed-off-by: Nikhil <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: Travis Perdue <[email protected]>
Co-authored-by: jaymebrd <[email protected]>
Co-authored-by: Zach Aller <[email protected]>
Co-authored-by: Mário Bezerra <[email protected]>
Co-authored-by: Jesse Antoszyk <[email protected]>
Co-authored-by: Simon Ninon <[email protected]>
Co-authored-by: Martin Adler <[email protected]>
Co-authored-by: Rohit Agrawal <[email protected]>
Co-authored-by: Leonardo Luz Almeida <[email protected]>
Co-authored-by: Mike Ball <[email protected]>
Co-authored-by: cskh <[email protected]>
Co-authored-by: Hui Kang <[email protected]>
Co-authored-by: RaviHari <[email protected]>
Co-authored-by: Siavash Safi <[email protected]>
Co-authored-by: nikhil1raghav <[email protected]>
tperdue321 added a commit to rallyhealth/argo-rollouts that referenced this pull request Jan 12, 2023
* feat: add support for influxdb as a metrics provider (argoproj#1839)

* feat: add InfluxDB metric provider implementation

Signed-off-by: Jayme Bird <[email protected]>

* feat: add influx to metric provider util count, add missing graphite

Signed-off-by: Jayme Bird <[email protected]>

* feat: add protobuf definitions for InfluxdbMetric

Signed-off-by: Jayme Bird <[email protected]>

* feat: add docs for the Influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add tests for influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add go mod replace for version of moq due to security issue

Signed-off-by: Jayme Bird <[email protected]>

* feat: update error message to distinguish failed cases - review feedback

Signed-off-by: Jayme Bird <[email protected]>

* feat: update tests to simplify mocking of QueryTableResult

An upstream change to the influx go client makes it easier to mock
QueryTableResult in tests. This removes a lot of boilerplate duplication
in the tests.

Signed-off-by: Jayme Bird <[email protected]>

* feat: re-run codegen

Signed-off-by: Jayme Bird <[email protected]>

* feat: Adds support for Istio traffic mirroring (argoproj#2074)

* feat: Add support for istio traffic mirroring steps

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

* bump e2e timeout

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

* Remove unintended change

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

* Cleaner events

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

* Add docs for mirror and fix up header routing

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

* small doc changes

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

* Add example

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

* Fix types and change example

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

* Remove unused type

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

* Docs change

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

* Fix PR comments

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

* Check for >=

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

* Remove unused function

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

* codegen

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

* Add better error logging

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

* a few more error msgs

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

* fix comments

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

* typo

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

* fix logic error

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

* redo header logic

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

* cleanup

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

* Fix issue with keeping route weight updated when no routes
are defined in spec.strategy.canary.trafficRouting.istio.virtualService.routes
requiring only a single route

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

* cleanup routes when promiting with last step being a pause

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

* fix bug with promote and last step is a pause

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

* Fix tests

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

* fix typo

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

* chore: improve openapi schema (argoproj#2081)

* feat: include all CRDs to the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat: use kube-openapi naming convention in the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* chore: generate OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat(grafana): Allow selecting datasource for grafana dashboard (argoproj#1988)

Signed-off-by: Jesse Antoszyk <[email protected]>

* feat: support /rollouts/:namespace?q=... and /rollout/:namespace/:name (argoproj#1902)

Signed-off-by: Simon Ninon <[email protected]>

* chore: Add e2e and unit test comment reports (argoproj#2123)

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

* chore: upgrade deps (argoproj#2136)

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

* fixes argoproj#2141 Added list and watch to clusterrole (argoproj#2145)

Signed-off-by: Martin Adler <[email protected]>

* fix: Update ro.Status.ALB when first creating rollout object (argoproj#1986)

* fix: make sure we update rollout.Status.ALB when first create Rollout object

This fixes the case when we first create a rollout the status.ALB field does not
get updated with valid information form the elb.

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

* Refactor check for if we should verify alb.

This creates a new rolloututil function ShouldVerifyWeight that verifies
that we should call aws because the rollout is in the middle of some update.

The reason I feel this should move into the ingress implmentation function VerifyWeight
is becuase in the future other ingresses might also need to verify weights and adding
ingress specific status checks in trafficrouting.go like a leak details where it should be
up to the ingress provider to determin if it should be careful of rate limiting do to say it
being a cloud provider call.

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

* lint

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

* Fix tests

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

* Add new test for ShouldVerifyWeight

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

* Fix logic

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

* Add test for where we do not need to verify weight and its already set

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

* fix up review comments

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

* fix tests

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

* fix bad merge

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

* Fix test

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

* Fix test

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

* Clearer function name

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

* Clean up if logic

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

* fix: remove metrics when objects are removed from cluster to prevent build up (argoproj#2115)

* fix: remove metrics on resource removal

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

* Add test

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

* More tests

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

* back off deps updates

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

* Fix dep change

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

* upgrade prom deps for new features

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

* fix deps

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

* chore: use controler-gen for cluster analysis template scope (argoproj#2148)

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

* fix(analysis): Fix Analysis Terminal Decision For Dry-Run Metrics (argoproj#2131)

Signed-off-by: Rohit Agrawal <[email protected]>

* docs: update release doc with brew formula details (argoproj#2165)

Signed-off-by: Leonardo Luz Almeida <[email protected]>

* fix(docs) Graphite metrics provider linked in docs sidebar. Fixes argoproj#2102. (argoproj#2094)

* Graphite metrics provider linked in docs sidebar

This fixes an issue wherein the Graphite metrics
provider has no sidebar link in the docs hosted
at https://argoproj.github.io/argo-rollouts/.

As a bonus, this also removes various trailing
whitespace from analysis docs.

Signed-off-by: Mike Ball <[email protected]>

* build trigger

Signed-off-by: Mike Ball <[email protected]>

* feat: emit rollout delete event (argoproj#1893)

Signed-off-by: Hui Kang <[email protected]>

Co-authored-by: Hui Kang <[email protected]>

* chore: Upgrade golang (argoproj#2160)

* Upgrade golang

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

* upgrade golang to 1.18 for e2e

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

* Fix deps

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

* Update build action

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

* Upgrade push action

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

* Update docker file

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

* Bump golang lint to match

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

* fix go.mod

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

* fix: Failed to process: Object 'Kind' is missing in Errors with rollouts notification (argoproj#2150)

* fix: update rolloutobject with gvk before writing to rollout informer

Signed-off-by: Ravi Hari <[email protected]>

* fix: controller schema linting

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* fix: rootPath support so that it uses the embedded files system (argoproj#2198)

* fix: rootPath support so that it uses the embeded files system

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

* Catch edge cases and make sure we always server index.html on not found

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

* turn path.Clean into var

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

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

* fix: change completed condition so it only triggers on pod hash changes also adds an event for when it  does changes. (argoproj#2203)

* feat: add healthy event/condition and fix completed event/condition

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

* fix unit tests

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

* rename vars to make more sense and remove healthy event becase it will never be consistent

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

* fix unit tests

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

* possible fix for e2e

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

* fix e2e

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

* unit test for complete function

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

* small cleanup and changes to not check generation

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

* fix unit test and proper behavior

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

* Fix e2e

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

* rename and fix one unit test

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

* fix unit tests

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

* fix unit test

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

* add seperate test for TestRolloutComplete

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

* renames

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

* fix e2e

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

* Set Completed to false

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

* Add event

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

* fix e2e

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

* refactor

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

* Fix all but one unit test

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

* fix last unit test

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

* lint

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

* cleanup

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

* Rename

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

* More renames

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

* small comment change

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

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

* feat: Add support for spec.ingressClassName (argoproj#2178)

This change adds support for `spec.ingressClassName` while still supporting
`kubernetes.io/ingress.class` annotation for backwards compatibility.

Fixes argoproj#1277

Signed-off-by: Siavash Safi <[email protected]>

Signed-off-by: Siavash Safi <[email protected]>

* fix: enable notifications without when condition (argoproj#2231)

* fix: enable notifications without when condition

Signed-off-by: Ravi Hari <[email protected]>

* fix: use trigger action item from the list

Signed-off-by: Ravi Hari <[email protected]>

* fix: add emptycondition logic to make notifications work with/without conditions

Signed-off-by: Ravi Hari <[email protected]>

* fix: linting

Signed-off-by: Ravi Hari <[email protected]>

Signed-off-by: Ravi Hari <[email protected]>

* Use standard cli format for dashboard root path (argoproj#2244)

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

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

* merge conflict broke tests

Signed-off-by: Travis Perdue <[email protected]>

Signed-off-by: Jayme Bird <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: Mário Bezerra <[email protected]>
Signed-off-by: Jesse Antoszyk <[email protected]>
Signed-off-by: Simon Ninon <[email protected]>
Signed-off-by: Martin Adler <[email protected]>
Signed-off-by: Rohit Agrawal <[email protected]>
Signed-off-by: Leonardo Luz Almeida <[email protected]>
Signed-off-by: Mike Ball <[email protected]>
Signed-off-by: Ravi Hari <[email protected]>
Signed-off-by: Siavash Safi <[email protected]>
Signed-off-by: Travis Perdue <[email protected]>
Co-authored-by: jaymebrd <[email protected]>
Co-authored-by: Zach Aller <[email protected]>
Co-authored-by: Mário Bezerra <[email protected]>
Co-authored-by: Jesse Antoszyk <[email protected]>
Co-authored-by: Simon Ninon <[email protected]>
Co-authored-by: Martin Adler <[email protected]>
Co-authored-by: Rohit Agrawal <[email protected]>
Co-authored-by: Leonardo Luz Almeida <[email protected]>
Co-authored-by: Mike Ball <[email protected]>
Co-authored-by: cskh <[email protected]>
Co-authored-by: Hui Kang <[email protected]>
Co-authored-by: RaviHari <[email protected]>
Co-authored-by: Siavash Safi <[email protected]>
tperdue321 added a commit to rallyhealth/argo-rollouts that referenced this pull request Jan 12, 2023
* feat: add support for influxdb as a metrics provider (argoproj#1839)

* feat: add InfluxDB metric provider implementation

Signed-off-by: Jayme Bird <[email protected]>

* feat: add influx to metric provider util count, add missing graphite

Signed-off-by: Jayme Bird <[email protected]>

* feat: add protobuf definitions for InfluxdbMetric

Signed-off-by: Jayme Bird <[email protected]>

* feat: add docs for the Influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add tests for influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add go mod replace for version of moq due to security issue

Signed-off-by: Jayme Bird <[email protected]>

* feat: update error message to distinguish failed cases - review feedback

Signed-off-by: Jayme Bird <[email protected]>

* feat: update tests to simplify mocking of QueryTableResult

An upstream change to the influx go client makes it easier to mock
QueryTableResult in tests. This removes a lot of boilerplate duplication
in the tests.

Signed-off-by: Jayme Bird <[email protected]>

* feat: re-run codegen

Signed-off-by: Jayme Bird <[email protected]>

* feat: Adds support for Istio traffic mirroring (argoproj#2074)

* feat: Add support for istio traffic mirroring steps

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

* bump e2e timeout

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

* Remove unintended change

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

* Cleaner events

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

* Add docs for mirror and fix up header routing

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

* small doc changes

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

* Add example

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

* Fix types and change example

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

* Remove unused type

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

* Docs change

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

* Fix PR comments

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

* Check for >=

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

* Remove unused function

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

* codegen

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

* Add better error logging

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

* a few more error msgs

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

* fix comments

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

* typo

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

* fix logic error

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

* redo header logic

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

* cleanup

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

* Fix issue with keeping route weight updated when no routes
are defined in spec.strategy.canary.trafficRouting.istio.virtualService.routes
requiring only a single route

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

* cleanup routes when promiting with last step being a pause

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

* fix bug with promote and last step is a pause

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

* Fix tests

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

* fix typo

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

* chore: improve openapi schema (argoproj#2081)

* feat: include all CRDs to the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat: use kube-openapi naming convention in the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* chore: generate OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat(grafana): Allow selecting datasource for grafana dashboard (argoproj#1988)

Signed-off-by: Jesse Antoszyk <[email protected]>

* feat: support /rollouts/:namespace?q=... and /rollout/:namespace/:name (argoproj#1902)

Signed-off-by: Simon Ninon <[email protected]>

* chore: Add e2e and unit test comment reports (argoproj#2123)

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

* chore: upgrade deps (argoproj#2136)

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

* fixes argoproj#2141 Added list and watch to clusterrole (argoproj#2145)

Signed-off-by: Martin Adler <[email protected]>

* fix: Update ro.Status.ALB when first creating rollout object (argoproj#1986)

* fix: make sure we update rollout.Status.ALB when first create Rollout object

This fixes the case when we first create a rollout the status.ALB field does not
get updated with valid information form the elb.

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

* Refactor check for if we should verify alb.

This creates a new rolloututil function ShouldVerifyWeight that verifies
that we should call aws because the rollout is in the middle of some update.

The reason I feel this should move into the ingress implmentation function VerifyWeight
is becuase in the future other ingresses might also need to verify weights and adding
ingress specific status checks in trafficrouting.go like a leak details where it should be
up to the ingress provider to determin if it should be careful of rate limiting do to say it
being a cloud provider call.

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

* lint

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

* Fix tests

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

* Add new test for ShouldVerifyWeight

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

* Fix logic

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

* Add test for where we do not need to verify weight and its already set

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

* fix up review comments

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

* fix tests

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

* fix bad merge

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

* Fix test

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

* Fix test

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

* Clearer function name

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

* Clean up if logic

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

* fix: remove metrics when objects are removed from cluster to prevent build up (argoproj#2115)

* fix: remove metrics on resource removal

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

* Add test

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

* More tests

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

* back off deps updates

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

* Fix dep change

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

* upgrade prom deps for new features

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

* fix deps

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

* chore: use controler-gen for cluster analysis template scope (argoproj#2148)

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

* fix(analysis): Fix Analysis Terminal Decision For Dry-Run Metrics (argoproj#2131)

Signed-off-by: Rohit Agrawal <[email protected]>

* docs: update release doc with brew formula details (argoproj#2165)

Signed-off-by: Leonardo Luz Almeida <[email protected]>

* fix(docs) Graphite metrics provider linked in docs sidebar. Fixes argoproj#2102. (argoproj#2094)

* Graphite metrics provider linked in docs sidebar

This fixes an issue wherein the Graphite metrics
provider has no sidebar link in the docs hosted
at https://argoproj.github.io/argo-rollouts/.

As a bonus, this also removes various trailing
whitespace from analysis docs.

Signed-off-by: Mike Ball <[email protected]>

* build trigger

Signed-off-by: Mike Ball <[email protected]>

* feat: emit rollout delete event (argoproj#1893)

Signed-off-by: Hui Kang <[email protected]>

Co-authored-by: Hui Kang <[email protected]>

* chore: Upgrade golang (argoproj#2160)

* Upgrade golang

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

* upgrade golang to 1.18 for e2e

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

* Fix deps

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

* Update build action

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

* Upgrade push action

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

* Update docker file

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

* Bump golang lint to match

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

* fix go.mod

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

* fix: Failed to process: Object 'Kind' is missing in Errors with rollouts notification (argoproj#2150)

* fix: update rolloutobject with gvk before writing to rollout informer

Signed-off-by: Ravi Hari <[email protected]>

* fix: controller schema linting

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* fix: rootPath support so that it uses the embedded files system (argoproj#2198)

* fix: rootPath support so that it uses the embeded files system

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

* Catch edge cases and make sure we always server index.html on not found

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

* turn path.Clean into var

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

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

* fix: change completed condition so it only triggers on pod hash changes also adds an event for when it  does changes. (argoproj#2203)

* feat: add healthy event/condition and fix completed event/condition

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

* fix unit tests

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

* rename vars to make more sense and remove healthy event becase it will never be consistent

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

* fix unit tests

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

* possible fix for e2e

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

* fix e2e

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

* unit test for complete function

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

* small cleanup and changes to not check generation

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

* fix unit test and proper behavior

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

* Fix e2e

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

* rename and fix one unit test

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

* fix unit tests

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

* fix unit test

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

* add seperate test for TestRolloutComplete

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

* renames

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

* fix e2e

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

* Set Completed to false

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

* Add event

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

* fix e2e

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

* refactor

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

* Fix all but one unit test

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

* fix last unit test

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

* lint

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

* cleanup

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

* Rename

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

* More renames

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

* small comment change

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

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

* feat: Add support for spec.ingressClassName (argoproj#2178)

This change adds support for `spec.ingressClassName` while still supporting
`kubernetes.io/ingress.class` annotation for backwards compatibility.

Fixes argoproj#1277

Signed-off-by: Siavash Safi <[email protected]>

Signed-off-by: Siavash Safi <[email protected]>

* fix: enable notifications without when condition (argoproj#2231)

* fix: enable notifications without when condition

Signed-off-by: Ravi Hari <[email protected]>

* fix: use trigger action item from the list

Signed-off-by: Ravi Hari <[email protected]>

* fix: add emptycondition logic to make notifications work with/without conditions

Signed-off-by: Ravi Hari <[email protected]>

* fix: linting

Signed-off-by: Ravi Hari <[email protected]>

Signed-off-by: Ravi Hari <[email protected]>

* Use standard cli format for dashboard root path (argoproj#2244)

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

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

* fix: UI not redirecting on / (argoproj#2252)

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

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

* fix: nil pointer while linting with basic canary and ingresses (argoproj#2256)

* fix: nil pointer while linting basic canary with Ingress resources

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

* Add test case

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

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

* fix(controller):  Fix k8s clientset controller metrics. Fixes argoproj#2139 (argoproj#2261)

* Add roundtripper to kubeconfig before creating kubeclient

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

* Check if k8sRequestsCount is nil before attempting increase

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

* Added Flipkart to Users.md

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

* gofmt controller/metrics/client.go

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

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

* fixes(controller): istio dropping fields not defined in type (argoproj#2268)

* fixes argoproj#2266

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

* typo

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

* test after calling set mirror

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

* Keep port on user defined service by adding to internal types

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

* github trigger re-run

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

* Drop port on virtual service to be consistent with added routes

Drop the port on the virtual service with the statment that rollouts only supports
one port services.

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

* cleanup test to just test extra fields and add a port check on destination as well

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

* keep port for both mirroring and header routes

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

* github trigger re-run

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

* github trigger re-run

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

* add function comment

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

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

Signed-off-by: Jayme Bird <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: Mário Bezerra <[email protected]>
Signed-off-by: Jesse Antoszyk <[email protected]>
Signed-off-by: Simon Ninon <[email protected]>
Signed-off-by: Martin Adler <[email protected]>
Signed-off-by: Rohit Agrawal <[email protected]>
Signed-off-by: Leonardo Luz Almeida <[email protected]>
Signed-off-by: Mike Ball <[email protected]>
Signed-off-by: Ravi Hari <[email protected]>
Signed-off-by: Siavash Safi <[email protected]>
Signed-off-by: Nikhil <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: Travis Perdue <[email protected]>
Co-authored-by: jaymebrd <[email protected]>
Co-authored-by: Zach Aller <[email protected]>
Co-authored-by: Mário Bezerra <[email protected]>
Co-authored-by: Jesse Antoszyk <[email protected]>
Co-authored-by: Simon Ninon <[email protected]>
Co-authored-by: Martin Adler <[email protected]>
Co-authored-by: Rohit Agrawal <[email protected]>
Co-authored-by: Leonardo Luz Almeida <[email protected]>
Co-authored-by: Mike Ball <[email protected]>
Co-authored-by: cskh <[email protected]>
Co-authored-by: Hui Kang <[email protected]>
Co-authored-by: RaviHari <[email protected]>
Co-authored-by: Siavash Safi <[email protected]>
Co-authored-by: nikhil1raghav <[email protected]>
tperdue321 added a commit to rallyhealth/argo-rollouts that referenced this pull request Jan 12, 2023
* feat: add support for influxdb as a metrics provider (argoproj#1839)

* feat: add InfluxDB metric provider implementation

Signed-off-by: Jayme Bird <[email protected]>

* feat: add influx to metric provider util count, add missing graphite

Signed-off-by: Jayme Bird <[email protected]>

* feat: add protobuf definitions for InfluxdbMetric

Signed-off-by: Jayme Bird <[email protected]>

* feat: add docs for the Influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add tests for influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add go mod replace for version of moq due to security issue

Signed-off-by: Jayme Bird <[email protected]>

* feat: update error message to distinguish failed cases - review feedback

Signed-off-by: Jayme Bird <[email protected]>

* feat: update tests to simplify mocking of QueryTableResult

An upstream change to the influx go client makes it easier to mock
QueryTableResult in tests. This removes a lot of boilerplate duplication
in the tests.

Signed-off-by: Jayme Bird <[email protected]>

* feat: re-run codegen

Signed-off-by: Jayme Bird <[email protected]>

* feat: Adds support for Istio traffic mirroring (argoproj#2074)

* feat: Add support for istio traffic mirroring steps

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

* bump e2e timeout

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

* Remove unintended change

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

* Cleaner events

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

* Add docs for mirror and fix up header routing

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

* small doc changes

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

* Add example

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

* Fix types and change example

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

* Remove unused type

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

* Docs change

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

* Fix PR comments

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

* Check for >=

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

* Remove unused function

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

* codegen

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

* Add better error logging

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

* a few more error msgs

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

* fix comments

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

* typo

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

* fix logic error

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

* redo header logic

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

* cleanup

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

* Fix issue with keeping route weight updated when no routes
are defined in spec.strategy.canary.trafficRouting.istio.virtualService.routes
requiring only a single route

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

* cleanup routes when promiting with last step being a pause

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

* fix bug with promote and last step is a pause

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

* Fix tests

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

* fix typo

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

* chore: improve openapi schema (argoproj#2081)

* feat: include all CRDs to the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat: use kube-openapi naming convention in the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* chore: generate OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat(grafana): Allow selecting datasource for grafana dashboard (argoproj#1988)

Signed-off-by: Jesse Antoszyk <[email protected]>

* feat: support /rollouts/:namespace?q=... and /rollout/:namespace/:name (argoproj#1902)

Signed-off-by: Simon Ninon <[email protected]>

* chore: Add e2e and unit test comment reports (argoproj#2123)

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

* chore: upgrade deps (argoproj#2136)

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

* fixes argoproj#2141 Added list and watch to clusterrole (argoproj#2145)

Signed-off-by: Martin Adler <[email protected]>

* fix: Update ro.Status.ALB when first creating rollout object (argoproj#1986)

* fix: make sure we update rollout.Status.ALB when first create Rollout object

This fixes the case when we first create a rollout the status.ALB field does not
get updated with valid information form the elb.

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

* Refactor check for if we should verify alb.

This creates a new rolloututil function ShouldVerifyWeight that verifies
that we should call aws because the rollout is in the middle of some update.

The reason I feel this should move into the ingress implmentation function VerifyWeight
is becuase in the future other ingresses might also need to verify weights and adding
ingress specific status checks in trafficrouting.go like a leak details where it should be
up to the ingress provider to determin if it should be careful of rate limiting do to say it
being a cloud provider call.

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

* lint

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

* Fix tests

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

* Add new test for ShouldVerifyWeight

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

* Fix logic

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

* Add test for where we do not need to verify weight and its already set

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

* fix up review comments

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

* fix tests

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

* fix bad merge

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

* Fix test

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

* Fix test

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

* Clearer function name

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

* Clean up if logic

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

* fix: remove metrics when objects are removed from cluster to prevent build up (argoproj#2115)

* fix: remove metrics on resource removal

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

* Add test

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

* More tests

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

* back off deps updates

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

* Fix dep change

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

* upgrade prom deps for new features

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

* fix deps

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

* chore: use controler-gen for cluster analysis template scope (argoproj#2148)

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

* fix(analysis): Fix Analysis Terminal Decision For Dry-Run Metrics (argoproj#2131)

Signed-off-by: Rohit Agrawal <[email protected]>

* docs: update release doc with brew formula details (argoproj#2165)

Signed-off-by: Leonardo Luz Almeida <[email protected]>

* fix(docs) Graphite metrics provider linked in docs sidebar. Fixes argoproj#2102. (argoproj#2094)

* Graphite metrics provider linked in docs sidebar

This fixes an issue wherein the Graphite metrics
provider has no sidebar link in the docs hosted
at https://argoproj.github.io/argo-rollouts/.

As a bonus, this also removes various trailing
whitespace from analysis docs.

Signed-off-by: Mike Ball <[email protected]>

* build trigger

Signed-off-by: Mike Ball <[email protected]>

* feat: emit rollout delete event (argoproj#1893)

Signed-off-by: Hui Kang <[email protected]>

Co-authored-by: Hui Kang <[email protected]>

* chore: Upgrade golang (argoproj#2160)

* Upgrade golang

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

* upgrade golang to 1.18 for e2e

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

* Fix deps

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

* Update build action

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

* Upgrade push action

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

* Update docker file

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

* Bump golang lint to match

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

* fix go.mod

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

* fix: Failed to process: Object 'Kind' is missing in Errors with rollouts notification (argoproj#2150)

* fix: update rolloutobject with gvk before writing to rollout informer

Signed-off-by: Ravi Hari <[email protected]>

* fix: controller schema linting

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* fix: rootPath support so that it uses the embedded files system (argoproj#2198)

* fix: rootPath support so that it uses the embeded files system

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

* Catch edge cases and make sure we always server index.html on not found

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

* turn path.Clean into var

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

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

* fix: change completed condition so it only triggers on pod hash changes also adds an event for when it  does changes. (argoproj#2203)

* feat: add healthy event/condition and fix completed event/condition

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

* fix unit tests

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

* rename vars to make more sense and remove healthy event becase it will never be consistent

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

* fix unit tests

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

* possible fix for e2e

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

* fix e2e

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

* unit test for complete function

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

* small cleanup and changes to not check generation

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

* fix unit test and proper behavior

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

* Fix e2e

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

* rename and fix one unit test

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

* fix unit tests

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

* fix unit test

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

* add seperate test for TestRolloutComplete

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

* renames

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

* fix e2e

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

* Set Completed to false

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

* Add event

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

* fix e2e

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

* refactor

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

* Fix all but one unit test

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

* fix last unit test

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

* lint

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

* cleanup

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

* Rename

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

* More renames

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

* small comment change

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

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

* feat: Add support for spec.ingressClassName (argoproj#2178)

This change adds support for `spec.ingressClassName` while still supporting
`kubernetes.io/ingress.class` annotation for backwards compatibility.

Fixes argoproj#1277

Signed-off-by: Siavash Safi <[email protected]>

Signed-off-by: Siavash Safi <[email protected]>

* fix: enable notifications without when condition (argoproj#2231)

* fix: enable notifications without when condition

Signed-off-by: Ravi Hari <[email protected]>

* fix: use trigger action item from the list

Signed-off-by: Ravi Hari <[email protected]>

* fix: add emptycondition logic to make notifications work with/without conditions

Signed-off-by: Ravi Hari <[email protected]>

* fix: linting

Signed-off-by: Ravi Hari <[email protected]>

Signed-off-by: Ravi Hari <[email protected]>

* Use standard cli format for dashboard root path (argoproj#2244)

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

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

* merge conflict broke tests

Signed-off-by: Travis Perdue <[email protected]>

Signed-off-by: Jayme Bird <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: Mário Bezerra <[email protected]>
Signed-off-by: Jesse Antoszyk <[email protected]>
Signed-off-by: Simon Ninon <[email protected]>
Signed-off-by: Martin Adler <[email protected]>
Signed-off-by: Rohit Agrawal <[email protected]>
Signed-off-by: Leonardo Luz Almeida <[email protected]>
Signed-off-by: Mike Ball <[email protected]>
Signed-off-by: Ravi Hari <[email protected]>
Signed-off-by: Siavash Safi <[email protected]>
Signed-off-by: Travis Perdue <[email protected]>
Co-authored-by: jaymebrd <[email protected]>
Co-authored-by: Zach Aller <[email protected]>
Co-authored-by: Mário Bezerra <[email protected]>
Co-authored-by: Jesse Antoszyk <[email protected]>
Co-authored-by: Simon Ninon <[email protected]>
Co-authored-by: Martin Adler <[email protected]>
Co-authored-by: Rohit Agrawal <[email protected]>
Co-authored-by: Leonardo Luz Almeida <[email protected]>
Co-authored-by: Mike Ball <[email protected]>
Co-authored-by: cskh <[email protected]>
Co-authored-by: Hui Kang <[email protected]>
Co-authored-by: RaviHari <[email protected]>
Co-authored-by: Siavash Safi <[email protected]>
Signed-off-by: Travis Perdue <[email protected]>
tperdue321 added a commit to rallyhealth/argo-rollouts that referenced this pull request Jan 12, 2023
* feat: add support for influxdb as a metrics provider (argoproj#1839)

* feat: add InfluxDB metric provider implementation

Signed-off-by: Jayme Bird <[email protected]>

* feat: add influx to metric provider util count, add missing graphite

Signed-off-by: Jayme Bird <[email protected]>

* feat: add protobuf definitions for InfluxdbMetric

Signed-off-by: Jayme Bird <[email protected]>

* feat: add docs for the Influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add tests for influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add go mod replace for version of moq due to security issue

Signed-off-by: Jayme Bird <[email protected]>

* feat: update error message to distinguish failed cases - review feedback

Signed-off-by: Jayme Bird <[email protected]>

* feat: update tests to simplify mocking of QueryTableResult

An upstream change to the influx go client makes it easier to mock
QueryTableResult in tests. This removes a lot of boilerplate duplication
in the tests.

Signed-off-by: Jayme Bird <[email protected]>

* feat: re-run codegen

Signed-off-by: Jayme Bird <[email protected]>

* feat: Adds support for Istio traffic mirroring (argoproj#2074)

* feat: Add support for istio traffic mirroring steps

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

* bump e2e timeout

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

* Remove unintended change

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

* Cleaner events

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

* Add docs for mirror and fix up header routing

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

* small doc changes

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

* Add example

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

* Fix types and change example

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

* Remove unused type

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

* Docs change

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

* Fix PR comments

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

* Check for >=

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

* Remove unused function

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

* codegen

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

* Add better error logging

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

* a few more error msgs

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

* fix comments

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

* typo

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

* fix logic error

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

* redo header logic

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

* cleanup

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

* Fix issue with keeping route weight updated when no routes
are defined in spec.strategy.canary.trafficRouting.istio.virtualService.routes
requiring only a single route

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

* cleanup routes when promiting with last step being a pause

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

* fix bug with promote and last step is a pause

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

* Fix tests

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

* fix typo

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

* chore: improve openapi schema (argoproj#2081)

* feat: include all CRDs to the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat: use kube-openapi naming convention in the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* chore: generate OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat(grafana): Allow selecting datasource for grafana dashboard (argoproj#1988)

Signed-off-by: Jesse Antoszyk <[email protected]>

* feat: support /rollouts/:namespace?q=... and /rollout/:namespace/:name (argoproj#1902)

Signed-off-by: Simon Ninon <[email protected]>

* chore: Add e2e and unit test comment reports (argoproj#2123)

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

* chore: upgrade deps (argoproj#2136)

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

* fixes argoproj#2141 Added list and watch to clusterrole (argoproj#2145)

Signed-off-by: Martin Adler <[email protected]>

* fix: Update ro.Status.ALB when first creating rollout object (argoproj#1986)

* fix: make sure we update rollout.Status.ALB when first create Rollout object

This fixes the case when we first create a rollout the status.ALB field does not
get updated with valid information form the elb.

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

* Refactor check for if we should verify alb.

This creates a new rolloututil function ShouldVerifyWeight that verifies
that we should call aws because the rollout is in the middle of some update.

The reason I feel this should move into the ingress implmentation function VerifyWeight
is becuase in the future other ingresses might also need to verify weights and adding
ingress specific status checks in trafficrouting.go like a leak details where it should be
up to the ingress provider to determin if it should be careful of rate limiting do to say it
being a cloud provider call.

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

* lint

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

* Fix tests

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

* Add new test for ShouldVerifyWeight

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

* Fix logic

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

* Add test for where we do not need to verify weight and its already set

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

* fix up review comments

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

* fix tests

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

* fix bad merge

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

* Fix test

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

* Fix test

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

* Clearer function name

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

* Clean up if logic

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

* fix: remove metrics when objects are removed from cluster to prevent build up (argoproj#2115)

* fix: remove metrics on resource removal

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

* Add test

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

* More tests

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

* back off deps updates

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

* Fix dep change

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

* upgrade prom deps for new features

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

* fix deps

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

* chore: use controler-gen for cluster analysis template scope (argoproj#2148)

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

* fix(analysis): Fix Analysis Terminal Decision For Dry-Run Metrics (argoproj#2131)

Signed-off-by: Rohit Agrawal <[email protected]>

* docs: update release doc with brew formula details (argoproj#2165)

Signed-off-by: Leonardo Luz Almeida <[email protected]>

* fix(docs) Graphite metrics provider linked in docs sidebar. Fixes argoproj#2102. (argoproj#2094)

* Graphite metrics provider linked in docs sidebar

This fixes an issue wherein the Graphite metrics
provider has no sidebar link in the docs hosted
at https://argoproj.github.io/argo-rollouts/.

As a bonus, this also removes various trailing
whitespace from analysis docs.

Signed-off-by: Mike Ball <[email protected]>

* build trigger

Signed-off-by: Mike Ball <[email protected]>

* feat: emit rollout delete event (argoproj#1893)

Signed-off-by: Hui Kang <[email protected]>

Co-authored-by: Hui Kang <[email protected]>

* chore: Upgrade golang (argoproj#2160)

* Upgrade golang

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

* upgrade golang to 1.18 for e2e

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

* Fix deps

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

* Update build action

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

* Upgrade push action

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

* Update docker file

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

* Bump golang lint to match

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

* fix go.mod

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

* fix: Failed to process: Object 'Kind' is missing in Errors with rollouts notification (argoproj#2150)

* fix: update rolloutobject with gvk before writing to rollout informer

Signed-off-by: Ravi Hari <[email protected]>

* fix: controller schema linting

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* fix: rootPath support so that it uses the embedded files system (argoproj#2198)

* fix: rootPath support so that it uses the embeded files system

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

* Catch edge cases and make sure we always server index.html on not found

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

* turn path.Clean into var

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

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

* fix: change completed condition so it only triggers on pod hash changes also adds an event for when it  does changes. (argoproj#2203)

* feat: add healthy event/condition and fix completed event/condition

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

* fix unit tests

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

* rename vars to make more sense and remove healthy event becase it will never be consistent

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

* fix unit tests

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

* possible fix for e2e

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

* fix e2e

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

* unit test for complete function

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

* small cleanup and changes to not check generation

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

* fix unit test and proper behavior

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

* Fix e2e

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

* rename and fix one unit test

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

* fix unit tests

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

* fix unit test

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

* add seperate test for TestRolloutComplete

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

* renames

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

* fix e2e

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

* Set Completed to false

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

* Add event

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

* fix e2e

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

* refactor

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

* Fix all but one unit test

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

* fix last unit test

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

* lint

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

* cleanup

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

* Rename

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

* More renames

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

* small comment change

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

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

* feat: Add support for spec.ingressClassName (argoproj#2178)

This change adds support for `spec.ingressClassName` while still supporting
`kubernetes.io/ingress.class` annotation for backwards compatibility.

Fixes argoproj#1277

Signed-off-by: Siavash Safi <[email protected]>

Signed-off-by: Siavash Safi <[email protected]>

* fix: enable notifications without when condition (argoproj#2231)

* fix: enable notifications without when condition

Signed-off-by: Ravi Hari <[email protected]>

* fix: use trigger action item from the list

Signed-off-by: Ravi Hari <[email protected]>

* fix: add emptycondition logic to make notifications work with/without conditions

Signed-off-by: Ravi Hari <[email protected]>

* fix: linting

Signed-off-by: Ravi Hari <[email protected]>

Signed-off-by: Ravi Hari <[email protected]>

* Use standard cli format for dashboard root path (argoproj#2244)

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

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

* fix: UI not redirecting on / (argoproj#2252)

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

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

* fix: nil pointer while linting with basic canary and ingresses (argoproj#2256)

* fix: nil pointer while linting basic canary with Ingress resources

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

* Add test case

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

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

* fix(controller):  Fix k8s clientset controller metrics. Fixes argoproj#2139 (argoproj#2261)

* Add roundtripper to kubeconfig before creating kubeclient

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

* Check if k8sRequestsCount is nil before attempting increase

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

* Added Flipkart to Users.md

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

* gofmt controller/metrics/client.go

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

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

* fixes(controller): istio dropping fields not defined in type (argoproj#2268)

* fixes argoproj#2266

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

* typo

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

* test after calling set mirror

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

* Keep port on user defined service by adding to internal types

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

* github trigger re-run

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

* Drop port on virtual service to be consistent with added routes

Drop the port on the virtual service with the statment that rollouts only supports
one port services.

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

* cleanup test to just test extra fields and add a port check on destination as well

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

* keep port for both mirroring and header routes

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

* github trigger re-run

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

* github trigger re-run

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

* add function comment

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

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

Signed-off-by: Jayme Bird <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: Mário Bezerra <[email protected]>
Signed-off-by: Jesse Antoszyk <[email protected]>
Signed-off-by: Simon Ninon <[email protected]>
Signed-off-by: Martin Adler <[email protected]>
Signed-off-by: Rohit Agrawal <[email protected]>
Signed-off-by: Leonardo Luz Almeida <[email protected]>
Signed-off-by: Mike Ball <[email protected]>
Signed-off-by: Ravi Hari <[email protected]>
Signed-off-by: Siavash Safi <[email protected]>
Signed-off-by: Nikhil <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: Travis Perdue <[email protected]>
Co-authored-by: jaymebrd <[email protected]>
Co-authored-by: Zach Aller <[email protected]>
Co-authored-by: Mário Bezerra <[email protected]>
Co-authored-by: Jesse Antoszyk <[email protected]>
Co-authored-by: Simon Ninon <[email protected]>
Co-authored-by: Martin Adler <[email protected]>
Co-authored-by: Rohit Agrawal <[email protected]>
Co-authored-by: Leonardo Luz Almeida <[email protected]>
Co-authored-by: Mike Ball <[email protected]>
Co-authored-by: cskh <[email protected]>
Co-authored-by: Hui Kang <[email protected]>
Co-authored-by: RaviHari <[email protected]>
Co-authored-by: Siavash Safi <[email protected]>
Co-authored-by: nikhil1raghav <[email protected]>
Signed-off-by: Travis Perdue <[email protected]>
tperdue321 added a commit to rallyhealth/argo-rollouts that referenced this pull request Jan 12, 2023
* feat: add support for influxdb as a metrics provider (argoproj#1839)

* feat: add InfluxDB metric provider implementation

Signed-off-by: Jayme Bird <[email protected]>

* feat: add influx to metric provider util count, add missing graphite

Signed-off-by: Jayme Bird <[email protected]>

* feat: add protobuf definitions for InfluxdbMetric

Signed-off-by: Jayme Bird <[email protected]>

* feat: add docs for the Influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add tests for influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add go mod replace for version of moq due to security issue

Signed-off-by: Jayme Bird <[email protected]>

* feat: update error message to distinguish failed cases - review feedback

Signed-off-by: Jayme Bird <[email protected]>

* feat: update tests to simplify mocking of QueryTableResult

An upstream change to the influx go client makes it easier to mock
QueryTableResult in tests. This removes a lot of boilerplate duplication
in the tests.

Signed-off-by: Jayme Bird <[email protected]>

* feat: re-run codegen

Signed-off-by: Jayme Bird <[email protected]>

* feat: Adds support for Istio traffic mirroring (argoproj#2074)

* feat: Add support for istio traffic mirroring steps

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

* bump e2e timeout

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

* Remove unintended change

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

* Cleaner events

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

* Add docs for mirror and fix up header routing

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

* small doc changes

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

* Add example

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

* Fix types and change example

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

* Remove unused type

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

* Docs change

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

* Fix PR comments

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

* Check for >=

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

* Remove unused function

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

* codegen

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

* Add better error logging

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

* a few more error msgs

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

* fix comments

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

* typo

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

* fix logic error

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

* redo header logic

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

* cleanup

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

* Fix issue with keeping route weight updated when no routes
are defined in spec.strategy.canary.trafficRouting.istio.virtualService.routes
requiring only a single route

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

* cleanup routes when promiting with last step being a pause

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

* fix bug with promote and last step is a pause

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

* Fix tests

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

* fix typo

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

* chore: improve openapi schema (argoproj#2081)

* feat: include all CRDs to the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat: use kube-openapi naming convention in the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* chore: generate OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat(grafana): Allow selecting datasource for grafana dashboard (argoproj#1988)

Signed-off-by: Jesse Antoszyk <[email protected]>

* feat: support /rollouts/:namespace?q=... and /rollout/:namespace/:name (argoproj#1902)

Signed-off-by: Simon Ninon <[email protected]>

* chore: Add e2e and unit test comment reports (argoproj#2123)

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

* chore: upgrade deps (argoproj#2136)

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

* fixes argoproj#2141 Added list and watch to clusterrole (argoproj#2145)

Signed-off-by: Martin Adler <[email protected]>

* fix: Update ro.Status.ALB when first creating rollout object (argoproj#1986)

* fix: make sure we update rollout.Status.ALB when first create Rollout object

This fixes the case when we first create a rollout the status.ALB field does not
get updated with valid information form the elb.

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

* Refactor check for if we should verify alb.

This creates a new rolloututil function ShouldVerifyWeight that verifies
that we should call aws because the rollout is in the middle of some update.

The reason I feel this should move into the ingress implmentation function VerifyWeight
is becuase in the future other ingresses might also need to verify weights and adding
ingress specific status checks in trafficrouting.go like a leak details where it should be
up to the ingress provider to determin if it should be careful of rate limiting do to say it
being a cloud provider call.

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

* lint

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

* Fix tests

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

* Add new test for ShouldVerifyWeight

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

* Fix logic

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

* Add test for where we do not need to verify weight and its already set

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

* fix up review comments

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

* fix tests

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

* fix bad merge

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

* Fix test

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

* Fix test

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

* Clearer function name

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

* Clean up if logic

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

* fix: remove metrics when objects are removed from cluster to prevent build up (argoproj#2115)

* fix: remove metrics on resource removal

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

* Add test

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

* More tests

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

* back off deps updates

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

* Fix dep change

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

* upgrade prom deps for new features

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

* fix deps

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

* chore: use controler-gen for cluster analysis template scope (argoproj#2148)

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

* fix(analysis): Fix Analysis Terminal Decision For Dry-Run Metrics (argoproj#2131)

Signed-off-by: Rohit Agrawal <[email protected]>

* docs: update release doc with brew formula details (argoproj#2165)

Signed-off-by: Leonardo Luz Almeida <[email protected]>

* fix(docs) Graphite metrics provider linked in docs sidebar. Fixes argoproj#2102. (argoproj#2094)

* Graphite metrics provider linked in docs sidebar

This fixes an issue wherein the Graphite metrics
provider has no sidebar link in the docs hosted
at https://argoproj.github.io/argo-rollouts/.

As a bonus, this also removes various trailing
whitespace from analysis docs.

Signed-off-by: Mike Ball <[email protected]>

* build trigger

Signed-off-by: Mike Ball <[email protected]>

* feat: emit rollout delete event (argoproj#1893)

Signed-off-by: Hui Kang <[email protected]>

Co-authored-by: Hui Kang <[email protected]>

* chore: Upgrade golang (argoproj#2160)

* Upgrade golang

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

* upgrade golang to 1.18 for e2e

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

* Fix deps

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

* Update build action

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

* Upgrade push action

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

* Update docker file

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

* Bump golang lint to match

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

* fix go.mod

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

* fix: Failed to process: Object 'Kind' is missing in Errors with rollouts notification (argoproj#2150)

* fix: update rolloutobject with gvk before writing to rollout informer

Signed-off-by: Ravi Hari <[email protected]>

* fix: controller schema linting

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* fix: rootPath support so that it uses the embedded files system (argoproj#2198)

* fix: rootPath support so that it uses the embeded files system

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

* Catch edge cases and make sure we always server index.html on not found

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

* turn path.Clean into var

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

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

* fix: change completed condition so it only triggers on pod hash changes also adds an event for when it  does changes. (argoproj#2203)

* feat: add healthy event/condition and fix completed event/condition

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

* fix unit tests

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

* rename vars to make more sense and remove healthy event becase it will never be consistent

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

* fix unit tests

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

* possible fix for e2e

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

* fix e2e

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

* unit test for complete function

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

* small cleanup and changes to not check generation

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

* fix unit test and proper behavior

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

* Fix e2e

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

* rename and fix one unit test

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

* fix unit tests

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

* fix unit test

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

* add seperate test for TestRolloutComplete

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

* renames

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

* fix e2e

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

* Set Completed to false

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

* Add event

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

* fix e2e

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

* refactor

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

* Fix all but one unit test

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

* fix last unit test

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

* lint

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

* cleanup

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

* Rename

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

* More renames

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

* small comment change

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

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

* feat: Add support for spec.ingressClassName (argoproj#2178)

This change adds support for `spec.ingressClassName` while still supporting
`kubernetes.io/ingress.class` annotation for backwards compatibility.

Fixes argoproj#1277

Signed-off-by: Siavash Safi <[email protected]>

Signed-off-by: Siavash Safi <[email protected]>

* fix: enable notifications without when condition (argoproj#2231)

* fix: enable notifications without when condition

Signed-off-by: Ravi Hari <[email protected]>

* fix: use trigger action item from the list

Signed-off-by: Ravi Hari <[email protected]>

* fix: add emptycondition logic to make notifications work with/without conditions

Signed-off-by: Ravi Hari <[email protected]>

* fix: linting

Signed-off-by: Ravi Hari <[email protected]>

Signed-off-by: Ravi Hari <[email protected]>

* Use standard cli format for dashboard root path (argoproj#2244)

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

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

* merge conflict broke tests

Signed-off-by: Travis Perdue <[email protected]>

Signed-off-by: Jayme Bird <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: Mário Bezerra <[email protected]>
Signed-off-by: Jesse Antoszyk <[email protected]>
Signed-off-by: Simon Ninon <[email protected]>
Signed-off-by: Martin Adler <[email protected]>
Signed-off-by: Rohit Agrawal <[email protected]>
Signed-off-by: Leonardo Luz Almeida <[email protected]>
Signed-off-by: Mike Ball <[email protected]>
Signed-off-by: Ravi Hari <[email protected]>
Signed-off-by: Siavash Safi <[email protected]>
Signed-off-by: Travis Perdue <[email protected]>
Co-authored-by: jaymebrd <[email protected]>
Co-authored-by: Zach Aller <[email protected]>
Co-authored-by: Mário Bezerra <[email protected]>
Co-authored-by: Jesse Antoszyk <[email protected]>
Co-authored-by: Simon Ninon <[email protected]>
Co-authored-by: Martin Adler <[email protected]>
Co-authored-by: Rohit Agrawal <[email protected]>
Co-authored-by: Leonardo Luz Almeida <[email protected]>
Co-authored-by: Mike Ball <[email protected]>
Co-authored-by: cskh <[email protected]>
Co-authored-by: Hui Kang <[email protected]>
Co-authored-by: RaviHari <[email protected]>
Co-authored-by: Siavash Safi <[email protected]>
Signed-off-by: Travis Perdue <[email protected]>
tperdue321 added a commit to rallyhealth/argo-rollouts that referenced this pull request Jan 12, 2023
* feat: add support for influxdb as a metrics provider (argoproj#1839)

* feat: add InfluxDB metric provider implementation

Signed-off-by: Jayme Bird <[email protected]>

* feat: add influx to metric provider util count, add missing graphite

Signed-off-by: Jayme Bird <[email protected]>

* feat: add protobuf definitions for InfluxdbMetric

Signed-off-by: Jayme Bird <[email protected]>

* feat: add docs for the Influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add tests for influxdb metrics provider

Signed-off-by: Jayme Bird <[email protected]>

* feat: add go mod replace for version of moq due to security issue

Signed-off-by: Jayme Bird <[email protected]>

* feat: update error message to distinguish failed cases - review feedback

Signed-off-by: Jayme Bird <[email protected]>

* feat: update tests to simplify mocking of QueryTableResult

An upstream change to the influx go client makes it easier to mock
QueryTableResult in tests. This removes a lot of boilerplate duplication
in the tests.

Signed-off-by: Jayme Bird <[email protected]>

* feat: re-run codegen

Signed-off-by: Jayme Bird <[email protected]>

* feat: Adds support for Istio traffic mirroring (argoproj#2074)

* feat: Add support for istio traffic mirroring steps

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

* bump e2e timeout

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

* Remove unintended change

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

* Cleaner events

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

* Add docs for mirror and fix up header routing

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

* small doc changes

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

* Add example

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

* Fix types and change example

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

* Remove unused type

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

* Docs change

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

* Fix PR comments

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

* Check for >=

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

* Remove unused function

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

* codegen

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

* Add better error logging

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

* a few more error msgs

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

* fix comments

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

* typo

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

* fix logic error

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

* redo header logic

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

* cleanup

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

* Fix issue with keeping route weight updated when no routes
are defined in spec.strategy.canary.trafficRouting.istio.virtualService.routes
requiring only a single route

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

* cleanup routes when promiting with last step being a pause

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

* fix bug with promote and last step is a pause

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

* Fix tests

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

* fix typo

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

* chore: improve openapi schema (argoproj#2081)

* feat: include all CRDs to the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat: use kube-openapi naming convention in the OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* chore: generate OpenAPI schema

Signed-off-by: Mário Bezerra <[email protected]>

* feat(grafana): Allow selecting datasource for grafana dashboard (argoproj#1988)

Signed-off-by: Jesse Antoszyk <[email protected]>

* feat: support /rollouts/:namespace?q=... and /rollout/:namespace/:name (argoproj#1902)

Signed-off-by: Simon Ninon <[email protected]>

* chore: Add e2e and unit test comment reports (argoproj#2123)

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

* chore: upgrade deps (argoproj#2136)

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

* fixes argoproj#2141 Added list and watch to clusterrole (argoproj#2145)

Signed-off-by: Martin Adler <[email protected]>

* fix: Update ro.Status.ALB when first creating rollout object (argoproj#1986)

* fix: make sure we update rollout.Status.ALB when first create Rollout object

This fixes the case when we first create a rollout the status.ALB field does not
get updated with valid information form the elb.

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

* Refactor check for if we should verify alb.

This creates a new rolloututil function ShouldVerifyWeight that verifies
that we should call aws because the rollout is in the middle of some update.

The reason I feel this should move into the ingress implmentation function VerifyWeight
is becuase in the future other ingresses might also need to verify weights and adding
ingress specific status checks in trafficrouting.go like a leak details where it should be
up to the ingress provider to determin if it should be careful of rate limiting do to say it
being a cloud provider call.

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

* lint

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

* Fix tests

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

* Add new test for ShouldVerifyWeight

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

* Fix logic

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

* Add test for where we do not need to verify weight and its already set

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

* fix up review comments

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

* fix tests

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

* fix bad merge

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

* Fix test

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

* Fix test

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

* Clearer function name

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

* Clean up if logic

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

* fix: remove metrics when objects are removed from cluster to prevent build up (argoproj#2115)

* fix: remove metrics on resource removal

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

* Add test

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

* More tests

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

* back off deps updates

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

* Fix dep change

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

* upgrade prom deps for new features

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

* fix deps

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

* chore: use controler-gen for cluster analysis template scope (argoproj#2148)

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

* fix(analysis): Fix Analysis Terminal Decision For Dry-Run Metrics (argoproj#2131)

Signed-off-by: Rohit Agrawal <[email protected]>

* docs: update release doc with brew formula details (argoproj#2165)

Signed-off-by: Leonardo Luz Almeida <[email protected]>

* fix(docs) Graphite metrics provider linked in docs sidebar. Fixes argoproj#2102. (argoproj#2094)

* Graphite metrics provider linked in docs sidebar

This fixes an issue wherein the Graphite metrics
provider has no sidebar link in the docs hosted
at https://argoproj.github.io/argo-rollouts/.

As a bonus, this also removes various trailing
whitespace from analysis docs.

Signed-off-by: Mike Ball <[email protected]>

* build trigger

Signed-off-by: Mike Ball <[email protected]>

* feat: emit rollout delete event (argoproj#1893)

Signed-off-by: Hui Kang <[email protected]>

Co-authored-by: Hui Kang <[email protected]>

* chore: Upgrade golang (argoproj#2160)

* Upgrade golang

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

* upgrade golang to 1.18 for e2e

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

* Fix deps

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

* Update build action

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

* Upgrade push action

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

* Update docker file

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

* Bump golang lint to match

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

* fix go.mod

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

* fix: Failed to process: Object 'Kind' is missing in Errors with rollouts notification (argoproj#2150)

* fix: update rolloutobject with gvk before writing to rollout informer

Signed-off-by: Ravi Hari <[email protected]>

* fix: controller schema linting

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <[email protected]>

* fix: rootPath support so that it uses the embedded files system (argoproj#2198)

* fix: rootPath support so that it uses the embeded files system

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

* Catch edge cases and make sure we always server index.html on not found

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

* turn path.Clean into var

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

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

* fix: change completed condition so it only triggers on pod hash changes also adds an event for when it  does changes. (argoproj#2203)

* feat: add healthy event/condition and fix completed event/condition

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

* fix unit tests

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

* rename vars to make more sense and remove healthy event becase it will never be consistent

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

* fix unit tests

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

* possible fix for e2e

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

* fix e2e

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

* unit test for complete function

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

* small cleanup and changes to not check generation

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

* fix unit test and proper behavior

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

* Fix e2e

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

* rename and fix one unit test

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

* fix unit tests

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

* fix unit test

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

* add seperate test for TestRolloutComplete

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

* renames

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

* fix e2e

Signed-off-by: zachaller <[email protected]>

* Set Completed to false

Signed-off-by: zachaller <[email protected]>

* Add event

Signed-off-by: zachaller <[email protected]>

* fix e2e

Signed-off-by: zachaller <[email protected]>

* refactor

Signed-off-by: zachaller <[email protected]>

* Fix all but one unit test

Signed-off-by: zachaller <[email protected]>

* fix last unit test

Signed-off-by: zachaller <[email protected]>

* lint

Signed-off-by: zachaller <[email protected]>

* cleanup

Signed-off-by: zachaller <[email protected]>

* Rename

Signed-off-by: zachaller <[email protected]>

* More renames

Signed-off-by: zachaller <[email protected]>

* small comment change

Signed-off-by: zachaller <[email protected]>

Signed-off-by: zachaller <[email protected]>

* feat: Add support for spec.ingressClassName (argoproj#2178)

This change adds support for `spec.ingressClassName` while still supporting
`kubernetes.io/ingress.class` annotation for backwards compatibility.

Fixes argoproj#1277

Signed-off-by: Siavash Safi <[email protected]>

Signed-off-by: Siavash Safi <[email protected]>

* fix: enable notifications without when condition (argoproj#2231)

* fix: enable notifications without when condition

Signed-off-by: Ravi Hari <[email protected]>

* fix: use trigger action item from the list

Signed-off-by: Ravi Hari <[email protected]>

* fix: add emptycondition logic to make notifications work with/without conditions

Signed-off-by: Ravi Hari <[email protected]>

* fix: linting

Signed-off-by: Ravi Hari <[email protected]>

Signed-off-by: Ravi Hari <[email protected]>

* Use standard cli format for dashboard root path (argoproj#2244)

Signed-off-by: zachaller <[email protected]>

Signed-off-by: zachaller <[email protected]>

* fix: UI not redirecting on / (argoproj#2252)

Signed-off-by: zachaller <[email protected]>

Signed-off-by: zachaller <[email protected]>

* fix: nil pointer while linting with basic canary and ingresses (argoproj#2256)

* fix: nil pointer while linting basic canary with Ingress resources

Signed-off-by: zachaller <[email protected]>

* Add test case

Signed-off-by: zachaller <[email protected]>

Signed-off-by: zachaller <[email protected]>

* fix(controller):  Fix k8s clientset controller metrics. Fixes argoproj#2139 (argoproj#2261)

* Add roundtripper to kubeconfig before creating kubeclient

Signed-off-by: Nikhil <[email protected]>

* Check if k8sRequestsCount is nil before attempting increase

Signed-off-by: Nikhil <[email protected]>

* Added Flipkart to Users.md

Signed-off-by: Nikhil <[email protected]>

* gofmt controller/metrics/client.go

Signed-off-by: Nikhil <[email protected]>

Signed-off-by: Nikhil <[email protected]>

* fixes(controller): istio dropping fields not defined in type (argoproj#2268)

* fixes argoproj#2266

Signed-off-by: zachaller <[email protected]>

* typo

Signed-off-by: zachaller <[email protected]>

* test after calling set mirror

Signed-off-by: zachaller <[email protected]>

* Keep port on user defined service by adding to internal types

Signed-off-by: zachaller <[email protected]>

* github trigger re-run

Signed-off-by: zachaller <[email protected]>

* Drop port on virtual service to be consistent with added routes

Drop the port on the virtual service with the statment that rollouts only supports
one port services.

Signed-off-by: zachaller <[email protected]>

* cleanup test to just test extra fields and add a port check on destination as well

Signed-off-by: zachaller <[email protected]>

* keep port for both mirroring and header routes

Signed-off-by: zachaller <[email protected]>

* github trigger re-run

Signed-off-by: zachaller <[email protected]>

* github trigger re-run

Signed-off-by: zachaller <[email protected]>

* add function comment

Signed-off-by: zachaller <[email protected]>

Signed-off-by: zachaller <[email protected]>

Signed-off-by: Jayme Bird <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: Mário Bezerra <[email protected]>
Signed-off-by: Jesse Antoszyk <[email protected]>
Signed-off-by: Simon Ninon <[email protected]>
Signed-off-by: Martin Adler <[email protected]>
Signed-off-by: Rohit Agrawal <[email protected]>
Signed-off-by: Leonardo Luz Almeida <[email protected]>
Signed-off-by: Mike Ball <[email protected]>
Signed-off-by: Ravi Hari <[email protected]>
Signed-off-by: Siavash Safi <[email protected]>
Signed-off-by: Nikhil <[email protected]>
Signed-off-by: zachaller <[email protected]>
Signed-off-by: Travis Perdue <[email protected]>
Co-authored-by: jaymebrd <[email protected]>
Co-authored-by: Zach Aller <[email protected]>
Co-authored-by: Mário Bezerra <[email protected]>
Co-authored-by: Jesse Antoszyk <[email protected]>
Co-authored-by: Simon Ninon <[email protected]>
Co-authored-by: Martin Adler <[email protected]>
Co-authored-by: Rohit Agrawal <[email protected]>
Co-authored-by: Leonardo Luz Almeida <[email protected]>
Co-authored-by: Mike Ball <[email protected]>
Co-authored-by: cskh <[email protected]>
Co-authored-by: Hui Kang <[email protected]>
Co-authored-by: RaviHari <[email protected]>
Co-authored-by: Siavash Safi <[email protected]>
Co-authored-by: nikhil1raghav <[email protected]>
Signed-off-by: Travis Perdue <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants