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

OCPBUGS-24535: pkg/payload/precondition/clusterversion/rollback: Allow previous version within z-stream #996

Conversation

wking
Copy link
Member

@wking wking commented Nov 16, 2023

From OTA-553, Lala, Scott, and Subin all agreed that rollbacks to the cluster's previous release should not be blocked, as long as the previous and current version had the same major.minor version (i.e. "within a z-stream", using x.y.z naming for major.minor.patch). We agreed to ignore whether the previous history entry is Completed or Partial, expecting that most users who are interested in rolling back will make that decision at the first sign of trouble, and not after attempting a few roll-forward retargets.

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Nov 16, 2023
@openshift-ci-robot
Copy link
Contributor

openshift-ci-robot commented Nov 16, 2023

@wking: This pull request references OTA-488 which is a valid jira issue.

In response to this:

From OTA-553, Lala, Scott, and Subin all agreed that rollbacks to the cluster's previous release should not be blocked, as long as the previous and current version had the same major.minor version (i.e. "within a z-stream", using x.y.z naming for major.minor.patch). We agreed to ignore whether the previous history entry is Completed or Partial, expecting that most users who are interested in rolling back will make that decision at the first sign of trouble, and not after attempting a few roll-forward retargets.

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 added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Nov 16, 2023
@wking wking force-pushed the allow-rollbacks-to-most-recently-previous-version branch from 309d16a to 633c853 Compare November 16, 2023 04:17
…ion within z-stream

From [1], Lala, Scott, and Subin all agreed that rollbacks to the
cluster's previous release should not be blocked, as long as the
previous and current version had the same major.minor version
(i.e. "within a z-stream", using x.y.z naming for major.minor.patch).
We agreed to ignore whether the previous history entry is Completed or
Partial, expecting that most users who are interested in rolling back
will make that decision at the first sign of trouble, and not after
attempting a few roll-forward retargets.

[1]: https://issues.redhat.com/browse/OTA-553
@wking wking force-pushed the allow-rollbacks-to-most-recently-previous-version branch from 633c853 to 12fdd04 Compare November 16, 2023 17:11
Copy link
Member

@petr-muller petr-muller left a comment

Choose a reason for hiding this comment

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

LGTM

/test e2e-hypershift

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Nov 24, 2023
Copy link
Contributor

openshift-ci bot commented Nov 24, 2023

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: petr-muller, wking

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

The pull request process is described here

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

@petr-muller
Copy link
Member

/test unit

@shellyyang1989
Copy link
Contributor

cc

@wking wking changed the title OTA-488: pkg/payload/precondition/clusterversion/rollback: Allow previous version within z-stream OCPBUGS-24535: pkg/payload/precondition/clusterversion/rollback: Allow previous version within z-stream Dec 6, 2023
@openshift-ci-robot
Copy link
Contributor

@wking: This pull request references Jira Issue OCPBUGS-24535, which is valid.

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

Requesting review from QA contact:
/cc @jiajliu

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

In response to this:

From OTA-553, Lala, Scott, and Subin all agreed that rollbacks to the cluster's previous release should not be blocked, as long as the previous and current version had the same major.minor version (i.e. "within a z-stream", using x.y.z naming for major.minor.patch). We agreed to ignore whether the previous history entry is Completed or Partial, expecting that most users who are interested in rolling back will make that decision at the first sign of trouble, and not after attempting a few roll-forward retargets.

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 the jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. label Dec 6, 2023
@openshift-ci openshift-ci bot requested a review from jiajliu December 6, 2023 20:02
@openshift-bot
Copy link
Contributor

/jira refresh

The requirements for Jira bugs have changed (Jira issues linked to PRs on main branch need to target different OCP), recalculating validity.

@LalatenduMohanty
Copy link
Member

/label no_qe As it would be easier to test this post merge

@LalatenduMohanty
Copy link
Member

/label no-qe

Copy link
Contributor

openshift-ci bot commented Dec 15, 2023

