api icon indicating copy to clipboard operation
api copied to clipboard

OCPBUGS-36479: remove duplicate featuregate 'ExternalRouteCertificate'

Open chiragkyal opened this issue 1 year ago • 18 comments

We're using RouteExternalCertificate feature gate as part of https://issues.redhat.com/browse/CFE-811 feature.

xref:

This PR removes the inadvertently duplicated ExternalRouteCertificate gate added in https://github.com/openshift/api/pull/1731

chiragkyal avatar Jul 11 '24 14:07 chiragkyal

@chiragkyal: This pull request references Jira Issue OCPBUGS-36479, which is invalid:

  • expected the bug to target the "4.17.0" version, but no target version was set

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.

In response to this:

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-robot avatar Jul 11 '24 14:07 openshift-ci-robot

Hello @chiragkyal! Some important instructions when contributing to openshift/api: API design plays an important part in the user experience of OpenShift and as such API PRs are subject to a high level of scrutiny to ensure they follow our best practices. If you haven't already done so, please review the OpenShift API Conventions and ensure that your proposed changes are compliant. Following these conventions will help expedite the api review process for your PR.

openshift-ci[bot] avatar Jul 11 '24 14:07 openshift-ci[bot]

/assign @JoelSpeed

chiragkyal avatar Jul 11 '24 14:07 chiragkyal

/assign @Miciah

chiragkyal avatar Jul 11 '24 14:07 chiragkyal

/cc @lihongan

chiragkyal avatar Jul 11 '24 14:07 chiragkyal

/lgtm /approve

good for backport.

deads2k avatar Jul 11 '24 15:07 deads2k

verify failures looks real and look like they should be fixed.

deads2k avatar Jul 11 '24 15:07 deads2k

Changes in the latest commit look ok to me, will see if @Miciah agress with the new list types

JoelSpeed avatar Jul 12 '24 11:07 JoelSpeed

Changes in the latest commit look ok to me, will see if @Miciah agress with the new list types

The changes make sense to me.

Just to make sure I understand correctly: If the cluster-ingress-operator and router use the client-go UpdateStatus method and controller-runtime Status().Update method, which use Put, does that mean that an update that changes one of these slice values will still replace the existing slice in whole, listType=map notwithstanding? I want to be sure that code like https://github.com/openshift/router/blob/a7313722c6e0541fcc00e92c459dd5d32a4a1534/pkg/router/controller/status.go#L268 and https://github.com/openshift/cluster-ingress-operator/blob/ddd1ee6dfb7e7c37d9525f48242baab55c7527fc/pkg/operator/controller/ingress/router_status.go#L113 will still work properly as long as we use Update and not Patch.

And in contrast, if someone uses oc patch to adjust weights on alternateBackends with listType=map, now the patch will not replace the slice in whole but will instead merge and retain slice entries that aren't listed in the patch, right?

Miciah avatar Jul 12 '24 18:07 Miciah

I think yes? Your client should be setting a field manager name. If you push a status update that contains conditions, SSA assumes you are updating all of the conditions int the slice that belong to your field manager. So, if you in one request send 3 conditions, and in the next send 4, it will add that fourth to the list, and update the 3 in place. If you then send 2 conditions, it would assume you no longer want the other two, so would remove the 2 not sent, and update the 2 that were sent. If meanwhile, someone else added a condition with a different field manager name, your requests would not affect this condition, so it wouldn't update the whole slice no, it would only update those conditions within the slice, that are owned by your field manager name.

LIkewise for the backends, it depends on the field manager name owning each backend within the list. In most likelihood, I don't think you'd notice a difference as a kubectl user

JoelSpeed avatar Jul 15 '24 10:07 JoelSpeed

/jira refresh

lihongan avatar Jul 23 '24 09:07 lihongan

@lihongan: This pull request references Jira Issue OCPBUGS-36479, 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.17.0) matches configured target version for branch (4.17.0)
  • bug is in the state ASSIGNED, which is one of the valid states (NEW, ASSIGNED, POST)

Requesting review from QA contact: /cc @lihongan

In response to this:

/jira 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 openshift-eng/jira-lifecycle-plugin repository.

openshift-ci-robot avatar Jul 23 '24 09:07 openshift-ci-robot

/label qe-approved

verified by pre-merge testing, the ExternalRouteCertificate has been removed

$ oc get clusterversion
NAME      VERSION                                                   AVAILABLE   PROGRESSING   SINCE   STATUS
version   4.17.0-0.ci.test-2024-07-23-070357-ci-ln-gdmdmkk-latest   True        False         97m     Cluster version is 4.17.0-0.ci.test-2024-07-23-070357-ci-ln-gdmdmkk-latest

$ oc get featuregates.config.openshift.io cluster -oyaml | grep -i route
    - name: RouteExternalCertificate

lihongan avatar Jul 23 '24 09:07 lihongan

@chiragkyal: This pull request references Jira Issue OCPBUGS-36479, which is valid.

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

Requesting review from QA contact: /cc @lihongan

In response to this:

We're using RouteExternalCertificate feature gate as part of https://issues.redhat.com/browse/CFE-811 feature.

xref:

This PR removes the inadvertently duplicated ExternalRouteCertificate gate added in https://github.com/openshift/api/pull/1731

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-robot avatar Jul 23 '24 09:07 openshift-ci-robot

/retest

lihongan avatar Jul 23 '24 09:07 lihongan

/lgtm

JoelSpeed avatar Aug 16 '24 09:08 JoelSpeed

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: chiragkyal, deads2k, JoelSpeed

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:
  • ~~OWNERS~~ [JoelSpeed,deads2k]

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

openshift-ci[bot] avatar Aug 16 '24 09:08 openshift-ci[bot]

/jira refresh

chiragkyal avatar Aug 16 '24 10:08 chiragkyal

@chiragkyal: This pull request references Jira Issue OCPBUGS-36479, which is valid.

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

Requesting review from QA contact: /cc @lihongan

In response to this:

/jira 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 openshift-eng/jira-lifecycle-plugin repository.

openshift-ci-robot avatar Aug 16 '24 10:08 openshift-ci-robot

@chiragkyal: 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/e2e-azure 165518dbbc9fe1f327aae08c4dc5eec91ebf8993 link false /test e2e-azure

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-sigs/prow repository. I understand the commands that are listed here.

openshift-ci[bot] avatar Aug 16 '24 12:08 openshift-ci[bot]

@chiragkyal: Jira Issue OCPBUGS-36479: All pull requests linked via external trackers have merged:

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

In response to this:

We're using RouteExternalCertificate feature gate as part of https://issues.redhat.com/browse/CFE-811 feature.

xref:

This PR removes the inadvertently duplicated ExternalRouteCertificate gate added in https://github.com/openshift/api/pull/1731

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-robot avatar Aug 16 '24 12:08 openshift-ci-robot

/cherrypick release-4.17

chiragkyal avatar Aug 16 '24 18:08 chiragkyal

@chiragkyal: new pull request created: #2004

In response to this:

/cherrypick release-4.17

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-sigs/prow repository.

/cherrypick release-4.16

chiragkyal avatar Aug 21 '24 08:08 chiragkyal

@chiragkyal: new pull request created: #2007

In response to this:

/cherrypick release-4.16

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-sigs/prow repository.