-
Notifications
You must be signed in to change notification settings - Fork 26
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
Releasing v0.1.17 from development #198
Conversation
The existing workflows are out of date and insecure. This change updates the relevant workflows to the current state of the repository, corrects some issues, and disables workflows that will be handled through other means.
PR needs rebase. 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. |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: t-mialve 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:
Approvers can indicate their approval by writing |
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.17.0 to 0.23.0. - [Commits](golang/net@v0.17.0...v0.23.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: dabradley <dabradley@users.noreply.github.com>
This helps prevent the workflows from getting out of sync with the version of go we are using in the project.
Version 4 of the setup-go action has caching enabled by default, but reads the existing go.mod and go.sum files in the checkout. If these do not exist, it issues a warning and avoids the cache behavior. To prevent this, this commit follows the suggested practice of performing the code checkout before running the setup-go action.
When testing for the existence or lack of errors, it is beneficial to have the test fail at the first unexpected assertion. If we don't, then it is likely that any further processing will obscure the original failure, or even cause a panic in the test.
Improves failure reporting to have the function configured as a testing helper to make the actual failure more clear.
It's not necessary to change the actual process's actual environment to test these values. The t.Setenv functionality ensures that these values are reset at the end of the test so that other testing is not affected.
Shadowing existing language identifiers is unexpected and creates error-prone expectations of how a given identfier might be used.
Since Go 1.22, the scope of loop variables has changed. It is no longer necessary to copy loop vars to prevent accidental reuse.
The '%w' format automatically works with the unwrapping and wrapping of the existing error to provide more useful debugging information.
Accessing nested protobuf fields directly allows for nil pointer deferences. By forcing the use of getter methods, these chains will not cause these errors and will simply return a nil/zero value for the entire expression if one of the links does not exist.
Using named returns can create very brittle logic where zero values are automatically created and returned and can easily be missed by later maintainers. The existing usage did not leverage the actual named return logic and can be safely removed.
GCI ensures consistent and readable import ordering
For consistent logging and debugging, we should always be using the existing logging framework, rather than printing to standard out.
We are alroady running gofmt, so this just adds further formatting consistency.
There have been cases where the logic to cleanup a mount point has caused the driver to get into a bad state. This is most obvious when a subdirectory is mounted to a volume and a parent directory of that subdirectory is deleted. The Lustre driver doesn't handle that case in the way that Kubernetes expects and returns invalid data. To avoid this scenario causing our driver to get into a bad state, leak mount points, etc, we must explicitly check that we can read the necessary information about the mount point, and if not, explicitly unmount that mount point before allowing Kubernetes to clean up the directory. To ensure that we don't end up in a bad state, this change enables force unmounting as well. The force unmount will only occur after a timeout has expired, since force unmounts can cause issues with the Lustre driver. However, in this case, it is better if we are in a bad enough situation to be able to eventually return to a good state rather than require manual intervention.
In order to be able to use non-root accounts, it is important for the driver to allow k8s to change group ids in the cluster. Adding this value enables this ability so that in all circumstances, a pod can run with the expected filesystem group ACLs set.
Keywords which can automatically close issues and at(@) or hashtag(#) mentions are not allowed in commit messages. The list of commits with invalid commit messages:
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. |
What type of PR is this?
/kind feature
What this PR does / why we need it:
Releasing v0.1.17(lustre 2.15.5) from development and some other bugfixes along the way.
Which issue(s) this PR fixes:
Fixes #
Requirements:
Special notes for your reviewer:
Release note: