Skip to content

Conversation

@gcs278
Copy link
Contributor

@gcs278 gcs278 commented Sep 25, 2023

The router clears route admitted status for routes no longer selected by route or namespace labels. This is achieved by modifying the handling of Delete events across the plugins. It also introduces the use of the Error event to identify rejected routes, instead of relying solely on the Delete event. Additionally, the Status plugin now utilizes these redefined Delete events to clear route statuses.

This is a simplified (and arguably more elegant) redesign of openshift/cluster-ingress-operator#849, which added a new control loop in the ingress operator. This control loop watched every route and namespace update, attempting to detect label changes. If a namespace label changed, it would need to reconcile every route in that namespace.

@openshift-ci openshift-ci bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Sep 25, 2023
@openshift-ci-robot openshift-ci-robot added jira/severity-moderate Referenced Jira bug's severity is moderate for the branch this PR is targeting. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. labels Sep 25, 2023
@openshift-ci-robot
Copy link
Contributor

@gcs278: This pull request references Jira Issue OCPBUGS-1689, which is invalid:

  • expected the bug to target the "4.15.0" version, but it targets "4.14.0" instead

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

The bug has been updated to refer to the pull request using the external bug tracker.

Details

In response to this:

WIP: Having the router unadmit routes on namespace and router label changes. Simplified (and possibly more elegant) version of openshift/cluster-ingress-operator#849 which adds a new control loop in the ingress operator.

Needs lots of work, but currently is POC.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@openshift-ci openshift-ci bot requested review from candita and frobware September 25, 2023 22:53
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Sep 25, 2023

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please ask for approval from gcs278. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

The router clears route admitted status for routes no longer selected
by route or namespace labels. This is achieved by modifying the handling
of Delete events across the plugins. It also introduces the use of the
Error event to identify rejected routes, instead of relying solely on
the Delete event. Additionally, the Status plugin now utilizes these
redefined Delete events to clear route statuses.
@gcs278 gcs278 force-pushed the route-status-unadmitted branch from f9dc05c to 732a954 Compare September 28, 2023 00:34
@gcs278 gcs278 changed the title [WIP] OCPBUGS-1689: Router unadmit on label changes OCPBUGS-1689: Router clear admitted status on label changes Sep 28, 2023
@openshift-ci openshift-ci bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Sep 28, 2023
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Sep 28, 2023

@gcs278: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/unit 732a954 link true /test unit

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@gcs278
Copy link
Contributor Author

gcs278 commented Sep 28, 2023

/hold
unit test is failing

@openshift-ci openshift-ci bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Sep 28, 2023
@candita
Copy link
Contributor

candita commented Oct 4, 2023

/assign @Miciah

@openshift-bot
Copy link
Contributor

Issues go stale after 90d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle stale

@openshift-ci openshift-ci bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jan 3, 2024
@openshift-merge-robot openshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 3, 2024
@openshift-merge-robot
Copy link
Contributor

PR needs rebase.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@gcs278 gcs278 changed the title OCPBUGS-1689: Router clear admitted status on label changes [WIP] OCPBUGS-1689: Router clear admitted status on label changes Jan 3, 2024
@openshift-ci openshift-ci bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jan 3, 2024
@gcs278
Copy link
Contributor Author

gcs278 commented Jan 3, 2024

Needs rebase and understanding the unit test failure

continue
}

// If condition is nil, remove the ingress condition.
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This should be targeting a specific condition, not removing the entire ingress condition, unless perhaps there isn't any conditions left.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I'll take that back. When a router unadmits a route, we should just clear the whole status.ingress object. So this is mostly fine.

@openshift-bot
Copy link
Contributor

Stale issues rot after 30d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle rotten
/remove-lifecycle stale

@openshift-ci openshift-ci bot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Feb 16, 2024
@openshift-bot
Copy link
Contributor

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen.
Mark the issue as fresh by commenting /remove-lifecycle rotten.
Exclude this issue from closing again by commenting /lifecycle frozen.

/close

@openshift-ci openshift-ci bot closed this Mar 17, 2024
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Mar 17, 2024

@openshift-bot: Closed this PR.

Details

In response to this:

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen.
Mark the issue as fresh by commenting /remove-lifecycle rotten.
Exclude this issue from closing again by commenting /lifecycle frozen.

/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@openshift-ci-robot
Copy link
Contributor

@gcs278: This pull request references Jira Issue OCPBUGS-1689. The bug has been updated to no longer refer to the pull request using the external bug tracker. All external bug links have been closed. The bug has been moved to the NEW state.

Details

In response to this:

The router clears route admitted status for routes no longer selected by route or namespace labels. This is achieved by modifying the handling of Delete events across the plugins. It also introduces the use of the Error event to identify rejected routes, instead of relying solely on the Delete event. Additionally, the Status plugin now utilizes these redefined Delete events to clear route statuses.

This is a simplified (and arguably more elegant) redesign of openshift/cluster-ingress-operator#849, which added a new control loop in the ingress operator. This control loop watched every route and namespace update, attempting to detect label changes. If a namespace label changed, it would need to reconcile every route in that namespace.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@gcs278
Copy link
Contributor Author

gcs278 commented Mar 18, 2024

/reopen

@openshift-ci openshift-ci bot reopened this Mar 18, 2024
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Mar 18, 2024

@gcs278: Reopened this PR.

Details

In response to this:

/reopen

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@openshift-ci-robot openshift-ci-robot added jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. and removed jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. labels Mar 18, 2024
@openshift-ci-robot
Copy link
Contributor

@gcs278: This pull request references Jira Issue OCPBUGS-1689, which is valid. The bug has been moved to the POST state.

3 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target version (4.16.0) matches configured target version for branch (4.16.0)
  • bug is in the state New, which is one of the valid states (NEW, ASSIGNED, POST)

Requesting review from QA contact:
/cc @ShudiLi

The bug has been updated to refer to the pull request using the external bug tracker.

Details

In response to this:

The router clears route admitted status for routes no longer selected by route or namespace labels. This is achieved by modifying the handling of Delete events across the plugins. It also introduces the use of the Error event to identify rejected routes, instead of relying solely on the Delete event. Additionally, the Status plugin now utilizes these redefined Delete events to clear route statuses.

This is a simplified (and arguably more elegant) redesign of openshift/cluster-ingress-operator#849, which added a new control loop in the ingress operator. This control loop watched every route and namespace update, attempting to detect label changes. If a namespace label changed, it would need to reconcile every route in that namespace.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci openshift-ci bot requested a review from ShudiLi March 18, 2024 06:29
@openshift-bot
Copy link
Contributor

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen.
Mark the issue as fresh by commenting /remove-lifecycle rotten.
Exclude this issue from closing again by commenting /lifecycle frozen.

/close

@openshift-ci openshift-ci bot closed this Apr 17, 2024
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Apr 17, 2024

@openshift-bot: Closed this PR.

Details

In response to this:

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen.
Mark the issue as fresh by commenting /remove-lifecycle rotten.
Exclude this issue from closing again by commenting /lifecycle frozen.

/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@openshift-ci-robot
Copy link
Contributor

@gcs278: This pull request references Jira Issue OCPBUGS-1689. The bug has been updated to no longer refer to the pull request using the external bug tracker. All external bug links have been closed. The bug has been moved to the NEW state.

Details

In response to this:

The router clears route admitted status for routes no longer selected by route or namespace labels. This is achieved by modifying the handling of Delete events across the plugins. It also introduces the use of the Error event to identify rejected routes, instead of relying solely on the Delete event. Additionally, the Status plugin now utilizes these redefined Delete events to clear route statuses.

This is a simplified (and arguably more elegant) redesign of openshift/cluster-ingress-operator#849, which added a new control loop in the ingress operator. This control loop watched every route and namespace update, attempting to detect label changes. If a namespace label changed, it would need to reconcile every route in that namespace.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. jira/severity-moderate Referenced Jira bug's severity is moderate for the branch this PR is targeting. jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants