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

Bug 1982868: UPSTREAM <carry>: ManagementCPUsOverride: Add defaults for missing infrastructure topologies #859

Closed

Conversation

wking
Copy link
Member

@wking wking commented Jul 15, 2021

Avoid blocking changes like:

deployment openshift-etcd-operator/etcd-operator has a replica failure FailedCreate: pods "etcd-operator-7b677856dc-" is forbidden: autoscaling.openshift.io/ManagementCPUsOverride infrastructure resource has empty status.controlPlaneTopology or status.infrastructureTopology

when running against 4.7 versions of the Infrastructure CRD, which lack 4.8's topology properties. 4.8 and later CRDs will have the HighlyAvailable default injected by the Kubernetes API server, so this commit just fills in those defaults client-side to handle 4.8-admission-plugin vs. 4.7-Infra-CRD version skew.

@openshift-ci-robot openshift-ci-robot added the backports/unvalidated-commits Indicates that not all commits come to merged upstream PRs. label Jul 15, 2021
@openshift-ci openshift-ci bot added bugzilla/severity-medium Referenced Bugzilla bug's severity is medium for the branch this PR is targeting. bugzilla/invalid-bug Indicates that a referenced Bugzilla bug is invalid for the branch this PR is targeting. labels Jul 15, 2021
@openshift-ci
Copy link

openshift-ci bot commented Jul 15, 2021

@wking: This pull request references Bugzilla bug 1982868, which is invalid:

  • expected dependent Bugzilla bug 1982873 to be in one of the following states: MODIFIED, ON_QA, VERIFIED, but it is CLOSED (NOTABUG) instead

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

In response to this:

Bug 1982868: UPSTREAM : ManagementCPUsOverride: Add defaults for missing infrastructure topologies

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

@wking: the contents of this pull request could not be automatically validated.

The following commits could not be validated and must be approved by a top-level approver:

@openshift-ci openshift-ci bot requested review from soltysh and sttts July 15, 2021 23:08
@openshift-ci
Copy link

openshift-ci bot commented Jul 15, 2021

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: wking
To complete the pull request process, please assign soltysh after the PR has been reviewed.
You can assign the PR to them by writing /assign @soltysh in a comment when ready.

The full list of commands accepted by this bot can be found 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

@wking wking force-pushed the default-topology-for-rollbacks branch from 774ed37 to f0b0565 Compare July 15, 2021 23:30
@openshift-ci-robot
Copy link

@wking: the contents of this pull request could not be automatically validated.

The following commits could not be validated and must be approved by a top-level approver:

…frastructure topologies

Avoid blocking changes like [1]:

  deployment openshift-etcd-operator/etcd-operator has a replica failure FailedCreate: pods "etcd-operator-7b677856dc-" is forbidden: autoscaling.openshift.io/ManagementCPUsOverride infrastructure resource has empty status.controlPlaneTopology or status.infrastructureTopology

when running against 4.7 versions of the Infrastructure CRD, which
lack 4.8's topology properties.  4.8 and later CRDs will have the
HighlyAvailable default injected by the Kubernetes API server [2], so
this commit just fills in those defaults client-side to handle
4.8-admission-plugin vs. 4.7-Infra-CRD version skew.

[1]: https://bugzilla.redhat.com/show_bug.cgi?id=1982868
[2]: https://github.com/openshift/api/blob/46e2fe0468512c88595dbc5997d890a97f2efb43/config/v1/types_infrastructure.go#L81-L100
@wking wking force-pushed the default-topology-for-rollbacks branch from f0b0565 to 1e4cede Compare July 15, 2021 23:31
@openshift-ci-robot
Copy link

@wking: the contents of this pull request could not be automatically validated.

The following commits could not be validated and must be approved by a top-level approver:

@wking
Copy link
Member Author

wking commented Jul 15, 2021

/bugzilla refresh

@openshift-ci
Copy link

openshift-ci bot commented Jul 15, 2021

@wking: This pull request references Bugzilla bug 1982868, which is valid.