@LalatenduMohanty: The label(s) /label no-qe cannot be applied. These labels are supported: acknowledge-critical-fixes-only, platform/aws, platform/azure, platform/baremetal, platform/google, platform/libvirt, platform/openstack, ga, tide/merge-method-merge, tide/merge-method-rebase, tide/merge-method-squash, px-approved, docs-approved, qe-approved, downstream-change-needed, rebase/manual, approved, backport-risk-assessed, bugzilla/valid-bug, cherry-pick-approved, jira/valid-bug, staff-eng-approved. Is this label configured under labels -> additional_labels or labels -> restricted_labels in plugin.yaml?

In response to this:

/label no-qe

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.

@JianLi-RH
Copy link

/label no-qe

Copy link
Contributor

openshift-ci bot commented Dec 15, 2023

@JianLi-RH: The label(s) /label no-qe cannot be applied. These labels are supported: acknowledge-critical-fixes-only, platform/aws, platform/azure, platform/baremetal, platform/google, platform/libvirt, platform/openstack, ga, tide/merge-method-merge, tide/merge-method-rebase, tide/merge-method-squash, px-approved, docs-approved, qe-approved, downstream-change-needed, rebase/manual, approved, backport-risk-assessed, bugzilla/valid-bug, cherry-pick-approved, jira/valid-bug, staff-eng-approved. Is this label configured under labels -> additional_labels or labels -> restricted_labels in plugin.yaml?

In response to this:

/label no-qe

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.

@wking
Copy link
Member Author

wking commented Dec 19, 2023

Trying again now that openshift/release#46849 has merged and updated the ConfigMap:

/label no-qe

@openshift-ci openshift-ci bot added the no-qe Allows PRs to merge without qe-approved label label Dec 19, 2023
@wking
Copy link
Member Author

wking commented Dec 19, 2023

APIServices_Error::OAuthServerServiceEndpointAccessibleController_EndpointUnavailable::ReadyIngressNodes_NoReadyIngressNodes is unrelated and the code I'm touching is not excercised in non-update jobs like that.

/override ci/prow/e2e-agnostic-ovn

Copy link
Contributor

openshift-ci bot commented Dec 19, 2023

@wking: Overrode contexts on behalf of wking: ci/prow/e2e-agnostic-ovn

In response to this:

APIServices_Error::OAuthServerServiceEndpointAccessibleController_EndpointUnavailable::ReadyIngressNodes_NoReadyIngressNodes is unrelated and the code I'm touching is not excercised in non-update jobs like that.

/override ci/prow/e2e-agnostic-ovn

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.

@wking
Copy link
Member Author

wking commented Dec 19, 2023

dial tcp 10.128.0.59:8443: connect: connection refused event noise is unrelated, and that's all that that run was upset about.

/override ci/prow/e2e-agnostic-ovn-upgrade-into-change

Copy link
Contributor

openshift-ci bot commented Dec 19, 2023

@wking: Overrode contexts on behalf of wking: ci/prow/e2e-agnostic-ovn-upgrade-into-change

In response to this:

dial tcp 10.128.0.59:8443: connect: connection refused event noise is unrelated, and that's all that that run was upset about.

/override ci/prow/e2e-agnostic-ovn-upgrade-into-change

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.

Copy link
Contributor

openshift-ci bot commented Dec 19, 2023

@wking: all tests passed!

Full PR test history. Your PR dashboard.

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.

@openshift-merge-bot openshift-merge-bot bot merged commit baef28d into openshift:master Dec 19, 2023
11 checks passed
@openshift-ci-robot
Copy link
Contributor

@wking: Jira Issue OCPBUGS-24535: All pull requests linked via external trackers have merged:

Jira Issue OCPBUGS-24535 has been moved to the MODIFIED state.

In response to this:

