Skip to content

Conversation

@stokkie90
Copy link

@stokkie90 stokkie90 commented Dec 4, 2025

  • Added support for automatic labeling of Gateway API routes during canary deployments to prevent GitOps drift.
  • Updated documentation to reflect new features, including the ability to customize or disable the in-progress label.
  • Improved tests to verify the addition and removal of the in-progress label for HTTP, gRPC, TCP, and TLS routes.

This change enhances the integration with GitOps tools like Argo CD, ensuring smoother deployments and better resource management.

  labels:
    airalo.com/canary: 'true'
    app.kubernetes.io/component: app
    app.kubernetes.io/instance: plx-argo-rollouts-test-pr-1
    app.kubernetes.io/managed-by: Helm
    app.kubernetes.io/name: plx-argo-rollouts-test-pr-1
    app.kubernetes.io/version: 1.0.0
    argocd.argoproj.io/instance: plx-argo-rollouts-test-pr-1
    helm.sh/chart: generic-0.5.14-alpha0
    rollouts.argoproj.io/gatewayapi-canary: in-progress  <------- Will be removed once weigt is set to 100/max
  name: plx-argo-rollouts-test-pr-1
  namespace: plx-argo-rollouts-test

- Added support for automatic labeling of Gateway API routes during canary deployments to prevent GitOps drift.
- Updated documentation to reflect new features, including the ability to customize or disable the in-progress label.
- Improved tests to verify the addition and removal of the in-progress label for HTTP, gRPC, TCP, and TLS routes.

This change enhances the integration with GitOps tools like Argo CD, ensuring smoother deployments and better resource management.

Signed-off-by: rick.stokkingreef <rick.stokkingreef@airalo.com>
Signed-off-by: rick.stokkingreef <rick.stokkingreef@airalo.com>
Signed-off-by: rick.stokkingreef <rick.stokkingreef@airalo.com>
@stokkie90 stokkie90 marked this pull request as ready for review December 4, 2025 10:44
Signed-off-by: rick.stokkingreef <rick.stokkingreef@airalo.com>
Signed-off-by: rick.stokkingreef <rick.stokkingreef@airalo.com>
Signed-off-by: rick.stokkingreef <rick.stokkingreef@airalo.com>
Signed-off-by: rick.stokkingreef <rick.stokkingreef@airalo.com>
Signed-off-by: rick.stokkingreef <rick.stokkingreef@airalo.com>
Copy link
Collaborator

@kostis-codefresh kostis-codefresh left a comment

Choose a reason for hiding this comment

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

Many thanks for this.

Can you confirm please that the flaky test suite works ok locally in your workstation?

waitCondition.ResourceMatch(
resourcesMap[HTTP_ROUTE_KEY],
getMatchHTTPRouteFetcher(t, FIRST_CANARY_ROUTE_WEIGHT),
getMatchHTTPRouteWithLabelFetcher(t, FIRST_CANARY_ROUTE_WEIGHT, false),
Copy link
Collaborator

Choose a reason for hiding this comment

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

Maybe leave the http route test as is?

And then create a brand new test for labels? Is the test behavior unchanged in all other ways?


sleep 10

kubectl get gatewayclasses traefik
Copy link
Collaborator

Choose a reason for hiding this comment

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

Could you explain why this is needed here? Why do we check twice the same command?

Did something change in the latest Traefik version and it is slower to start up?

Copy link
Author

Choose a reason for hiding this comment

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

I noticed the Condition/Status was not Accepted right away, when this script was triggered (at least locally) a wait for 10 seconds should make it a bit more stable. Migth be related to the updates of the charts and versions

Signed-off-by: rick.stokkingreef <rick.stokkingreef@airalo.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants