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

VirtualService's Retries stanza gets deleted by Argo #2266

Closed
2 tasks done
m-wynn opened this issue Sep 26, 2022 · 3 comments · Fixed by #2268
Closed
2 tasks done

VirtualService's Retries stanza gets deleted by Argo #2266

m-wynn opened this issue Sep 26, 2022 · 3 comments · Fixed by #2268
Labels
bug Something isn't working

Comments

@m-wynn
Copy link

m-wynn commented Sep 26, 2022

Checklist:

  • I've included steps to reproduce the bug.
  • I've inclued the version of argo rollouts.

Describe the bug

Argo Rollouts is managing routes on a couple Istio delegate VirtualServices. These VirtualServices have a route and a retries stanza. Whenever Argo updates the VirtualService, the retries stanza is lost. I did not notice this issue before upgrading to Istio 1.15.0 and changing the application to use delegate VirtualServices

To Reproduce

  1. Create a delegate VirtualService with a retries stanza:
kind: VirtualService
apiVersion: networking.istio.io/v1beta1
metadata:
  name: my-application-delegate
  namespace: prod
spec:
  http:
    - name: my-application-main
      route:
        - destination:
            host: my-application
            subset: stable
          weight: 100
        - destination:
            host: my-application
            subset: canary
      retries:
        attempts: 3
        perTryTimeout: 10s
        retryOn: 'gateway-error,connect-failure,refused-stream'
  1. Route from another virtualservice
kind: VirtualService
apiVersion: networking.istio.io/v1beta1
metadata:
  name: my-application
  namespace: prod
spec:
  hosts:
    - mywebsite.com
  gateways:
    - istio-system/external
    - mesh
  http:
    - name: my-application
      delegate:
        name: my-application-delegate
        namespace: prod
  1. Manage the routes from an argo rollout:
apiVersion: argoproj.io/v1alpha1
kind: Rollout
metadata:
  name: my-application
  namespace: prod
spec:
  revisionHistoryLimit: 3
  template:
    spec:
      ...
  strategy:
    canary:
      canaryMetadata:
        annotations:
          role: canary
        labels:
          role: canary

      stableMetadata:
        annotations:
          role: stable
        labels:
          role: stable

      maxUnavailable: 20%
      maxSurge: 100%

      scaleDownDelaySeconds: 120

      trafficRouting:
        managedRoutes:
          - name: internal-header
        istio:
          virtualServices:
            - name: my-application-delegate
              routes:
                - my-application
          destinationRule:
            name: my-application
            canarySubsetName: canary
            stableSubsetName: stable
      steps:
        - setWeight: 0
        - setCanaryScale:
            replicas: 3
        - setHeaderRoute: 
            name: "internal-header"
            match:
              - headerName: cookie
                headerValue:
                  regex: ^(.*;?)?(internal=true)(;.*)?
        - pause: {}
  1. Update the rollout with a new release

Expected behavior

The route should retain the retries stanza. Instead, as soon as it is updated, the retries stanza is deleted.

Screenshots

N/A

Version

1.3.0

Logs

Logs
time="2022-09-26T19:42:51Z" level=info msg="Start processing" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Processing completed" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Started syncing rollout" generation=36 namespace=prod resourceVersion=758342599 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="ComputePodTemplateHash hash changed (expected: 6ccc4dbffd, actual: 5bff6b9764)" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Patched conditions: {\"status\":{\"conditions\":[{\"lastTransitionTime\":\"2022-09-26T14:24:23Z\",\"lastUpdateTime\":\"2022-09-26T14:24:23Z\",\"message\":\"Rollout has minimum availability\",\"reason\":\"AvailableReason\",\"status\":\"True\",\"type\":\"Available\"},{\"lastTransitionTime\":\"2022-09-26T19:32:39Z\",\"lastUpdateTime\":\"2022-09-26T19:32:39Z\",\"message\":\"Rollout is not healthy\",\"reason\":\"RolloutHealthy\",\"status\":\"False\",\"type\":\"Healthy\"},{\"lastTransitionTime\":\"2022-09-26T19:32:39Z\",\"lastUpdateTime\":\"2022-09-26T19:32:39Z\",\"message\":\"RolloutCompleted\",\"reason\":\"RolloutCompleted\",\"status\":\"False\",\"type\":\"Completed\"},{\"lastTransitionTime\":\"2022-09-26T19:42:18Z\",\"lastUpdateTime\":\"2022-09-26T19:42:51Z\",\"message\":\"Rollout is resumed\",\"reason\":\"RolloutResumed\",\"status\":\"Unknown\",\"type\":\"Progressing\"},{\"lastTransitionTime\":\"2022-09-26T19:42:51Z\",\"lastUpdateTime\":\"2022-09-26T19:42:51Z\",\"message\":\"Rollout is paused\",\"reason\":\"RolloutPaused\",\"status\":\"False\",\"type\":\"Paused\"}],\"message\":\"more replicas need to be updated\",\"phase\":\"Progressing\"}}" generation=36 namespace=prod resourceVersion=758342599 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Found 1 TrafficRouting Reconcilers" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciling TrafficRouting with type 'Istio'" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciling canary pause step (stepIndex: 3/6)" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Not finished reconciling Canary Pause" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Rollout has been unpaused" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Rollout step 4/6 completed (pause)" event_reason=RolloutStepCompleted namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Event(v1.ObjectReference{Kind:\"Rollout\", Namespace:\"prod\", Name:\"my-application\", UID:\"03b464f0-0178-4837-8773-492ddaf83f41\", APIVersion:\"argoproj.io/v1alpha1\", ResourceVersion:\"758342599\", FieldPath:\"\"}): type: 'Normal' reason: 'RolloutStepCompleted' Rollout step 4/6 completed (pause)"
time="2022-09-26T19:42:51Z" level=info msg="Start processing" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Processing completed" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Patched: {\"status\":{\"conditions\":[{\"lastTransitionTime\":\"2022-09-26T14:24:23Z\",\"lastUpdateTime\":\"2022-09-26T14:24:23Z\",\"message\":\"Rollout has minimum availability\",\"reason\":\"AvailableReason\",\"status\":\"True\",\"type\":\"Available\"},{\"lastTransitionTime\":\"2022-09-26T19:32:39Z\",\"lastUpdateTime\":\"2022-09-26T19:32:39Z\",\"message\":\"Rollout is not healthy\",\"reason\":\"RolloutHealthy\",\"status\":\"False\",\"type\":\"Healthy\"},{\"lastTransitionTime\":\"2022-09-26T19:32:39Z\",\"lastUpdateTime\":\"2022-09-26T19:32:39Z\",\"message\":\"RolloutCompleted\",\"reason\":\"RolloutCompleted\",\"status\":\"False\",\"type\":\"Completed\"},{\"lastTransitionTime\":\"2022-09-26T19:33:10Z\",\"lastUpdateTime\":\"2022-09-26T19:33:10Z\",\"message\":\"Rollout is paused\",\"reason\":\"RolloutPaused\",\"status\":\"True\",\"type\":\"Paused\"},{\"lastTransitionTime\":\"2022-09-26T19:42:51Z\",\"lastUpdateTime\":\"2022-09-26T19:42:51Z\",\"message\":\"ReplicaSet \\\"my-application-5bff6b9764\\\" is progressing.\",\"reason\":\"ReplicaSetUpdated\",\"status\":\"True\",\"type\":\"Progressing\"}],\"controllerPause\":null,\"currentStepIndex\":4,\"message\":\"more replicas need to be updated\",\"phase\":\"Progressing\"}}" generation=36 namespace=prod resourceVersion=758342599 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="persisted to informer" generation=36 namespace=prod resourceVersion=758342602 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciliation completed" generation=36 namespace=prod resourceVersion=758342599 rollout=my-application time_ms=60.706250000000004
time="2022-09-26T19:42:51Z" level=info msg="Started syncing rollout" generation=36 namespace=prod resourceVersion=758342602 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="ComputePodTemplateHash hash changed (expected: 6ccc4dbffd, actual: 5bff6b9764)" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Start processing" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Processing completed" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Patched conditions: {\"status\":{\"conditions\":[{\"lastTransitionTime\":\"2022-09-26T14:24:23Z\",\"lastUpdateTime\":\"2022-09-26T14:24:23Z\",\"message\":\"Rollout has minimum availability\",\"reason\":\"AvailableReason\",\"status\":\"True\",\"type\":\"Available\"},{\"lastTransitionTime\":\"2022-09-26T19:32:39Z\",\"lastUpdateTime\":\"2022-09-26T19:32:39Z\",\"message\":\"Rollout is not healthy\",\"reason\":\"RolloutHealthy\",\"status\":\"False\",\"type\":\"Healthy\"},{\"lastTransitionTime\":\"2022-09-26T19:32:39Z\",\"lastUpdateTime\":\"2022-09-26T19:32:39Z\",\"message\":\"RolloutCompleted\",\"reason\":\"RolloutCompleted\",\"status\":\"False\",\"type\":\"Completed\"},{\"lastTransitionTime\":\"2022-09-26T19:42:51Z\",\"lastUpdateTime\":\"2022-09-26T19:42:51Z\",\"message\":\"ReplicaSet \\\"my-application-5bff6b9764\\\" is progressing.\",\"reason\":\"ReplicaSetUpdated\",\"status\":\"True\",\"type\":\"Progressing\"},{\"lastTransitionTime\":\"2022-09-26T19:42:51Z\",\"lastUpdateTime\":\"2022-09-26T19:42:51Z\",\"message\":\"Rollout is paused\",\"reason\":\"RolloutPaused\",\"status\":\"False\",\"type\":\"Paused\"}]}}" generation=36 namespace=prod resourceVersion=758342602 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Found 1 TrafficRouting Reconcilers" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciling TrafficRouting with type 'Istio'" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Start processing" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Processing completed" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="VirtualService `my-application-delegate` set to desiredWeight '100'" event_reason="Updated VirtualService" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Previous weights: &TrafficWeights{Canary:WeightDestination{Weight:0,ServiceName:,PodTemplateHash:5bff6b9764,},Stable:WeightDestination{Weight:100,ServiceName:,PodTemplateHash:6468cd49fc,},Additional:[]WeightDestination{},Verified:nil,}" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="New weights: &TrafficWeights{Canary:WeightDestination{Weight:100,ServiceName:,PodTemplateHash:5bff6b9764,},Stable:WeightDestination{Weight:0,ServiceName:,PodTemplateHash:6468cd49fc,},Additional:[]WeightDestination{},Verified:nil,}" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Event(v1.ObjectReference{Kind:\"Rollout\", Namespace:\"prod\", Name:\"my-application\", UID:\"03b464f0-0178-4837-8773-492ddaf83f41\", APIVersion:\"argoproj.io/v1alpha1\", ResourceVersion:\"758342602\", FieldPath:\"\"}): type: 'Normal' reason: 'Updated VirtualService' VirtualService `my-application-delegate` set to desiredWeight '100'"
time="2022-09-26T19:42:51Z" level=info msg="Event(v1.ObjectReference{Kind:\"Rollout\", Namespace:\"prod\", Name:\"my-application\", UID:\"03b464f0-0178-4837-8773-492ddaf83f41\", APIVersion:\"argoproj.io/v1alpha1\", ResourceVersion:\"758342602\", FieldPath:\"\"}): type: 'Normal' reason: 'TrafficWeightUpdated' Traffic weight updated from 0 to 100"
time="2022-09-26T19:42:51Z" level=info msg="Traffic weight updated from 0 to 100" event_reason=TrafficWeightUpdated namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Rollout step 5/6 completed (setWeight: 100)" event_reason=RolloutStepCompleted namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Event(v1.ObjectReference{Kind:\"Rollout\", Namespace:\"prod\", Name:\"my-application\", UID:\"03b464f0-0178-4837-8773-492ddaf83f41\", APIVersion:\"argoproj.io/v1alpha1\", ResourceVersion:\"758342602\", FieldPath:\"\"}): type: 'Normal' reason: 'RolloutStepCompleted' Rollout step 5/6 completed (setWeight: 100)"
time="2022-09-26T19:42:51Z" level=info msg="Patched: {\"status\":{\"canary\":{\"weights\":{\"canary\":{\"weight\":100},\"stable\":{\"weight\":0}}},\"currentStepIndex\":5}}" generation=36 namespace=prod resourceVersion=758342602 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="persisted to informer" generation=36 namespace=prod resourceVersion=758342607 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciliation completed" generation=36 namespace=prod resourceVersion=758342602 rollout=my-application time_ms=73.964032
time="2022-09-26T19:42:51Z" level=info msg="Started syncing rollout" generation=36 namespace=prod resourceVersion=758342607 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="ComputePodTemplateHash hash changed (expected: 6ccc4dbffd, actual: 5bff6b9764)" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Found 1 TrafficRouting Reconcilers" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciling TrafficRouting with type 'Istio'" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Start processing" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Processing completed" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciling canary pause step (stepIndex: 5/6)" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Not finished reconciling Canary Pause" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Adding pause reason CanaryPauseStep with start time 2022-09-26T19:42:51Z" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Rollout is paused (CanaryPauseStep)" event_reason=RolloutPaused namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Patched: {\"status\":{\"controllerPause\":true,\"message\":\"CanaryPauseStep\",\"pauseConditions\":[{\"reason\":\"CanaryPauseStep\",\"startTime\":\"2022-09-26T19:42:51Z\"}],\"phase\":\"Paused\"}}" generation=36 namespace=prod resourceVersion=758342607 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Event(v1.ObjectReference{Kind:\"Rollout\", Namespace:\"prod\", Name:\"my-application\", UID:\"03b464f0-0178-4837-8773-492ddaf83f41\", APIVersion:\"argoproj.io/v1alpha1\", ResourceVersion:\"758342607\", FieldPath:\"\"}): type: 'Normal' reason: 'RolloutPaused' Rollout is paused (CanaryPauseStep)"
time="2022-09-26T19:42:51Z" level=info msg="persisted to informer" generation=36 namespace=prod resourceVersion=758342609 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciliation completed" generation=36 namespace=prod resourceVersion=758342607 rollout=my-application time_ms=34.155287
time="2022-09-26T19:42:51Z" level=info msg="Started syncing rollout" generation=36 namespace=prod resourceVersion=758342609 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="ComputePodTemplateHash hash changed (expected: 6ccc4dbffd, actual: 5bff6b9764)" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Start processing" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Processing completed" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Patched conditions: {\"status\":{\"conditions\":[{\"lastTransitionTime\":\"2022-09-26T14:24:23Z\",\"lastUpdateTime\":\"2022-09-26T14:24:23Z\",\"message\":\"Rollout has minimum availability\",\"reason\":\"AvailableReason\",\"status\":\"True\",\"type\":\"Available\"},{\"lastTransitionTime\":\"2022-09-26T19:32:39Z\",\"lastUpdateTime\":\"2022-09-26T19:32:39Z\",\"message\":\"Rollout is not healthy\",\"reason\":\"RolloutHealthy\",\"status\":\"False\",\"type\":\"Healthy\"},{\"lastTransitionTime\":\"2022-09-26T19:32:39Z\",\"lastUpdateTime\":\"2022-09-26T19:32:39Z\",\"message\":\"RolloutCompleted\",\"reason\":\"RolloutCompleted\",\"status\":\"False\",\"type\":\"Completed\"},{\"lastTransitionTime\":\"2022-09-26T19:42:51Z\",\"lastUpdateTime\":\"2022-09-26T19:42:51Z\",\"message\":\"Rollout is paused\",\"reason\":\"RolloutPaused\",\"status\":\"Unknown\",\"type\":\"Progressing\"},{\"lastTransitionTime\":\"2022-09-26T19:42:51Z\",\"lastUpdateTime\":\"2022-09-26T19:42:51Z\",\"message\":\"Rollout is paused\",\"reason\":\"RolloutPaused\",\"status\":\"True\",\"type\":\"Paused\"}]}}" generation=36 namespace=prod resourceVersion=758342609 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Found 1 TrafficRouting Reconcilers" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciling TrafficRouting with type 'Istio'" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciling canary pause step (stepIndex: 5/6)" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Enqueueing Rollout in 4m59.559550001s seconds" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Not finished reconciling Canary Pause" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="No status changes. Skipping patch" generation=36 namespace=prod resourceVersion=758342609 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="persisted to informer" generation=36 namespace=prod resourceVersion=758342611 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciliation completed" generation=36 namespace=prod resourceVersion=758342609 rollout=my-application time_ms=35.44591
time="2022-09-26T19:42:51Z" level=info msg="Start processing" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Processing completed" resource=prod/my-application
time="2022-09-26T19:42:51Z" level=info msg="Started syncing rollout" generation=36 namespace=prod resourceVersion=758342611 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="ComputePodTemplateHash hash changed (expected: 6ccc4dbffd, actual: 5bff6b9764)" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Found 1 TrafficRouting Reconcilers" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciling TrafficRouting with type 'Istio'" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciling canary pause step (stepIndex: 5/6)" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Enqueueing Rollout in 4m59.547951417s seconds" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Not finished reconciling Canary Pause" namespace=prod rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="No status changes. Skipping patch" generation=36 namespace=prod resourceVersion=758342611 rollout=my-application
time="2022-09-26T19:42:51Z" level=info msg="Reconciliation completed" generation=36 namespace=prod resourceVersion=758342611 rollout=my-application time_ms=5.0035039999999995

Message from the maintainers:

Impacted by this bug? Give it a 👍. We prioritize the issues with the most 👍.

@m-wynn m-wynn added the bug Something isn't working label Sep 26, 2022
@zachaller
Copy link
Collaborator

zachaller commented Sep 26, 2022

Can you test this against Argo Rollouts 1.2.2? This might be related to some changes in 1.3 I want to confirm.

@m-wynn
Copy link
Author

m-wynn commented Sep 26, 2022

I downgraded to 1.2.2, removed the setHeaderRoute bit as it is not compatible with 1.2, and attempted a rollback. You are correct, I no longer lose the retries stanza on upgrade.

I also realized that argo was deleting the port stanza from the routes it manages as well. This is also resolved with a rollback to 1.2.2.

@zachaller
Copy link
Collaborator

Ok, I think I have an idea on what is going on will try to get a fix out soon.

zachaller added a commit to zachaller/argo-rollouts that referenced this issue Sep 27, 2022
Signed-off-by: zachaller <zachaller@users.noreply.github.com>
leoluz pushed a commit that referenced this issue Sep 29, 2022
* fixes #2266

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

* typo

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

* test after calling set mirror

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

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

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

* github trigger re-run

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

* 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 <zachaller@users.noreply.github.com>

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

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

* keep port for both mirroring and header routes

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

* github trigger re-run

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

* github trigger re-run

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

* add function comment

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

Signed-off-by: zachaller <zachaller@users.noreply.github.com>
leoluz pushed a commit that referenced this issue Sep 29, 2022
* fixes #2266

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

* typo

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

* test after calling set mirror

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

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

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

* github trigger re-run

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

* 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 <zachaller@users.noreply.github.com>

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

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

* keep port for both mirroring and header routes

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

* github trigger re-run

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

* github trigger re-run

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

* add function comment

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

Signed-off-by: zachaller <zachaller@users.noreply.github.com>
jenciso pushed a commit to jenciso/argo-rollouts that referenced this issue Oct 25, 2022
…j#2268)

* fixes argoproj#2266

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

* typo

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

* test after calling set mirror

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

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

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

* github trigger re-run

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

* 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 <zachaller@users.noreply.github.com>

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

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

* keep port for both mirroring and header routes

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

* github trigger re-run

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

* github trigger re-run

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

* add function comment

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

Signed-off-by: zachaller <zachaller@users.noreply.github.com>
tperdue321 added a commit to rallyhealth/argo-rollouts that referenced this issue 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 <jbird@influxdata.com>

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* feat: add protobuf definitions for InfluxdbMetric

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* feat: add docs for the Influxdb metrics provider

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* feat: add tests for influxdb metrics provider

Signed-off-by: Jayme Bird <jbird@influxdata.com>

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* 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 <jbird@influxdata.com>

* feat: re-run codegen

Signed-off-by: Jayme Bird <jbird@influxdata.com>

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

* feat: Add support for istio traffic mirroring steps

Signed-off-by: zachaller <zachaller@hotmail.com>

* bump e2e timeout

Signed-off-by: zachaller <zachaller@hotmail.com>

* Remove unintended change

Signed-off-by: zachaller <zachaller@hotmail.com>

* Cleaner events

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add docs for mirror and fix up header routing

Signed-off-by: zachaller <zachaller@hotmail.com>

* small doc changes

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add example

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix types and change example

Signed-off-by: zachaller <zachaller@hotmail.com>

* Remove unused type

Signed-off-by: zachaller <zachaller@hotmail.com>

* Docs change

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix PR comments

Signed-off-by: zachaller <zachaller@hotmail.com>

* Check for >=

Signed-off-by: zachaller <zachaller@hotmail.com>

* Remove unused function

Signed-off-by: zachaller <zachaller@hotmail.com>

* codegen

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add better error logging

Signed-off-by: zachaller <zachaller@hotmail.com>

* a few more error msgs

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix comments

Signed-off-by: zachaller <zachaller@hotmail.com>

* typo

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix logic error

Signed-off-by: zachaller <zachaller@hotmail.com>

* redo header logic

Signed-off-by: zachaller <zachaller@hotmail.com>

* cleanup

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* cleanup routes when promiting with last step being a pause

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix bug with promote and last step is a pause

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix typo

Signed-off-by: zachaller <zachaller@hotmail.com>

* chore: improve openapi schema (argoproj#2081)

* feat: include all CRDs to the OpenAPI schema

Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>

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

Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>

* chore: generate OpenAPI schema

Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>

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

Signed-off-by: Jesse Antoszyk <22500761+jcantosz@users.noreply.github.com>

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

Signed-off-by: Simon Ninon <sninon@pagerduty.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* chore: upgrade deps (argoproj#2136)

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: Martin Adler <1208749+EagleIJoe@users.noreply.github.com>

* 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 <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* lint

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add new test for ShouldVerifyWeight

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix logic

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix up review comments

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix bad merge

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix test

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix test

Signed-off-by: zachaller <zachaller@hotmail.com>

* Clearer function name

Signed-off-by: zachaller <zachaller@hotmail.com>

* Clean up if logic

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* Add test

Signed-off-by: zachaller <zachaller@hotmail.com>

* More tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* back off deps updates

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix dep change

Signed-off-by: zachaller <zachaller@hotmail.com>

* upgrade prom deps for new features

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix deps

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: Rohit Agrawal <rohit.agrawal@databricks.com>

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

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

* 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 <mikedball@gmail.com>

* build trigger

Signed-off-by: Mike Ball <mikedball@gmail.com>

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

Signed-off-by: Hui Kang <hui.kang@salesforce.com>

Co-authored-by: Hui Kang <hui.kang@salesforce.com>

* chore: Upgrade golang (argoproj#2160)

* Upgrade golang

Signed-off-by: zachaller <zachaller@hotmail.com>

* upgrade golang to 1.18 for e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix deps

Signed-off-by: zachaller <zachaller@hotmail.com>

* Update build action

Signed-off-by: zachaller <zachaller@hotmail.com>

* Upgrade push action

Signed-off-by: zachaller <zachaller@hotmail.com>

* Update docker file

Signed-off-by: zachaller <zachaller@hotmail.com>

* Bump golang lint to match

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix go.mod

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <ravireliable@gmail.com>

* fix: controller schema linting

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* 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 <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* turn path.Clean into var

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* fix unit tests

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* possible fix for e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* unit test for complete function

Signed-off-by: zachaller <zachaller@hotmail.com>

* small cleanup and changes to not check generation

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit test and proper behavior

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* rename and fix one unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* add seperate test for TestRolloutComplete

Signed-off-by: zachaller <zachaller@hotmail.com>

* renames

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* Set Completed to false

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add event

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* refactor

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix all but one unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix last unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* lint

Signed-off-by: zachaller <zachaller@hotmail.com>

* cleanup

Signed-off-by: zachaller <zachaller@hotmail.com>

* Rename

Signed-off-by: zachaller <zachaller@hotmail.com>

* More renames

Signed-off-by: zachaller <zachaller@hotmail.com>

* small comment change

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <git@hosted.run>

Signed-off-by: Siavash Safi <git@hosted.run>

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

* fix: enable notifications without when condition

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* fix: use trigger action item from the list

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

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

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* fix: linting

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* Add test case

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

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

* Add roundtripper to kubeconfig before creating kubeclient

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

* Check if k8sRequestsCount is nil before attempting increase

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

* Added Flipkart to Users.md

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

* gofmt controller/metrics/client.go

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

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

* fixes argoproj#2266

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

* typo

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

* test after calling set mirror

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

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

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

* github trigger re-run

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

* 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 <zachaller@users.noreply.github.com>

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

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

* keep port for both mirroring and header routes

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

* github trigger re-run

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

* github trigger re-run

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

* add function comment

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

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>
Signed-off-by: zachaller <zachaller@hotmail.com>
Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>
Signed-off-by: Jesse Antoszyk <22500761+jcantosz@users.noreply.github.com>
Signed-off-by: Simon Ninon <sninon@pagerduty.com>
Signed-off-by: Martin Adler <1208749+EagleIJoe@users.noreply.github.com>
Signed-off-by: Rohit Agrawal <rohit.agrawal@databricks.com>
Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
Signed-off-by: Mike Ball <mikedball@gmail.com>
Signed-off-by: Ravi Hari <ravireliable@gmail.com>
Signed-off-by: Siavash Safi <git@hosted.run>
Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>
Signed-off-by: zachaller <zachaller@users.noreply.github.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Co-authored-by: jaymebrd <jaymeb.email@gmail.com>
Co-authored-by: Zach Aller <zachaller@users.noreply.github.com>
Co-authored-by: Mário Bezerra <mvgmb@cin.ufpe.br>
Co-authored-by: Jesse Antoszyk <22500761+jcantosz@users.noreply.github.com>
Co-authored-by: Simon Ninon <simon@ninon.me>
Co-authored-by: Martin Adler <1208749+EagleIJoe@users.noreply.github.com>
Co-authored-by: Rohit Agrawal <rohit.agrawal@databricks.com>
Co-authored-by: Leonardo Luz Almeida <leoluz@users.noreply.github.com>
Co-authored-by: Mike Ball <mikedball@gmail.com>
Co-authored-by: cskh <huikang209@gmail.com>
Co-authored-by: Hui Kang <hui.kang@salesforce.com>
Co-authored-by: RaviHari <ravireliable@gmail.com>
Co-authored-by: Siavash Safi <git@hosted.run>
Co-authored-by: nikhil1raghav <44281594+nikhil1raghav@users.noreply.github.com>
jandersen-plaid pushed a commit to jandersen-plaid/argo-rollouts that referenced this issue Nov 8, 2022
…j#2268)

* fixes argoproj#2266

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

* typo

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

* test after calling set mirror

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

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

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

* github trigger re-run

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

* 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 <zachaller@users.noreply.github.com>

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

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

* keep port for both mirroring and header routes

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

* github trigger re-run

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

* github trigger re-run

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

* add function comment

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

Signed-off-by: zachaller <zachaller@users.noreply.github.com>
tperdue321 added a commit to rallyhealth/argo-rollouts that referenced this issue 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 <jbird@influxdata.com>

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* feat: add protobuf definitions for InfluxdbMetric

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* feat: add docs for the Influxdb metrics provider

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* feat: add tests for influxdb metrics provider

Signed-off-by: Jayme Bird <jbird@influxdata.com>

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* 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 <jbird@influxdata.com>

* feat: re-run codegen

Signed-off-by: Jayme Bird <jbird@influxdata.com>

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

* feat: Add support for istio traffic mirroring steps

Signed-off-by: zachaller <zachaller@hotmail.com>

* bump e2e timeout

Signed-off-by: zachaller <zachaller@hotmail.com>

* Remove unintended change

Signed-off-by: zachaller <zachaller@hotmail.com>

* Cleaner events

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add docs for mirror and fix up header routing

Signed-off-by: zachaller <zachaller@hotmail.com>

* small doc changes

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add example

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix types and change example

Signed-off-by: zachaller <zachaller@hotmail.com>

* Remove unused type

Signed-off-by: zachaller <zachaller@hotmail.com>

* Docs change

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix PR comments

Signed-off-by: zachaller <zachaller@hotmail.com>

* Check for >=

Signed-off-by: zachaller <zachaller@hotmail.com>

* Remove unused function

Signed-off-by: zachaller <zachaller@hotmail.com>

* codegen

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add better error logging

Signed-off-by: zachaller <zachaller@hotmail.com>

* a few more error msgs

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix comments

Signed-off-by: zachaller <zachaller@hotmail.com>

* typo

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix logic error

Signed-off-by: zachaller <zachaller@hotmail.com>

* redo header logic

Signed-off-by: zachaller <zachaller@hotmail.com>

* cleanup

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* cleanup routes when promiting with last step being a pause

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix bug with promote and last step is a pause

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix typo

Signed-off-by: zachaller <zachaller@hotmail.com>

* chore: improve openapi schema (argoproj#2081)

* feat: include all CRDs to the OpenAPI schema

Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>

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

Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>

* chore: generate OpenAPI schema

Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>

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

Signed-off-by: Jesse Antoszyk <22500761+jcantosz@users.noreply.github.com>

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

Signed-off-by: Simon Ninon <sninon@pagerduty.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* chore: upgrade deps (argoproj#2136)

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: Martin Adler <1208749+EagleIJoe@users.noreply.github.com>

* 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 <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* lint

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add new test for ShouldVerifyWeight

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix logic

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix up review comments

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix bad merge

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix test

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix test

Signed-off-by: zachaller <zachaller@hotmail.com>

* Clearer function name

Signed-off-by: zachaller <zachaller@hotmail.com>

* Clean up if logic

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* Add test

Signed-off-by: zachaller <zachaller@hotmail.com>

* More tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* back off deps updates

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix dep change

Signed-off-by: zachaller <zachaller@hotmail.com>

* upgrade prom deps for new features

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix deps

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: Rohit Agrawal <rohit.agrawal@databricks.com>

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

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

* 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 <mikedball@gmail.com>

* build trigger

Signed-off-by: Mike Ball <mikedball@gmail.com>

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

Signed-off-by: Hui Kang <hui.kang@salesforce.com>

Co-authored-by: Hui Kang <hui.kang@salesforce.com>

* chore: Upgrade golang (argoproj#2160)

* Upgrade golang

Signed-off-by: zachaller <zachaller@hotmail.com>

* upgrade golang to 1.18 for e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix deps

Signed-off-by: zachaller <zachaller@hotmail.com>

* Update build action

Signed-off-by: zachaller <zachaller@hotmail.com>

* Upgrade push action

Signed-off-by: zachaller <zachaller@hotmail.com>

* Update docker file

Signed-off-by: zachaller <zachaller@hotmail.com>

* Bump golang lint to match

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix go.mod

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <ravireliable@gmail.com>

* fix: controller schema linting

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* 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 <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* turn path.Clean into var

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* fix unit tests

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* possible fix for e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* unit test for complete function

Signed-off-by: zachaller <zachaller@hotmail.com>

* small cleanup and changes to not check generation

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit test and proper behavior

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* rename and fix one unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* add seperate test for TestRolloutComplete

Signed-off-by: zachaller <zachaller@hotmail.com>

* renames

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* Set Completed to false

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add event

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* refactor

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix all but one unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix last unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* lint

Signed-off-by: zachaller <zachaller@hotmail.com>

* cleanup

Signed-off-by: zachaller <zachaller@hotmail.com>

* Rename

Signed-off-by: zachaller <zachaller@hotmail.com>

* More renames

Signed-off-by: zachaller <zachaller@hotmail.com>

* small comment change

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <git@hosted.run>

Signed-off-by: Siavash Safi <git@hosted.run>

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

* fix: enable notifications without when condition

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* fix: use trigger action item from the list

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

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

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* fix: linting

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* Add test case

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

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

* Add roundtripper to kubeconfig before creating kubeclient

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

* Check if k8sRequestsCount is nil before attempting increase

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

* Added Flipkart to Users.md

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

* gofmt controller/metrics/client.go

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

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

* fixes argoproj#2266

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

* typo

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

* test after calling set mirror

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

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

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

* github trigger re-run

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

* 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 <zachaller@users.noreply.github.com>

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

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

* keep port for both mirroring and header routes

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

* github trigger re-run

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

* github trigger re-run

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

* add function comment

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

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>
Signed-off-by: zachaller <zachaller@hotmail.com>
Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>
Signed-off-by: Jesse Antoszyk <22500761+jcantosz@users.noreply.github.com>
Signed-off-by: Simon Ninon <sninon@pagerduty.com>
Signed-off-by: Martin Adler <1208749+EagleIJoe@users.noreply.github.com>
Signed-off-by: Rohit Agrawal <rohit.agrawal@databricks.com>
Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
Signed-off-by: Mike Ball <mikedball@gmail.com>
Signed-off-by: Ravi Hari <ravireliable@gmail.com>
Signed-off-by: Siavash Safi <git@hosted.run>
Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>
Signed-off-by: zachaller <zachaller@users.noreply.github.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Co-authored-by: jaymebrd <jaymeb.email@gmail.com>
Co-authored-by: Zach Aller <zachaller@users.noreply.github.com>
Co-authored-by: Mário Bezerra <mvgmb@cin.ufpe.br>
Co-authored-by: Jesse Antoszyk <22500761+jcantosz@users.noreply.github.com>
Co-authored-by: Simon Ninon <simon@ninon.me>
Co-authored-by: Martin Adler <1208749+EagleIJoe@users.noreply.github.com>
Co-authored-by: Rohit Agrawal <rohit.agrawal@databricks.com>
Co-authored-by: Leonardo Luz Almeida <leoluz@users.noreply.github.com>
Co-authored-by: Mike Ball <mikedball@gmail.com>
Co-authored-by: cskh <huikang209@gmail.com>
Co-authored-by: Hui Kang <hui.kang@salesforce.com>
Co-authored-by: RaviHari <ravireliable@gmail.com>
Co-authored-by: Siavash Safi <git@hosted.run>
Co-authored-by: nikhil1raghav <44281594+nikhil1raghav@users.noreply.github.com>
tperdue321 added a commit to rallyhealth/argo-rollouts that referenced this issue 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 <jbird@influxdata.com>

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* feat: add protobuf definitions for InfluxdbMetric

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* feat: add docs for the Influxdb metrics provider

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* feat: add tests for influxdb metrics provider

Signed-off-by: Jayme Bird <jbird@influxdata.com>

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* 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 <jbird@influxdata.com>

* feat: re-run codegen

Signed-off-by: Jayme Bird <jbird@influxdata.com>

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

* feat: Add support for istio traffic mirroring steps

Signed-off-by: zachaller <zachaller@hotmail.com>

* bump e2e timeout

Signed-off-by: zachaller <zachaller@hotmail.com>

* Remove unintended change

Signed-off-by: zachaller <zachaller@hotmail.com>

* Cleaner events

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add docs for mirror and fix up header routing

Signed-off-by: zachaller <zachaller@hotmail.com>

* small doc changes

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add example

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix types and change example

Signed-off-by: zachaller <zachaller@hotmail.com>

* Remove unused type

Signed-off-by: zachaller <zachaller@hotmail.com>

* Docs change

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix PR comments

Signed-off-by: zachaller <zachaller@hotmail.com>

* Check for >=

Signed-off-by: zachaller <zachaller@hotmail.com>

* Remove unused function

Signed-off-by: zachaller <zachaller@hotmail.com>

* codegen

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add better error logging

Signed-off-by: zachaller <zachaller@hotmail.com>

* a few more error msgs

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix comments

Signed-off-by: zachaller <zachaller@hotmail.com>

* typo

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix logic error

Signed-off-by: zachaller <zachaller@hotmail.com>

* redo header logic

Signed-off-by: zachaller <zachaller@hotmail.com>

* cleanup

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* cleanup routes when promiting with last step being a pause

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix bug with promote and last step is a pause

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix typo

Signed-off-by: zachaller <zachaller@hotmail.com>

* chore: improve openapi schema (argoproj#2081)

* feat: include all CRDs to the OpenAPI schema

Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>

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

Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>

* chore: generate OpenAPI schema

Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>

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

Signed-off-by: Jesse Antoszyk <22500761+jcantosz@users.noreply.github.com>

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

Signed-off-by: Simon Ninon <sninon@pagerduty.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* chore: upgrade deps (argoproj#2136)

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: Martin Adler <1208749+EagleIJoe@users.noreply.github.com>

* 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 <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* lint

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add new test for ShouldVerifyWeight

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix logic

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix up review comments

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix bad merge

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix test

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix test

Signed-off-by: zachaller <zachaller@hotmail.com>

* Clearer function name

Signed-off-by: zachaller <zachaller@hotmail.com>

* Clean up if logic

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* Add test

Signed-off-by: zachaller <zachaller@hotmail.com>

* More tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* back off deps updates

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix dep change

Signed-off-by: zachaller <zachaller@hotmail.com>

* upgrade prom deps for new features

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix deps

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: Rohit Agrawal <rohit.agrawal@databricks.com>

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

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

* 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 <mikedball@gmail.com>

* build trigger

Signed-off-by: Mike Ball <mikedball@gmail.com>

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

Signed-off-by: Hui Kang <hui.kang@salesforce.com>

Co-authored-by: Hui Kang <hui.kang@salesforce.com>

* chore: Upgrade golang (argoproj#2160)

* Upgrade golang

Signed-off-by: zachaller <zachaller@hotmail.com>

* upgrade golang to 1.18 for e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix deps

Signed-off-by: zachaller <zachaller@hotmail.com>

* Update build action

Signed-off-by: zachaller <zachaller@hotmail.com>

* Upgrade push action

Signed-off-by: zachaller <zachaller@hotmail.com>

* Update docker file

Signed-off-by: zachaller <zachaller@hotmail.com>

* Bump golang lint to match

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix go.mod

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <ravireliable@gmail.com>

* fix: controller schema linting

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* 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 <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* turn path.Clean into var

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* fix unit tests

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* possible fix for e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* unit test for complete function

Signed-off-by: zachaller <zachaller@hotmail.com>

* small cleanup and changes to not check generation

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit test and proper behavior

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* rename and fix one unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* add seperate test for TestRolloutComplete

Signed-off-by: zachaller <zachaller@hotmail.com>

* renames

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* Set Completed to false

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add event

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* refactor

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix all but one unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix last unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* lint

Signed-off-by: zachaller <zachaller@hotmail.com>

* cleanup

Signed-off-by: zachaller <zachaller@hotmail.com>

* Rename

Signed-off-by: zachaller <zachaller@hotmail.com>

* More renames

Signed-off-by: zachaller <zachaller@hotmail.com>

* small comment change

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <git@hosted.run>

Signed-off-by: Siavash Safi <git@hosted.run>

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

* fix: enable notifications without when condition

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* fix: use trigger action item from the list

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

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

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* fix: linting

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* Add test case

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

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

* Add roundtripper to kubeconfig before creating kubeclient

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

* Check if k8sRequestsCount is nil before attempting increase

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

* Added Flipkart to Users.md

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

* gofmt controller/metrics/client.go

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

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

* fixes argoproj#2266

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

* typo

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

* test after calling set mirror

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

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

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

* github trigger re-run

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

* 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 <zachaller@users.noreply.github.com>

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

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

* keep port for both mirroring and header routes

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

* github trigger re-run

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

* github trigger re-run

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

* add function comment

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

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>
Signed-off-by: zachaller <zachaller@hotmail.com>
Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>
Signed-off-by: Jesse Antoszyk <22500761+jcantosz@users.noreply.github.com>
Signed-off-by: Simon Ninon <sninon@pagerduty.com>
Signed-off-by: Martin Adler <1208749+EagleIJoe@users.noreply.github.com>
Signed-off-by: Rohit Agrawal <rohit.agrawal@databricks.com>
Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
Signed-off-by: Mike Ball <mikedball@gmail.com>
Signed-off-by: Ravi Hari <ravireliable@gmail.com>
Signed-off-by: Siavash Safi <git@hosted.run>
Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>
Signed-off-by: zachaller <zachaller@users.noreply.github.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Co-authored-by: jaymebrd <jaymeb.email@gmail.com>
Co-authored-by: Zach Aller <zachaller@users.noreply.github.com>
Co-authored-by: Mário Bezerra <mvgmb@cin.ufpe.br>
Co-authored-by: Jesse Antoszyk <22500761+jcantosz@users.noreply.github.com>
Co-authored-by: Simon Ninon <simon@ninon.me>
Co-authored-by: Martin Adler <1208749+EagleIJoe@users.noreply.github.com>
Co-authored-by: Rohit Agrawal <rohit.agrawal@databricks.com>
Co-authored-by: Leonardo Luz Almeida <leoluz@users.noreply.github.com>
Co-authored-by: Mike Ball <mikedball@gmail.com>
Co-authored-by: cskh <huikang209@gmail.com>
Co-authored-by: Hui Kang <hui.kang@salesforce.com>
Co-authored-by: RaviHari <ravireliable@gmail.com>
Co-authored-by: Siavash Safi <git@hosted.run>
Co-authored-by: nikhil1raghav <44281594+nikhil1raghav@users.noreply.github.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
tperdue321 added a commit to rallyhealth/argo-rollouts that referenced this issue 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 <jbird@influxdata.com>

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* feat: add protobuf definitions for InfluxdbMetric

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* feat: add docs for the Influxdb metrics provider

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* feat: add tests for influxdb metrics provider

Signed-off-by: Jayme Bird <jbird@influxdata.com>

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>

* 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 <jbird@influxdata.com>

* feat: re-run codegen

Signed-off-by: Jayme Bird <jbird@influxdata.com>

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

* feat: Add support for istio traffic mirroring steps

Signed-off-by: zachaller <zachaller@hotmail.com>

* bump e2e timeout

Signed-off-by: zachaller <zachaller@hotmail.com>

* Remove unintended change

Signed-off-by: zachaller <zachaller@hotmail.com>

* Cleaner events

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add docs for mirror and fix up header routing

Signed-off-by: zachaller <zachaller@hotmail.com>

* small doc changes

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add example

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix types and change example

Signed-off-by: zachaller <zachaller@hotmail.com>

* Remove unused type

Signed-off-by: zachaller <zachaller@hotmail.com>

* Docs change

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix PR comments

Signed-off-by: zachaller <zachaller@hotmail.com>

* Check for >=

Signed-off-by: zachaller <zachaller@hotmail.com>

* Remove unused function

Signed-off-by: zachaller <zachaller@hotmail.com>

* codegen

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add better error logging

Signed-off-by: zachaller <zachaller@hotmail.com>

* a few more error msgs

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix comments

Signed-off-by: zachaller <zachaller@hotmail.com>

* typo

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix logic error

Signed-off-by: zachaller <zachaller@hotmail.com>

* redo header logic

Signed-off-by: zachaller <zachaller@hotmail.com>

* cleanup

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* cleanup routes when promiting with last step being a pause

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix bug with promote and last step is a pause

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix typo

Signed-off-by: zachaller <zachaller@hotmail.com>

* chore: improve openapi schema (argoproj#2081)

* feat: include all CRDs to the OpenAPI schema

Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>

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

Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>

* chore: generate OpenAPI schema

Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>

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

Signed-off-by: Jesse Antoszyk <22500761+jcantosz@users.noreply.github.com>

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

Signed-off-by: Simon Ninon <sninon@pagerduty.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* chore: upgrade deps (argoproj#2136)

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: Martin Adler <1208749+EagleIJoe@users.noreply.github.com>

* 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 <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* lint

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add new test for ShouldVerifyWeight

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix logic

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix up review comments

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix bad merge

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix test

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix test

Signed-off-by: zachaller <zachaller@hotmail.com>

* Clearer function name

Signed-off-by: zachaller <zachaller@hotmail.com>

* Clean up if logic

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* Add test

Signed-off-by: zachaller <zachaller@hotmail.com>

* More tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* back off deps updates

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix dep change

Signed-off-by: zachaller <zachaller@hotmail.com>

* upgrade prom deps for new features

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix deps

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: Rohit Agrawal <rohit.agrawal@databricks.com>

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

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

* 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 <mikedball@gmail.com>

* build trigger

Signed-off-by: Mike Ball <mikedball@gmail.com>

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

Signed-off-by: Hui Kang <hui.kang@salesforce.com>

Co-authored-by: Hui Kang <hui.kang@salesforce.com>

* chore: Upgrade golang (argoproj#2160)

* Upgrade golang

Signed-off-by: zachaller <zachaller@hotmail.com>

* upgrade golang to 1.18 for e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix deps

Signed-off-by: zachaller <zachaller@hotmail.com>

* Update build action

Signed-off-by: zachaller <zachaller@hotmail.com>

* Upgrade push action

Signed-off-by: zachaller <zachaller@hotmail.com>

* Update docker file

Signed-off-by: zachaller <zachaller@hotmail.com>

* Bump golang lint to match

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix go.mod

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <ravireliable@gmail.com>

* fix: controller schema linting

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* docs: comment the details on the change

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* 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 <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* turn path.Clean into var

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* fix unit tests

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* possible fix for e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* unit test for complete function

Signed-off-by: zachaller <zachaller@hotmail.com>

* small cleanup and changes to not check generation

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit test and proper behavior

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* rename and fix one unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit tests

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* add seperate test for TestRolloutComplete

Signed-off-by: zachaller <zachaller@hotmail.com>

* renames

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* Set Completed to false

Signed-off-by: zachaller <zachaller@hotmail.com>

* Add event

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix e2e

Signed-off-by: zachaller <zachaller@hotmail.com>

* refactor

Signed-off-by: zachaller <zachaller@hotmail.com>

* Fix all but one unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* fix last unit test

Signed-off-by: zachaller <zachaller@hotmail.com>

* lint

Signed-off-by: zachaller <zachaller@hotmail.com>

* cleanup

Signed-off-by: zachaller <zachaller@hotmail.com>

* Rename

Signed-off-by: zachaller <zachaller@hotmail.com>

* More renames

Signed-off-by: zachaller <zachaller@hotmail.com>

* small comment change

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <git@hosted.run>

Signed-off-by: Siavash Safi <git@hosted.run>

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

* fix: enable notifications without when condition

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* fix: use trigger action item from the list

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

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

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

* fix: linting

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

Signed-off-by: Ravi Hari <ravireliable@gmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

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

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

* 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 <zachaller@hotmail.com>

* Add test case

Signed-off-by: zachaller <zachaller@hotmail.com>

Signed-off-by: zachaller <zachaller@hotmail.com>

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

* Add roundtripper to kubeconfig before creating kubeclient

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

* Check if k8sRequestsCount is nil before attempting increase

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

* Added Flipkart to Users.md

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

* gofmt controller/metrics/client.go

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>

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

* fixes argoproj#2266

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

* typo

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

* test after calling set mirror

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

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

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

* github trigger re-run

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

* 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 <zachaller@users.noreply.github.com>

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

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

* keep port for both mirroring and header routes

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

* github trigger re-run

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

* github trigger re-run

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

* add function comment

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

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

Signed-off-by: Jayme Bird <jbird@influxdata.com>
Signed-off-by: zachaller <zachaller@hotmail.com>
Signed-off-by: Mário Bezerra <mario.bezerra@incognia.com>
Signed-off-by: Jesse Antoszyk <22500761+jcantosz@users.noreply.github.com>
Signed-off-by: Simon Ninon <sninon@pagerduty.com>
Signed-off-by: Martin Adler <1208749+EagleIJoe@users.noreply.github.com>
Signed-off-by: Rohit Agrawal <rohit.agrawal@databricks.com>
Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>
Signed-off-by: Mike Ball <mikedball@gmail.com>
Signed-off-by: Ravi Hari <ravireliable@gmail.com>
Signed-off-by: Siavash Safi <git@hosted.run>
Signed-off-by: Nikhil <nikhil1.raghav@gmail.com>
Signed-off-by: zachaller <zachaller@users.noreply.github.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Co-authored-by: jaymebrd <jaymeb.email@gmail.com>
Co-authored-by: Zach Aller <zachaller@users.noreply.github.com>
Co-authored-by: Mário Bezerra <mvgmb@cin.ufpe.br>
Co-authored-by: Jesse Antoszyk <22500761+jcantosz@users.noreply.github.com>
Co-authored-by: Simon Ninon <simon@ninon.me>
Co-authored-by: Martin Adler <1208749+EagleIJoe@users.noreply.github.com>
Co-authored-by: Rohit Agrawal <rohit.agrawal@databricks.com>
Co-authored-by: Leonardo Luz Almeida <leoluz@users.noreply.github.com>
Co-authored-by: Mike Ball <mikedball@gmail.com>
Co-authored-by: cskh <huikang209@gmail.com>
Co-authored-by: Hui Kang <hui.kang@salesforce.com>
Co-authored-by: RaviHari <ravireliable@gmail.com>
Co-authored-by: Siavash Safi <git@hosted.run>
Co-authored-by: nikhil1raghav <44281594+nikhil1raghav@users.noreply.github.com>
Signed-off-by: Travis Perdue <travis.perdue@rallyhealth.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants