Skip to content

Conversation

@openshift-cherrypick-robot

This is an automated cherry-pick of #502

/assign Miciah

If an ingresscontroller's status.endpointPublishingStrategy.type field is
"LoadBalancerService" but status.endpointPublishingStrategy.loadBalancer is
nil, assume the ingresscontroller should have an external load balancer.

Commit 8cd622f added support for internal
scope for load balancers.  In doing so, it changed the operator logic to
initialize status.endpointPublishingStrategy.loadBalancer to indicate the
scope when an ingresscontroller was created, using the corresponding fields
in the ingresscontroller's spec to determine the scope.  The same commit
also changed operator logic to assume that the ingresscontroller has
internal scope if status.endpointPublishingStrategy.loadBalancer is nil.
However, if an ingresscontroller already exists, the operator does not
update status.endpointPublishingStrategy.loadBalancer.  This commit was
made in OpenShift 4.2, which means that if a cluster was upgraded from 4.1,
any ingresscontrollers that were created prior to the upgrade would not
have status.endpointPublishingStrategy.loadBalancer set.

Subsequently, commit 982682f made the
ingresscontroller's scope mutable, meaning if an ingresscontroller has an
external load balancer and status.endpointPublishingStrategy.loadBalancer
indicates that the ingresscontroller should have an internal load balancer,
then the operator changes the load balancer from external to internal.

In combination, those two commits cause the operator to change an
ingresscontroller's load balancer from external to internal if the cluster
has been upgraded from 4.1 → 4.2 → ... → 4.6 and the ingresscontroller was
originally created on OpenShift 4.1.

This commit rectifies the situation by amending the logic that was added in
commit 8cd622f to assume that a nil value
for status.endpointPublishingStrategy.loadBalancer means that the load
balancer should be external. This assumption is valid because
status.endpointPublishingStrategy.loadBalancer is nil exactly when the
ingresscontroller was created on an OpenShift 4.1 cluster, and external
scope was the only supported option on OpenShift 4.1.

* pkg/operator/controller/ingress/load_balancer_service.go
(desiredLoadBalancerService): Assume nil
status.endpointPublishingStrategy.loadBalancer means external scope.
@openshift-ci-robot
Copy link
Contributor

@openshift-cherrypick-robot: Bugzilla bug 1904582 has been cloned as Bugzilla bug 1904594. Retitling PR to link against new bug.
/retitle [release-4.6] Bug 1904594: Assume ingresscontroller is external absent status

Details

In response to this:

[release-4.6] Bug 1904582: Assume ingresscontroller is external absent status

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 changed the title [release-4.6] Bug 1904582: Assume ingresscontroller is external absent status [release-4.6] Bug 1904594: Assume ingresscontroller is external absent status Dec 4, 2020
@openshift-ci-robot openshift-ci-robot added bugzilla/severity-urgent Referenced Bugzilla bug's severity is urgent 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 Dec 4, 2020
@openshift-ci-robot
Copy link
Contributor

@openshift-cherrypick-robot: This pull request references Bugzilla bug 1904594, which is invalid:

  • expected dependent Bugzilla bug 1904582 to be in one of the following states: VERIFIED, RELEASE_PENDING, CLOSED (ERRATA), but it is MODIFIED 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.

Details

In response to this:

[release-4.6] Bug 1904594: Assume ingresscontroller is external absent status

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.

@Miciah
Copy link
Contributor

Miciah commented Dec 4, 2020

/lgtm

@openshift-ci-robot openshift-ci-robot added the lgtm Indicates that a PR is ready to be merged. label Dec 4, 2020
@openshift-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: Miciah, openshift-cherrypick-robot

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

The pull request process is described 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

@openshift-ci-robot openshift-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Dec 4, 2020
@openshift-bot
Copy link
Contributor

/bugzilla refresh

Recalculating validity in case the underlying Bugzilla bug has changed.

@openshift-ci-robot
Copy link
Contributor

@openshift-bot: This pull request references Bugzilla bug 1904594, which is invalid:

  • expected dependent Bugzilla bug 1904582 to be in one of the following states: VERIFIED, RELEASE_PENDING, CLOSED (ERRATA), but it is ON_QA 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.

Details

In response to this:

/bugzilla refresh

Recalculating validity in case the underlying Bugzilla bug has changed.

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-bot
Copy link
Contributor

/bugzilla refresh

Recalculating validity in case the underlying Bugzilla bug has changed.