From OTA-553, Lala, Scott, and Subin all agreed that rollbacks to the cluster's previous release should not be blocked, as long as the previous and current version had the same major.minor version (i.e. "within a z-stream", using x.y.z naming for major.minor.patch). We agreed to ignore whether the previous history entry is Completed or Partial, expecting that most users who are interested in rolling back will make that decision at the first sign of trouble, and not after attempting a few roll-forward retargets.

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.

@wking wking deleted the allow-rollbacks-to-most-recently-previous-version branch December 19, 2023 03:30
@openshift-bot
Copy link
Contributor

[ART PR BUILD NOTIFIER]

This PR has been included in build cluster-version-operator-container-v4.16.0-202312190511.p0.gbaef28d.assembly.stream for distgit cluster-version-operator.
All builds following this will include this PR.

@wking
Copy link
Member Author

wking commented Dec 19, 2023

/cherrypick release-4.15

@openshift-cherrypick-robot

@wking: new pull request created: #1008

In response to this:

/cherrypick release-4.15

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.

wking added a commit to wking/oc that referenced this pull request Dec 19, 2023
The "which release to roll back to?" criteria are matched to
openshift/cluster-version-operator@12fdd0456b
(pkg/payload/precondition/clusterversion/rollback: Allow previous
version within z-stream, 2023-11-16,
openshift/cluster-version-operator#996), where, based on [1], Lala,
Scott, and Subin all agreed that rollbacks to the cluster's previous
release should not be blocked, as long as the previous and current
version had the same major.minor version (i.e. "within a z-stream",
using x.y.z naming for major.minor.patch).  We agreed to ignore
whether the previous history entry is Completed or Partial, expecting
that most users who are interested in rolling back will make that
decision at the first sign of trouble, and not after attempting a few
roll-forward retargets.

I'm currently blocking Progressing!=False from rolling back, to align
with our CI coverage in openshift/release@f4d37e7f87
(ci-operator/config/openshift/release: Use abort-at=100 for
rollback-oldest-supported, 2023-10-31, openshift/release#45115).  We
could lift this restriction if we wanted to allow rollbacks to be
requested from the middle of an in-progress update, but if we do, we'd
probably want to add matching CI to cover that use-case.

The new subcommand is hidden, as Lala requested in [2]'s Description
on 2021-09-22.  I have not put it behind a feature-gate environment
variable in this commit, but that's also an option if we wanted to
make it even less reachable.

[1]: https://issues.redhat.com/browse/OTA-553
[2]: https://issues.redhat.com/browse/OTA-492
wking added a commit to wking/oc that referenced this pull request Dec 19, 2023
The "which release to roll back to?" criteria are matched to
openshift/cluster-version-operator@12fdd0456b
(pkg/payload/precondition/clusterversion/rollback: Allow previous
version within z-stream, 2023-11-16,
openshift/cluster-version-operator#996), where, based on [1], Lala,
Scott, and Subin all agreed that rollbacks to the cluster's previous
release should not be blocked, as long as the previous and current
version had the same major.minor version (i.e. "within a z-stream",
using x.y.z naming for major.minor.patch).  We agreed to ignore
whether the previous history entry is Completed or Partial, expecting
that most users who are interested in rolling back will make that
decision at the first sign of trouble, and not after attempting a few
roll-forward retargets.

I'm currently blocking Progressing!=False from rolling back, to align
with our CI coverage in openshift/release@f4d37e7f87
(ci-operator/config/openshift/release: Use abort-at=100 for
rollback-oldest-supported, 2023-10-31, openshift/release#45115).  We
could lift this restriction if we wanted to allow rollbacks to be
requested from the middle of an in-progress update, but if we do, we'd
probably want to add matching CI to cover that use-case.

The new subcommand is hidden, as Lala requested in [2]'s Description
on 2021-09-22.  I have not put it behind a feature-gate environment
variable in this commit, but that's also an option if we wanted to
make it even less reachable.

[1]: https://issues.redhat.com/browse/OTA-553
[2]: https://issues.redhat.com/browse/OTA-492
wking added a commit to wking/oc that referenced this pull request Dec 19, 2023
The "which release to roll back to?" criteria are matched to
openshift/cluster-version-operator@12fdd0456b
(pkg/payload/precondition/clusterversion/rollback: Allow previous
version within z-stream, 2023-11-16,
openshift/cluster-version-operator#996), where, based on [1], Lala,
Scott, and Subin all agreed that rollbacks to the cluster's previous
release should not be blocked, as long as the previous and current
version had the same major.minor version (i.e. "within a z-stream",
using x.y.z naming for major.minor.patch).  We agreed to ignore
whether the previous history entry is Completed or Partial, expecting
that most users who are interested in rolling back will make that
decision at the first sign of trouble, and not after attempting a few
roll-forward retargets.

I'm currently blocking Progressing!=False from rolling back, to align
with our CI coverage in openshift/release@f4d37e7f87
(ci-operator/config/openshift/release: Use abort-at=100 for
rollback-oldest-supported, 2023-10-31, openshift/release#45115).  We
could lift this restriction if we wanted to allow rollbacks to be
requested from the middle of an in-progress update, but if we do, we'd
probably want to add matching CI to cover that use-case.

The new subcommand is hidden, as Lala requested in [2]'s Description
on 2021-09-22.  I have not put it behind a feature-gate environment
variable in this commit, but that's also an option if we wanted to
make it even less reachable.

[1]: https://issues.redhat.com/browse/OTA-553
[2]: https://issues.redhat.com/browse/OTA-492
wking added a commit to wking/oc that referenced this pull request Dec 21, 2023
The "which release to roll back to?" criteria are matched to
openshift/cluster-version-operator@12fdd0456b
(pkg/payload/precondition/clusterversion/rollback: Allow previous
version within z-stream, 2023-11-16,
openshift/cluster-version-operator#996), where, based on [1], Lala,
Scott, and Subin all agreed that rollbacks to the cluster's previous
release should not be blocked, as long as the previous and current
version had the same major.minor version (i.e. "within a z-stream",
using x.y.z naming for major.minor.patch).  We agreed to ignore
whether the previous history entry is Completed or Partial, expecting
that most users who are interested in rolling back will make that
decision at the first sign of trouble, and not after attempting a few
roll-forward retargets.

I'm currently blocking Progressing!=False from rolling back, to align
with our CI coverage in openshift/release@f4d37e7f87
(ci-operator/config/openshift/release: Use abort-at=100 for
rollback-oldest-supported, 2023-10-31, openshift/release#45115).  We
could lift this restriction if we wanted to allow rollbacks to be
requested from the middle of an in-progress update, but if we do, we'd
probably want to add matching CI to cover that use-case.

The new subcommand is hidden, as Lala requested in [2]'s Description
on 2021-09-22.  I have not put it behind a feature-gate environment
variable in this commit, but that's also an option if we wanted to
make it even less reachable.

[1]: https://issues.redhat.com/browse/OTA-553
[2]: https://issues.redhat.com/browse/OTA-492
wking added a commit to wking/oc that referenced this pull request Dec 21, 2023
The "which release to roll back to?" criteria are matched to
openshift/cluster-version-operator@12fdd0456b
(pkg/payload/precondition/clusterversion/rollback: Allow previous
version within z-stream, 2023-11-16,
openshift/cluster-version-operator#996), where, based on [1], Lala,
Scott, and Subin all agreed that rollbacks to the cluster's previous
release should not be blocked, as long as the previous and current
version had the same major.minor version (i.e. "within a z-stream",
using x.y.z naming for major.minor.patch).  We agreed to ignore
whether the previous history entry is Completed or Partial, expecting
that most users who are interested in rolling back will make that
decision at the first sign of trouble, and not after attempting a few
roll-forward retargets.

I'm currently blocking Progressing!=False from rolling back, to align
with our CI coverage in openshift/release@f4d37e7f87
(ci-operator/config/openshift/release: Use abort-at=100 for
rollback-oldest-supported, 2023-10-31, openshift/release#45115).  We
could lift this restriction if we wanted to allow rollbacks to be
requested from the middle of an in-progress update, but if we do, we'd
probably want to add matching CI to cover that use-case.

The new subcommand is hidden, as Lala requested in [2]'s Description
on 2021-09-22.  I have not put it behind a feature-gate environment
variable in this commit, but that's also an option if we wanted to
make it even less reachable.

[1]: https://issues.redhat.com/browse/OTA-553
[2]: https://issues.redhat.com/browse/OTA-492
dharmit pushed a commit to dharmit/oc that referenced this pull request Jan 3, 2024
The "which release to roll back to?" criteria are matched to
openshift/cluster-version-operator@12fdd0456b
(pkg/payload/precondition/clusterversion/rollback: Allow previous
version within z-stream, 2023-11-16,
openshift/cluster-version-operator#996), where, based on [1], Lala,
Scott, and Subin all agreed that rollbacks to the cluster's previous
release should not be blocked, as long as the previous and current
version had the same major.minor version (i.e. "within a z-stream",
using x.y.z naming for major.minor.patch).  We agreed to ignore
whether the previous history entry is Completed or Partial, expecting
that most users who are interested in rolling back will make that
decision at the first sign of trouble, and not after attempting a few
roll-forward retargets.

I'm currently blocking Progressing!=False from rolling back, to align
with our CI coverage in openshift/release@f4d37e7f87
(ci-operator/config/openshift/release: Use abort-at=100 for
rollback-oldest-supported, 2023-10-31, openshift/release#45115).  We
could lift this restriction if we wanted to allow rollbacks to be
requested from the middle of an in-progress update, but if we do, we'd
probably want to add matching CI to cover that use-case.

The new subcommand is hidden, as Lala requested in [2]'s Description
on 2021-09-22.  I have not put it behind a feature-gate environment
variable in this commit, but that's also an option if we wanted to
make it even less reachable.

[1]: https://issues.redhat.com/browse/OTA-553
[2]: https://issues.redhat.com/browse/OTA-492
dharmit pushed a commit to dharmit/oc that referenced this pull request Jan 12, 2024
The "which release to roll back to?" criteria are matched to
openshift/cluster-version-operator@12fdd0456b
(pkg/payload/precondition/clusterversion/rollback: Allow previous
version within z-stream, 2023-11-16,
openshift/cluster-version-operator#996), where, based on [1], Lala,
Scott, and Subin all agreed that rollbacks to the cluster's previous
release should not be blocked, as long as the previous and current
version had the same major.minor version (i.e. "within a z-stream",
using x.y.z naming for major.minor.patch).  We agreed to ignore
whether the previous history entry is Completed or Partial, expecting
that most users who are interested in rolling back will make that
decision at the first sign of trouble, and not after attempting a few
roll-forward retargets.

I'm currently blocking Progressing!=False from rolling back, to align
with our CI coverage in openshift/release@f4d37e7f87
(ci-operator/config/openshift/release: Use abort-at=100 for
rollback-oldest-supported, 2023-10-31, openshift/release#45115).  We
could lift this restriction if we wanted to allow rollbacks to be
requested from the middle of an in-progress update, but if we do, we'd
probably want to add matching CI to cover that use-case.

The new subcommand is hidden, as Lala requested in [2]'s Description
on 2021-09-22.  I have not put it behind a feature-gate environment
variable in this commit, but that's also an option if we wanted to
make it even less reachable.

[1]: https://issues.redhat.com/browse/OTA-553
[2]: https://issues.redhat.com/browse/OTA-492
@openshift-merge-robot
Copy link
Contributor

Fix included in accepted release 4.16.0-0.nightly-2024-01-09-085011

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. 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. lgtm Indicates that a PR is ready to be merged. no-qe Allows PRs to merge without qe-approved label
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

9 participants