6 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target release (4.8.0) matches configured target release for branch (4.8.0)
  • bug is in the state POST, which is one of the valid states (NEW, ASSIGNED, ON_DEV, POST, POST)
  • dependent bug Bugzilla bug 1982873 is in the state ON_QA, which is one of the valid states (MODIFIED, ON_QA, VERIFIED)
  • dependent Bugzilla bug 1982873 targets the "4.9.0" release, which is one of the valid target releases: 4.9.0
  • bug has dependents

No GitHub users were found matching the public email listed for the QA contact in Bugzilla (schoudha@redhat.com), skipping review request.

In response to this:

/bugzilla refresh

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 bugzilla/valid-bug Indicates that a referenced Bugzilla bug is valid for the branch this PR is targeting. and removed bugzilla/invalid-bug Indicates that a referenced Bugzilla bug is invalid for the branch this PR is targeting. labels Jul 15, 2021
@wking
Copy link
Member Author

wking commented Jul 15, 2021

The line I'm touching is from #833, so CC @cynepco3hahue, @mfojtik, and @sttts.

@wking
Copy link
Member Author

wking commented Jul 15, 2021

Hrm, getting warning:only single-node clusters support workload partitioning. Maybe my default injection is not all that different from just reverting #833? We may need a more involved fix, by someone who understands this admission plugin more deeply than I do to satisfy all of these use-cases.

@openshift-ci
Copy link

openshift-ci bot commented Jul 16, 2021

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

Test name Commit Details Rerun command
ci/prow/verify-commits 1e4cede link /test verify-commits
ci/prow/unit 1e4cede link /test unit
ci/prow/e2e-agnostic-cmd 1e4cede link /test e2e-agnostic-cmd
ci/prow/e2e-aws-ovn 1e4cede link /test e2e-aws-ovn
ci/prow/e2e-gcp 1e4cede link /test e2e-gcp
ci/prow/e2e-aws-disruptive 1e4cede link /test e2e-aws-disruptive
ci/prow/e2e-gcp-upgrade 1e4cede link /test e2e-gcp-upgrade
ci/prow/e2e-metal-ipi 1e4cede link /test e2e-metal-ipi
ci/prow/e2e-azure-upgrade 1e4cede link /test e2e-azure-upgrade
ci/prow/e2e-aws-downgrade 1e4cede link /test e2e-aws-downgrade
ci/prow/e2e-aws-upgrade 1e4cede link /test e2e-aws-upgrade

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.

@cynepco3hahue
Copy link

Avoid blocking changes like:

deployment openshift-etcd-operator/etcd-operator has a replica failure FailedCreate: pods "etcd-operator-7b677856dc-" is forbidden: autoscaling.openshift.io/ManagementCPUsOverride infrastructure resource has empty status.controlPlaneTopology or status.infrastructureTopology

when running against 4.7 versions of the Infrastructure CRD, which lack 4.8's topology properties. 4.8 and later CRDs will have the HighlyAvailable default injected by the Kubernetes API server, so this commit just fills in those defaults client-side to handle 4.8-admission-plugin vs. 4.7-Infra-CRD version skew.

@wking IIUC the infrastructure object rollbacked to 4.7 before the etcd and kube-apiserver pods and the 4.7 infra object does not have topology relevant fields. I am just expecting that in the case when the infra object does not have relevant fields the admission plugin should fail at all with the error clusterInfra.Status.ControlPlaneTopology undefined.

Do you know if it is possible to recognize when the clusterInfra.Status.ControlPlaneTopology is empty because of the race during the installation or because of the rollback to 4.7?

@wking
Copy link
Member Author

wking commented Aug 3, 2021

Obsoleted by #877.

@wking wking closed this Aug 3, 2021
@wking wking deleted the default-topology-for-rollbacks branch August 3, 2021 17:35
@openshift-ci
Copy link

openshift-ci bot commented Aug 3, 2021

@wking: This pull request references Bugzilla bug 1982868. The bug has been updated to no longer refer to the pull request using the external bug tracker.

In response to this:

Bug 1982868: UPSTREAM : ManagementCPUsOverride: Add defaults for missing infrastructure topologies

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backports/unvalidated-commits Indicates that not all commits come to merged upstream PRs. bugzilla/severity-medium Referenced Bugzilla bug's severity is medium for the branch this PR is targeting. bugzilla/valid-bug Indicates that a referenced Bugzilla bug is valid for the branch this PR is targeting.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants