Commit graph

25966 commits

Author SHA1 Message Date
Giuseppe Scrivano
c29fde2656
libpod: correctly map UID/GID for existing dirs
if the target mount path already exists and the container uses a user
namespace, correctly map the target UID/GID to the host values before
attempting a chown.

Closes: https://github.com/containers/podman/issues/21608

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2024-02-12 23:04:24 +01:00
openshift-merge-bot[bot]
fcd69c997e
Merge pull request #21542 from jakecorrenti/bump-gvproxy
Enable passing logfile to gvproxy
2024-02-12 21:49:41 +00:00
openshift-merge-bot[bot]
3691f84701
Merge pull request #21532 from rhatdan/docker
[CI:DOCS] Handle DOCKER_HOST environment for podman-docker package
2024-02-12 21:46:55 +00:00
openshift-merge-bot[bot]
c711d87f8a
Merge pull request #21562 from cevich/enforcing_mac_tests_again
Enforcing mac tests
2024-02-12 21:41:40 +00:00
openshift-merge-bot[bot]
01bd79b371
Merge pull request #21523 from umohnani8/memory-final
Use persist dir for oom file
2024-02-12 21:38:43 +00:00
openshift-merge-bot[bot]
1e006b2672
Merge pull request #21583 from Luap99/scp-port
image scp: don't require port for ssh URL
2024-02-12 21:35:56 +00:00
openshift-merge-bot[bot]
0aa04ed8c4
Merge pull request #21612 from giuseppe/clarify-git-url
docs: clarify when a URL is treated as a git repo
2024-02-12 21:33:11 +00:00
openshift-merge-bot[bot]
271a5199f2
Merge pull request #21420 from gordonmessmer/scp-no-mktemp
podman-image-scp: Load images without the use of a temporary file.
2024-02-12 21:30:26 +00:00
Brent Baude
2430fc71a0 Allow podman machine to download from oci registry
this pr represents a shift in how we download podman machine images.
these images will now be stored in oci registry and will replace the
default method of downloading an image.  you can still use a reference
to a disk image as a path or url too with the --image-path switch.

the final registry and location of the images has not been determined;
and will need to be updated in podman as well.

i dont think we need to allow --image-path to accept a registry/image
for the podman 5.0 release.  i do think there will be demand for this.

upgrades also need to be plumbed.  for example, updating from an oci
registry.

once we make decisions on final image locations/registrties as well as
some behaviors of init and the oci pull, we must update the machine-init
documentation.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2024-02-12 15:19:34 -06:00
Daniel J Walsh
ad55ba6eb2
Handle DOCKER_HOST environment for podman-docker package
Rootless users should be defaulted to point DOCKER_HOST at
$XDG_RUNTIME_DIR/podman/podman.sock

When podman-docker package is installed.

[NO NEW TESTS NEEDED]

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2024-02-12 16:05:38 -05:00
Daniel J Walsh
36853c0d06
Consistant handling DESTDIR variable expansion
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2024-02-12 16:03:49 -05:00
Ed Santiago
5eb801a562 Bump CI VMs to ones with netavark 1.10.3
And, runc-1.12 broke our seccomp e2e tests (runc now calls getcwd(),
which is the dummy syscall blocked for testing seccomp). Switch
to blocking link() instead.

Also, disable v4.1.0 upgrade tests. They're hanging, and I have
no idea why, and have wasted most of a day debugging.

Fixes: #21546

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-02-12 13:55:03 -07:00
Matt Heon
f7f4d1064d Fix the build on main
[NO NEW TESTS NEEDED]

Signed-off-by: Matt Heon <mheon@redhat.com>
2024-02-12 14:34:46 -05:00
openshift-merge-bot[bot]
49aba43234
Merge pull request #21573 from baude/nofail
Don't panic on podman4 machine configs
2024-02-12 18:10:55 +00:00
openshift-merge-bot[bot]
c524da252e
Merge pull request #21597 from n1hility/wsl-refactor
Complete WSL implementation in Podman 5
2024-02-12 18:05:45 +00:00
Gordon Messmer
eb8428df59 podman-image-scp: Load images without the use of a temporary file.
The default location for temporary files created by mktemp may not
have enough space for an image.  Use the new SSH functions which
support an input reader to make the code simpler, more reliable,
and more efficient.

[NO NEW TESTS NEEDED]

Signed-off-by: Gordon Messmer <gordon.messmer@gmail.com>
2024-02-12 09:25:43 -08:00
Jason T. Greene
f8847ea047 Improve comments on waitOnProcess
Signed-off-by: Jason T. Greene <jason.greene@redhat.com>
2024-02-12 09:17:56 -06:00
Brent Baude
d3328d4f32 Don't panic on podman4 machine configs
we should not panic podman when it has to deal with a podman4 machine
config.  instead, we throw a soft error for `machine ls` and in all
other cases, we throw a hard error stating that the machine config is
incompatible.

a future PR will provide instructions on how to recover from this.
current idea is something like `podman machine reset` which blows
everything away machine-wise.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2024-02-12 09:10:46 -06:00
openshift-merge-bot[bot]
a7b20b6169
Merge pull request #21551 from baude/turnmacbackon
Re-enable testing
2024-02-12 15:06:38 +00:00
Chris Evich
00180bd5b3
Enforce podman-machine mac CI results
Followup to https://github.com/containers/podman/pull/21551

Note: Fixed indentation of podman-machine mac task.

Signed-off-by: Chris Evich <cevich@redhat.com>
2024-02-12 09:28:23 -05:00
Urvashi Mohnani
667311c7d5 Use persist dir for oom file
Conmon writes the exit file and oom file (if container
was oom killed) to the persist directory. This directory
is retained across reboots as well.
Update podman to create a persist-dir/ctr-id for the exit
and oom files for each container to be written to. The oom
state of container is set after reading the files
from the persist-dir/ctr-id directory.
The exit code still continues to read the exit file from
the exits directory.

Signed-off-by: Urvashi Mohnani <umohnani@redhat.com>
2024-02-12 09:13:39 -05:00
openshift-merge-bot[bot]
9b7568619b
Merge pull request #21533 from Luap99/podman-connections-doc
document new connection/farm storage location
2024-02-12 13:46:52 +00:00
Giuseppe Scrivano
1f8a69bc9e
docs: clarify when a URL is treated as a git repo
Closes: https://github.com/containers/podman/issues/21605

[CI:DOCS] clarify podman build git repo handling

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2024-02-12 11:10:33 +01:00
openshift-merge-bot[bot]
6d107a26fb
Merge pull request #21604 from baude/springclean
Minor cleanup from podman 4
2024-02-12 09:06:34 +00:00
Brent Baude
bb7d8fdc41 Workaround connection hangups in start/stop racing
Signed-off-by: Jason T. Greene <jason.greene@redhat.com>
2024-02-11 17:04:15 -06:00
Jason T. Greene
09b86e26d1 Improve robustness of pipe checks
Improve error reporting on ssh readiness check

Signed-off-by: Jason T. Greene <jason.greene@redhat.com>
2024-02-11 17:04:09 -06:00
Jason T. Greene
487219d809 Complete WSL implementation, refactor a few areas
Also addresses a number of issues:
- StopHostNetworking isn't plumbed, win-sshproxy leaks on hyperv
- Wait api and print output doesn't work properly on Windows
- API forwarding doesn't work on WSL
- Terminal corruption with after start/stop on Windows
- Gvproxy is forcefully killed vs gracefully quit
- Switching rootful/rootless does not update /var/run/docker.sock on the guest
- File already closed error on init
- HyperV backend is publishing Unix sockets when it should be named pipes
- User-mode networking doesn't always work
- Stop state outside of lock boundaries
- WSL blocks parallel machined (should be supported)

[NO NEW TESTS NEEDED]

Signed-off-by: Jason T. Greene <jason.greene@redhat.com>
2024-02-11 12:58:11 -06:00
Brent Baude
d7cb66492b wsl - wip
Signed-off-by: Brent Baude <bbaude@redhat.com>
2024-02-11 12:58:11 -06:00
openshift-merge-bot[bot]
7c7b4430a5
Merge pull request #21603 from baude/hypervfailifvmexists
Fail if vm exists in hyperv already
2024-02-11 18:40:14 +00:00
Brent Baude
e74d268bf2 Minor cleanup from podman 4
This PR is only a few cleanup items where code is no longer used.  More
to come I'm sure

[NO NEW TESTS NEEDED]

Signed-off-by: Brent Baude <bbaude@redhat.com>
2024-02-11 09:29:13 -06:00
Brent Baude
2a61998f07 Fail if vm exists in hyperv already
Fix a bug where if a vm exists, created by some other process/user, and
you attempt to make a podman machine with the same name.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2024-02-10 14:49:34 -06:00
Brent Baude
477cb90a30 Update .cirrus.yml
Co-authored-by: Chris Evich <cevich@redhat.com>
Signed-off-by: Brent Baude <bbaude@redhat.com>
2024-02-10 14:46:34 -06:00
Brent Baude
325d7f4890 Re-enable mac testing
we were fighting a flake earlier, so the mac test was removed again and
the suspected commit was removed.  this turns the test back on so we can
see if we pass cleanly.

[NO NEW TESTS NEEDED]

Signed-off-by: Brent Baude <bbaude@redhat.com>
2024-02-10 13:32:23 -06:00
Maurizio Porrato
cb81da9bee
kube play: always pull when both imagePullPolicy and tag are missing
Align the behaviour of `podman kube play file.yaml` to Kubernetes' by forcing
an image pull when `imagePullPolicy` is omitted and the container image does
not specify a tag.

Signed-off-by: Maurizio Porrato <mporrato@redhat.com>
2024-02-10 17:49:26 +00:00
openshift-merge-bot[bot]
4ff00f46b2
Merge pull request #21591 from l0rd/crc-copysparse-vendoring
Get CopySparse from github.com/crc-org/crc/
2024-02-09 20:44:41 +00:00
Mario Loriedo
7ecc414678 Vendor crc CopySparse
Added the module github.com/crc-org/crc/ as a dependency.

Updated `decompress.go` and `copy_test.go` in compression
so that `CopySparse` from crc-org/crc/v2/pkg/os is used instead
of the local version in `copy.go`.

Deleted `copy.go` that is not used anymore.

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2024-02-09 19:33:56 +01:00
openshift-merge-bot[bot]
e16d82dbac
Merge pull request #21441 from cevich/win_lint
Windows-cross linting
2024-02-09 18:08:01 +00:00
openshift-merge-bot[bot]
abb94397f9
Merge pull request #21585 from Luap99/port-range-flake
fix "podman run port forward range" flake
2024-02-09 17:04:32 +00:00
openshift-merge-bot[bot]
3ba674dc36
Merge pull request #21588 from cevich/remove_gitleaks
[CI:DOCS] Remove gitleaks scanning
2024-02-09 17:01:47 +00:00
openshift-merge-bot[bot]
da5bab6257
Merge pull request #21577 from jakecorrenti/get-default-devices-machineconfig
machine: change getDefaultDevices signature
2024-02-09 16:59:04 +00:00
openshift-merge-bot[bot]
a9ba80b675
Merge pull request #21576 from jakecorrenti/usb-passthrough
machine: USB passthrough
2024-02-09 16:56:17 +00:00
openshift-merge-bot[bot]
bc9f1f0f8c
Merge pull request #21586 from containers/renovate/github.com-docker-docker-25.x
fix(deps): update module github.com/docker/docker to v25.0.3+incompatible
2024-02-09 16:53:36 +00:00
Chris Evich
69163af2a0
Remove gitleaks scanning
Ref:
https://github.com/containers/podman/pull/21570#issuecomment-1935709148

This tool is really intended/best used from git pre-commit on developers
local machines, to prevent addition of secret leaks.  When used as a
check against PRs, it tends to turn up more false-positives than helpful
warnings.  There's no good way to fix this, and maintaining the scanner
is an additional burden.  Rather than continue struggling to improve/fix
the situation, let's just remove the tool entirely.

Signed-off-by: Chris Evich <cevich@redhat.com>
2024-02-09 10:09:42 -05:00
Chris Evich
5b6b689764
Remove disused Containerfile and docs
Fixes: #21574

The documentation for this image references a quay repository that
doesn't exist.  It doesn't appear any of these files have been touched
since late 2022. Instead of updating the docs, let's just remove the
source.  It's trivial to recreate if anybody actually needs it for
something.

Users needing to access remote podman can simply use the `podman` binary
present in existing images `quay.io/containers/podman`,
`quay.io/podman/stable`, etc.

Signed-off-by: Chris Evich <cevich@redhat.com>
2024-02-09 10:02:27 -05:00
openshift-merge-bot[bot]
4b1f0b0e37
Merge pull request #21356 from edsantiago/new_testimages
new testimage and systemd-image
2024-02-09 15:01:41 +00:00
renovate[bot]
d676c1b1ae
fix(deps): update module github.com/docker/docker to v25.0.3+incompatible
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-09 14:51:30 +00:00
openshift-merge-bot[bot]
356102b78d
Merge pull request #21495 from containers/renovate/github-issue-labeler-3.x
[skip-ci] Update github/issue-labeler action to v3.4
2024-02-09 14:50:41 +00:00
openshift-merge-bot[bot]
d6ddd9fc21
Merge pull request #21584 from lsm5/rpm-module
[CI:BUILD] rpm: bump podman module version
2024-02-09 14:42:33 +00:00
Lokesh Mandvekar
4413e75f0b
[CI:BUILD] rpm: bump podman module version
[NO NEW TESTS NEEDED]

Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
2024-02-09 19:27:10 +05:30
Paul Holzinger
1ca608ea99
fix "podman run port forward range" flake
For some reason this starting to flake f38. I don't think the issue in
podman rather the test start nc -l in the background so it may not yet
have bound the port in the container when we try to connect.
To fix this simply add some retry logic to nc.

While at it also add pasta to this test and make it use
defer-assertion-failures to run all loop iterations before reporting the
errors.

Fixes #21561 (hopefully)

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-02-09 14:34:34 +01:00