Podman6: Vendor update w/o CNI + additional cleanups#28202
Podman6: Vendor update w/o CNI + additional cleanups#28202lsm5 wants to merge 6 commits intocontainers:mainfrom
Conversation
5c5a90a to
03729cf
Compare
|
[NON-BLOCKING] Packit jobs failed. @containers/packit-build please check. Everyone else, feel free to ignore. |
197e4ca to
466972b
Compare
f3db031 to
dc09bbb
Compare
|
@containers/podman-maintainers PTAL. Will keep in draft until buildah and container-libs PRs are merged (see description for links). |
dc09bbb to
cf6c000
Compare
|
Looks like the compose tests are failing here. I don't think it is related to your cni removal though so likely another container -libs change |
|
compose failure is reproduced using podman main with container-libs main so ignore that for your work @Honny1 I think that might be related to your multiple static ip work, can you look into this? |
|
Let me check that. |
|
Compat API adds the IP address twice. podman/pkg/api/handlers/compat/containers_create.go Lines 349 to 367 in faa9b02 I need to check Docker documentation on how it should be handled. I will address that with #27775. |
I think likely one setting is preferred over the other? In general I guess a simple fix could be to deduplicate the slice with slices.Sort followed slices.Compact on the ips otherwise? |
Deduplication is a possibility. I found that |
This is docker API, anything docker does not do we have always been very open to just break to make it behave like docker. |
e41a207 to
13bd396
Compare
|
I guess the |
That is a timeout out that is flaking everywhere, I hope #28299 improves the situation for it. |
| val, ok = os.LookupEnv("CNI_CONFIG_DIR") | ||
| if ok { | ||
| cmd = append(cmd, "--network-config-dir", val) | ||
| } |
There was a problem hiding this comment.
practically speaking that cli flag also is used by netavark, though sure if there are no known users of this config right now I am good dropping it fully
| $ podman-remote info | ||
| ``` | ||
|
|
||
| ### 29) Rootless CNI networking fails in RHEL with Podman v2.2.1 to v3.0.1. |
There was a problem hiding this comment.
maybe we should do that commit elsewhere
While I agree removing the numbers makes sense it means it breaks all existing links. i.e. anyone linking to the headers https://github.com/containers/podman/blob/main/troubleshooting.md#1-variety-of-issues---validate-version
I think we should keep the numbers because of that, I think we can drop this entry and just skip the number 29. Generally I am not opposed to drop the numbers but lets not do this as part of cni removal PR here so we can get some more people to chime in on such a change
There was a problem hiding this comment.
sgtm. Reverted and dropped number 29. This as well as the docs/source/locale/ja updates (also for slirp) could be in separate PRs.
test/buildah-bud/apply-podman-deltas
Outdated
| skip_if_remote "--metadata-file not supported in remote mode" \ | ||
| "bud cache by format" | ||
|
|
||
| skip_if_remote "--isolation not supported via podman-remote" \ |
There was a problem hiding this comment.
does is not true AFAICT
podman build --isolation && --arch runs as e2e test as remote just fine?
What is the exact error here, I would not object skipping on remote if it is a true cannot be supported on remote but the --isolation flag does not seem to be the reason.
There was a problem hiding this comment.
my bad, you're right, --isolation as a flag works fine on remote. The issue is the second part of the test added in containers/buildah#6697 which uses the BUILDAH_ISOLATION env var:
BUILDAH_ISOLATION=chroot run_buildah 125 build --network=none $WITH_POLICY_JSON ${TEST_SCRATCH_DIR}
expect_output --substring "cannot set --network other than host with --isolation chroot"
The BUILDAH_ISOLATION env var is not propagated to the server via podman-remote. On remote, line 124 in cmd/podman/common/build.go resets the isolation default to "", so the env var silently has no effect:
// Unset the isolation default as we never want to send this over the API
// as it can be wrong (root vs rootless).
_ = flags.Lookup("isolation").Value.Set("")Here's the exact behavior difference:
# Local podman - works correctly:
$ BUILDAH_ISOLATION=chroot ./bin/podman build --network=none /dev/null
Error: cannot set --network other than host with --isolation chroot
# podman-remote - env var silently ignored, wrong error:
$ BUILDAH_ISOLATION=chroot ./bin/podman-remote build --network=none /dev/null
Error: context must be a directory: "/dev/null"
The test expects "cannot set --network other than host with --isolation chroot" but on remote it never gets that error because the env var has no effect. Updated the skip reason to "BUILDAH_ISOLATION env var not propagated via podman-remote" to be precise.
03f4da6 to
df4f9f2
Compare
Update download.FromURL call for new signature The download.FromURL function in container-libs/common now requires a context.Context and download.Options parameter. rootlessport: clarify RootlessCNI comment Update the comment for the RootlessCNI conditional to clarify that the flag is for rootless bridge networking, not CNI specifically. The bool is set when netStatus != nil in slirp4netns and will be removed when slirp4netns and rootlessport are fully dropped. Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
Update comments that reference CNI as a network backend since it has been removed. Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
The CNI_CONFIG_DIR environment variable is no longer relevant now that CNI support has been removed. Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
The cni build tag for FreeBSD is no longer needed now that CNI support has been removed from the codebase. Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
The BUILDAH_ISOLATION env var is not propagated to the server via podman-remote. The buildah bud test (added in buildah PR containers#6697) sets BUILDAH_ISOLATION=chroot to verify the --network conflict, which silently has no effect on remote, causing the test to fail. Ref: containers/buildah#6697 Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
df4f9f2 to
52bf071
Compare
Checklist
Ensure you have completed the following checklist for your pull request to be reviewed:
commits. (
git commit -s). (If needed, usegit commit -s --amend). The author email must matchthe sign-off email address. See CONTRIBUTING.md
for more information.
Fixes: #00000in commit message (if applicable)make validatepr(format/lint checks)Noneif no user-facing changes)Does this PR introduce a user-facing change?
Depends on containers/container-libs#412 and containers/buildah#6453