@openshift-ci-robot
Copy link
Contributor

@openshift-bot: This pull request references Bugzilla bug 1904594, which is invalid:

  • expected dependent Bugzilla bug 1904582 to be in one of the following states: VERIFIED, RELEASE_PENDING, CLOSED (ERRATA), but it is ON_QA 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.

Details

In response to this:

/bugzilla refresh

Recalculating validity in case the underlying Bugzilla bug has changed.

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-bot
Copy link
Contributor

/retest

Please review the full test history for this PR and help us cut down flakes.

3 similar comments
@openshift-bot
Copy link
Contributor

/retest

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/bugzilla refresh

Recalculating validity in case the underlying Bugzilla bug has changed.

@openshift-ci-robot
Copy link
Contributor

@openshift-bot: This pull request references Bugzilla bug 1904594, which is invalid:

  • expected dependent Bugzilla bug 1904582 to be in one of the following states: VERIFIED, RELEASE_PENDING, CLOSED (ERRATA), but it is ON_QA 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.

Details

In response to this:

/bugzilla refresh

Recalculating validity in case the underlying Bugzilla bug has changed.

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.

@sdodson sdodson added bugzilla/valid-bug Indicates that a referenced Bugzilla bug is valid for the branch this PR is targeting. cherry-pick-approved Indicates a cherry-pick PR into a release branch has been approved by the release branch manager. and removed bugzilla/invalid-bug Indicates that a referenced Bugzilla bug is invalid for the branch this PR is targeting. labels Dec 7, 2020
@sdodson
Copy link
Member

sdodson commented Dec 7, 2020

Because we agree that we won't ship another 4.6.z without this and that forcing testing happen in 4.7 will delay that I've overridden bugzilla/valid-bug and applied cherry-pick-approved.

@sdodson
Copy link
Member

sdodson commented Dec 7, 2020

/retest

@Miciah
Copy link
Contributor

Miciah commented Dec 7, 2020

=== RUN   TestUniqueIdHeader
    operator_test.go:1659: failed to create route openshift-ingress/unique-id-echo: the server is currently unable to handle the request (post routes.route.openshift.io)
    operator_test.go:1962: deleted ingresscontroller uniqueid
--- FAIL: TestUniqueIdHeader (104.55s)

/test e2e-aws-operator

@sdodson
Copy link
Member

sdodson commented Dec 7, 2020

/retest

@sdodson
Copy link
Member

sdodson commented Dec 7, 2020

/override ci/prow/e2e-operator

@openshift-ci-robot
Copy link
Contributor

@sdodson: /override requires a failed status context to operate on.
The following unknown contexts were given:

  • ci/prow/e2e-operator

Only the following contexts were expected:

  • ci/prow/e2e-aws
  • ci/prow/e2e-aws-operator
  • ci/prow/e2e-upgrade
  • ci/prow/images
  • ci/prow/unit
  • ci/prow/verify
  • tide
Details

In response to this:

/override ci/prow/e2e-operator

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.

@sdodson
Copy link
Member

sdodson commented Dec 7, 2020

/override ci/prow/e2e-aws-operator

@openshift-ci-robot
Copy link
Contributor

@sdodson: Overrode contexts on behalf of sdodson: ci/prow/e2e-aws-operator

Details

In response to this:

/override ci/prow/e2e-aws-operator

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.

@sdodson
Copy link
Member

sdodson commented Dec 7, 2020

/override ci/prow/e2e-aws
Passed previously

@openshift-ci-robot
Copy link
Contributor

@sdodson: Overrode contexts on behalf of sdodson: ci/prow/e2e-aws

Details

In response to this:

/override ci/prow/e2e-aws
Passed previously

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-merge-robot openshift-merge-robot merged commit 4035e92 into openshift:release-4.6 Dec 7, 2020
@openshift-ci-robot
Copy link
Contributor

@openshift-cherrypick-robot: All pull requests linked via external trackers have merged:

Bugzilla bug 1904594 has been moved to the MODIFIED state.

Details

In response to this:

[release-4.6] Bug 1904594: Assume ingresscontroller is external absent status

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

approved Indicates a PR has been approved by an approver from all required OWNERS files. bugzilla/severity-urgent Referenced Bugzilla bug's severity is urgent 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. cherry-pick-approved Indicates a cherry-pick PR into a release branch has been approved by the release branch manager. lgtm Indicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants