-
Notifications
You must be signed in to change notification settings - Fork 975
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
run acceptance tests with multiple versions of kubernetes #2563
run acceptance tests with multiple versions of kubernetes #2563
Conversation
can you provide a link to your workflow of your changes to confirm? We should be able to see the matrix of the k8s versions all passing. |
I had originally thought the workflow had already run in my branch but it hadn't due to the workflow being restricted to only run against the Hashicorp org. I got it running and have found that a subset of the tests fail against older versions of Kubernetes. The failures seem to fall into 3 categories:
I'd like to propose the following to get the tests in a passing state:
Let me know what you think about this approach and I'll follow up. |
@BBBmau I wen't ahead and did my proposed change in a new branch and have all tests now passing. Here is a break down of the issues I found:
Here is a link to the workflow run with the changes + a change to enable the workflow in my fork. Please let me know if you'd like me to merge those changes into this branch or go with a different approach. |
@coryflucas thanks for working on this! I haven't had the change to really look at your PR in depth. I plan on doing this next week just as a heads-up. Apologies for the delay! |
@@ -5,7 +5,7 @@ on: | |||
inputs: | |||
kindVersion: | |||
description: The kind version | |||
default: 0.20.0 # Kubernetes version: 1.27.X | |||
default: 0.20.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Really great stuff in your comments! We would love to take in your fixes involving the test failures in old k8s versions.
Only question I have in this PR is leaving it at 0.20
. Was their a specific reason for not moving it up to the latest in order to test with 1.30
as well?
We are planning to include 1.30
in order to include some new fields in a few resources. Would upgrading the kind version result in more failing tests? Not sure if you tried this already or not.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll go ahead and get the issues written up and start on PRs for the fixes 👍
On updating kind, I ran against kind 0.23 locally just fine so I don't expect any real issues, I was mostly trying to keep the scope of this change down since kind is used in a couple other workflows as well and I assume we'd want to keep those in sync. It requires bumping the version of kind and updating the Kubernetes versions since the node images are specific to a version of kind. I'm happy to tackle that as another PR or as part of this, it definitely makes sense to me to upgrade.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Another note would be that kind v0.23.0 does not support as old of versions of k8s as the test currently run against. It has supported node images going back to 1.25, but not 1.23. Kubernetes 1.23 is almost 3 years old though so maybe dropping it from the tests makes sense.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep let's treat that as another PR. We can perform the kind bump once the PR of bumping kubernetes to v1.30.3
gets merged: #2561
This will also give us a chance to address the issues you discovered prior to bumping to v1.30.3
😄
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I look forward to your upcoming issues / PRs that you came across while working on this. Thanks again!
Description
Leverage a matrix to run the acceptance tests against multiple versions of Kubernetes.
The versions are based on the default version previously used (1.27) and the versions used in the manifest acceptance tests but with corrected SHAs to match the version of kind in use. Note: there is no 1.30 image available for kind 0.20 (its available for 0.23) so I opted to use 1.29.
Acceptance tests
N/A
Release Note
Release note for CHANGELOG:
References
fixes #2562
Community Note