-
Notifications
You must be signed in to change notification settings - Fork 444
Bump github.com/opencontainers/runc from 1.3.3 to 1.4.0 #1504
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
base: main
Are you sure you want to change the base?
Bump github.com/opencontainers/runc from 1.3.3 to 1.4.0 #1504
Conversation
|
/ok-to-test 6e26bac |
Pull Request Test Coverage Report for Build 19888391543Details
💛 - Coveralls |
|
/ok to test |
@ArangoGutierrez, there was an error processing your request: See the following link for more information: https://docs.gha-runners.nvidia.com/cpr/e/1/ |
|
/ok to test 3a34c1a |
04b8ed6 to
7e69031
Compare
|
/ok to test 7e69031 |
7e69031 to
241edc9
Compare
|
/ok to test 241edc9 |
internal/system/procfd_linux.go
Outdated
|
|
||
| // WithProcfd opens a file descriptor to the specified path and invokes the | ||
| // provided function with a /proc/self/fd path. | ||
| func WithProcfd(root, unsafePath string, fn func(fdPath string) error) error { |
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.
Here we are copying code from the runc repo without properly attributing it.
What is the "correct" way to do this? While I agree that this is a valid way to handle breaking dependency changes in a patch release, I would like to consider what the scalable way to do this is for the next minor release.
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.
Also, looking at the changes here, this is not actually required. Yes, I understand that this function is deprecated with the v1.4 release, but it is not being removed until v1.5. Why is it that we can't just add a //nolint check?
For reference: https://github.com/NVIDIA/nvidia-container-toolkit/actions/runs/19817146909/job/56770852753
Error: cmd/nvidia-cdi-hook/disable-device-node-modification/params_linux.go:40:9: SA1019: utils.WithProcfd is deprecated: This function is an internal implementation detail of runc and is no longer used. It will be removed in runc 1.5. (staticcheck)
err := utils.WithProcfd(containerRootDirPath, hookScratchDirPath, func(hookScratchDirFdPath string) error {
^
Error: cmd/nvidia-cdi-hook/disable-device-node-modification/params_linux.go:52:8: SA1019: utils.WithProcfd is deprecated: This function is an internal implementation detail of runc and is no longer used. It will be removed in runc 1.5. (staticcheck)
err = utils.WithProcfd(containerRootDirPath, modifiedParamsFilePath, func(modifiedParamsFileFdPath string) error {
^
Error: cmd/nvidia-cdi-hook/disable-device-node-modification/params_linux.go:63:9: SA1019: utils.WithProcfd is deprecated: This function is an internal implementation detail of runc and is no longer used. It will be removed in runc 1.5. (staticcheck)
err = utils.WithProcfd(containerRootDirPath, nvidiaDriverParamsPath, func(nvidiaDriverParamsFdPath string) error {
^
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.
What is the "correct" way to do this? While I agree that this is a valid way to handle breaking dependency changes in a patch release, I would like to consider what the scalable way to do this is for the next minor release.
Ack, will look into a better way
elezar
left a comment
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.
As mentioned in the comment, I don't think duplicating the runc functionality is something that we should do before we investigate other options.
internal/system/procfd_linux.go
Outdated
|
|
||
| // WithProcfd opens a file descriptor to the specified path and invokes the | ||
| // provided function with a /proc/self/fd path. | ||
| func WithProcfd(root, unsafePath string, fn func(fdPath string) error) error { |
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.
Also, looking at the changes here, this is not actually required. Yes, I understand that this function is deprecated with the v1.4 release, but it is not being removed until v1.5. Why is it that we can't just add a //nolint check?
For reference: https://github.com/NVIDIA/nvidia-container-toolkit/actions/runs/19817146909/job/56770852753
Error: cmd/nvidia-cdi-hook/disable-device-node-modification/params_linux.go:40:9: SA1019: utils.WithProcfd is deprecated: This function is an internal implementation detail of runc and is no longer used. It will be removed in runc 1.5. (staticcheck)
err := utils.WithProcfd(containerRootDirPath, hookScratchDirPath, func(hookScratchDirFdPath string) error {
^
Error: cmd/nvidia-cdi-hook/disable-device-node-modification/params_linux.go:52:8: SA1019: utils.WithProcfd is deprecated: This function is an internal implementation detail of runc and is no longer used. It will be removed in runc 1.5. (staticcheck)
err = utils.WithProcfd(containerRootDirPath, modifiedParamsFilePath, func(modifiedParamsFileFdPath string) error {
^
Error: cmd/nvidia-cdi-hook/disable-device-node-modification/params_linux.go:63:9: SA1019: utils.WithProcfd is deprecated: This function is an internal implementation detail of runc and is no longer used. It will be removed in runc 1.5. (staticcheck)
err = utils.WithProcfd(containerRootDirPath, nvidiaDriverParamsPath, func(nvidiaDriverParamsFdPath string) error {
^
241edc9 to
c33efe8
Compare
I have edited this PR to for now only ignore the deprecation lint, adding a TODO to work on it on our side |
|
/ok to test c33efe8 |
Bumps [github.com/opencontainers/runc](https://github.com/opencontainers/runc) from 1.3.3 to 1.4.0. - [Release notes](https://github.com/opencontainers/runc/releases) - [Changelog](https://github.com/opencontainers/runc/blob/main/CHANGELOG.md) - [Commits](opencontainers/runc@v1.3.3...v1.4.0) --- updated-dependencies: - dependency-name: github.com/opencontainers/runc dependency-version: 1.4.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: Carlos Eduardo Arango Gutierrez <[email protected]>
c33efe8 to
3705397
Compare
|
/ok to test 3705397 |
now we simply do a //nolint and add a TODO note
Bumps github.com/opencontainers/runc from 1.3.3 to 1.4.0.
Release notes
Sourced from github.com/opencontainers/runc's releases.
... (truncated)
Changelog
Sourced from github.com/opencontainers/runc's changelog.
... (truncated)
Commits
8bd78a9VERSION: release 1.4.07d84a12Merge pull request #5005 from cyphar/1.4-hallucinated-pathsc362d6bMerge pull request #5040 from cyphar/1.4-better-init-errors-4928f1d0dd8runc create/run/exec: show fatal errors from init4615662libct/nsenter: better read/write errorsc4a61c0libct/nsenter: sprinkle missing sane_kill493f1b1libct/nsenter: add and use bailx7f9fc53libct/nsenter: save errno in sane_kille18c06bMerge pull request #5041 from lifubang/backport-5014-fd-leaks-flake-1.45bb8987libct/int: TestFdLeaks: deflakeDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)