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

charts,salt,tests: Make Ingress controller watch Ingress without class #3704

Merged
merged 2 commits into from
Feb 16, 2022

Conversation

TeddyAndrieux
Copy link
Collaborator

The Workload Plane Ingress is the default Ingress controller that should
be used for Ingress object, so let's make this Ingress controller watch
Ingress object with no class.

NOTE: It shouldn't be needed since we define a default IngressClass
object, but during upgrade, the Ingress object created without Class
in MetalK8s 2.10.x are ignored after upgrade with a message that the
Ingress objects do not have any Class.

@TeddyAndrieux TeddyAndrieux requested a review from a team February 15, 2022 13:20
@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

Hello teddyandrieux,

My role is to assist you with the merge of this
pull request. Please type @bert-e help to get information
on this process, or consult the user documentation.

Status report is not available.

@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

Integration data created

I have created the integration data for the additional destination branches.

The following branches will NOT be impacted:

  • development/2.0
  • development/2.1
  • development/2.10
  • development/2.2
  • development/2.3
  • development/2.4
  • development/2.5
  • development/2.6
  • development/2.7
  • development/2.8
  • development/2.9

You can set option create_pull_requests if you need me to create
integration pull requests in addition to integration branches, with:

@bert-e create_pull_requests

@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

Waiting for approval

The following approvals are needed before I can proceed with the merge:

  • the author

  • one peer

Peer approvals must include at least 1 approval from the following list:

@TeddyAndrieux TeddyAndrieux force-pushed the improvement/watch-ingress-without-class branch from 73dab09 to a5a33c5 Compare February 15, 2022 13:21
@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

History mismatch

Merge commit #73dab09f80c997407e6a6882456f4ab105585b0d on the integration branch
w/123.0/improvement/watch-ingress-without-class is merging a branch which is neither the current
branch improvement/watch-ingress-without-class nor the development branch
development/123.0.

It is likely due to a rebase of the branch improvement/watch-ingress-without-class and the
merge is not possible until all related w/* branches are deleted or updated.

Please use the reset command to have me reinitialize these branches.

@TeddyAndrieux
Copy link
Collaborator Author

/reset

@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

Reset complete

I have successfully deleted this pull request's integration branches.

@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

Integration data created

I have created the integration data for the additional destination branches.

The following branches will NOT be impacted:

  • development/2.0
  • development/2.1
  • development/2.10
  • development/2.2
  • development/2.3
  • development/2.4
  • development/2.5
  • development/2.6
  • development/2.7
  • development/2.8
  • development/2.9

You can set option create_pull_requests if you need me to create
integration pull requests in addition to integration branches, with:

@bert-e create_pull_requests

@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

Waiting for approval

The following approvals are needed before I can proceed with the merge:

  • the author

  • one peer

Peer approvals must include at least 1 approval from the following list:

@gdemonet
Copy link
Contributor

Could be linked with their "stored apiVersion" in etcd... which relates to #2060

@TeddyAndrieux
Copy link
Collaborator Author

TeddyAndrieux commented Feb 15, 2022

Could be linked with their "stored apiVersion" in etcd... which relates to #2060

I'm not sure, maybe, because the controller can handle the Ingress it's just that apparently the IngressClass with "default" annotation, just set the IngressClassName on the Ingress object on creation so if the Ingress exists before the IngressClass then the Class will not be set.

@gdemonet
Copy link
Contributor

I'm not sure, maybe, because the controller can handle the Ingress it's just that apparently the IngressClass with "default" annotation, just set the IngressClassName on the Ingress object on creation so if the Ingress exists before the IngressClass then the Class will not be set.

You're right, I think the issue is rather that "old" Ingress objects are not updated with an ingressClassName when migrated, we would need to "re-create" them, as suggested in the ingress-nginx FAQ. Anyway, this PR implements the alternative solution, so LGTM!

The Workload Plane Ingress is the default Ingress controller that should
be used for Ingress object, so let's make this Ingress controller watch
Ingress object with no class.

NOTE: It shouldn't be needed since we define a default IngressClass
object, but during upgrade the Ingress object created without Class
in MetalK8s 2.10.x are ignored after upgrade with a message that the
Ingress object do not have any Class.

Re-render the state using:
```
./charts/render.py ingress-nginx --namespace metalk8s-ingress \
  charts/ingress-nginx.yaml charts/ingress-nginx/ \
  > salt/metalk8s/addons/nginx-ingress/deployed/chart.sls
```
@TeddyAndrieux TeddyAndrieux force-pushed the improvement/watch-ingress-without-class branch from a5a33c5 to 19a69b3 Compare February 15, 2022 14:52
@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

History mismatch

Merge commit #a5a33c579d53e793add85f69639fa9e512605dfb on the integration branch
w/123.0/improvement/watch-ingress-without-class is merging a branch which is neither the current
branch improvement/watch-ingress-without-class nor the development branch
development/123.0.

It is likely due to a rebase of the branch improvement/watch-ingress-without-class and the
merge is not possible until all related w/* branches are deleted or updated.

Please use the reset command to have me reinitialize these branches.

@TeddyAndrieux
Copy link
Collaborator Author

/reset

@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

Reset complete

I have successfully deleted this pull request's integration branches.

@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

Integration data created

I have created the integration data for the additional destination branches.

The following branches will NOT be impacted:

  • development/2.0
  • development/2.1
  • development/2.10
  • development/2.2
  • development/2.3
  • development/2.4
  • development/2.5
  • development/2.6
  • development/2.7
  • development/2.8
  • development/2.9

You can set option create_pull_requests if you need me to create
integration pull requests in addition to integration branches, with:

@bert-e create_pull_requests

@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

Waiting for approval

The following approvals are needed before I can proceed with the merge:

  • the author

  • one peer

Peer approvals must include at least 1 approval from the following list:

gdemonet
gdemonet previously approved these changes Feb 15, 2022
Copy link
Contributor

@gdemonet gdemonet left a comment

Choose a reason for hiding this comment

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

💯 :shipit:

@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

History mismatch

Merge commit #19a69b302de721cd52c4e5ff8580b18eff5ea436 on the integration branch
w/123.0/improvement/watch-ingress-without-class is merging a branch which is neither the current
branch improvement/watch-ingress-without-class nor the development branch
development/123.0.

It is likely due to a rebase of the branch improvement/watch-ingress-without-class and the
merge is not possible until all related w/* branches are deleted or updated.

Please use the reset command to have me reinitialize these branches.

@TeddyAndrieux
Copy link
Collaborator Author

/reset

@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

Reset complete

I have successfully deleted this pull request's integration branches.

@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

Integration data created

I have created the integration data for the additional destination branches.

The following branches will NOT be impacted:

  • development/2.0
  • development/2.1
  • development/2.10
  • development/2.2
  • development/2.3
  • development/2.4
  • development/2.5
  • development/2.6
  • development/2.7
  • development/2.8
  • development/2.9

You can set option create_pull_requests if you need me to create
integration pull requests in addition to integration branches, with:

@bert-e create_pull_requests

@bert-e
Copy link
Contributor

bert-e commented Feb 15, 2022

Waiting for approval

The following approvals are needed before I can proceed with the merge:

  • the author

  • one peer

Peer approvals must include at least 1 approval from the following list:

Copy link
Contributor

@gdemonet gdemonet left a comment

Choose a reason for hiding this comment

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

(not sure what changed, you just added a time.sleep(5) after the Ingress creation?)

@TeddyAndrieux
Copy link
Collaborator Author

(not sure what changed, you just added a time.sleep(5) after the Ingress creation?)

Yes and also added missing "teardown" on tests

@TeddyAndrieux
Copy link
Collaborator Author

/approve

@bert-e
Copy link
Contributor

bert-e commented Feb 16, 2022

Build failed

The build for commit did not succeed in branch improvement/watch-ingress-without-class.

The following options are set: approve

@bert-e
Copy link
Contributor

bert-e commented Feb 16, 2022

In the queue

The changeset has received all authorizations and has been added to the
relevant queue(s). The queue(s) will be merged in the target development
branch(es) as soon as builds have passed.

The changeset will be merged in:

  • ✔️ development/2.11

  • ✔️ development/123.0

The following branches will NOT be impacted:

  • development/2.0
  • development/2.1
  • development/2.10
  • development/2.2
  • development/2.3
  • development/2.4
  • development/2.5
  • development/2.6
  • development/2.7
  • development/2.8
  • development/2.9

There is no action required on your side. You will be notified here once
the changeset has been merged. In the unlikely event that the changeset
fails permanently on the queue, a member of the admin team will
contact you to help resolve the matter.

IMPORTANT

Please do not attempt to modify this pull request.

  • Any commit you add on the source branch will trigger a new cycle after the
    current queue is merged.
  • Any commit you add on one of the integration branches will be lost.

If you need this pull request to be removed from the queue, please contact a
member of the admin team now.

The following options are set: approve

@bert-e
Copy link
Contributor

bert-e commented Feb 16, 2022

I have successfully merged the changeset of this pull request
into targetted development branches:

  • ✔️ development/2.11

  • ✔️ development/123.0

The following branches have NOT changed:

  • development/2.0
  • development/2.1
  • development/2.10
  • development/2.2
  • development/2.3
  • development/2.4
  • development/2.5
  • development/2.6
  • development/2.7
  • development/2.8
  • development/2.9

Please check the status of the associated issue None.

Goodbye teddyandrieux.

@bert-e bert-e merged commit 9aabad7 into development/2.11 Feb 16, 2022
@bert-e bert-e deleted the improvement/watch-ingress-without-class branch February 16, 2022 08:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants