Commit Graph

18593 Commits

Author SHA1 Message Date
Paul Wallrabe
7382494ca4 Add eBPF snooper that traces the entire fork/exec graph of podman
As long as podman uses a fork/exec model this eBPF program is able to trace the performance of each podman command and the resulting child processes from start to finish. This is an improvement to the already existing podmansnoop eBPF program which only looks at sched_process_exit and enter/exit sys_execve tracepoints.

Signed-off-by: Paul Wallrabe <54737071+raballew@users.noreply.github.com>
2023-04-20 11:30:47 +02:00
OpenShift Merge Robot
5b58246e2f Merge pull request #18254 from Luap99/netns-cleanup
libpod: configureNetNS() tear down on errors
2023-04-18 12:05:10 -04:00
OpenShift Merge Robot
c47ccf28fc Merge pull request #18242 from baude/hypervwaitonstop
HyperV: wait on stop
2023-04-18 11:15:58 -04:00
Paul Holzinger
7e4cd22acb libpod: configureNetNS() tear down on errors
Make sure to tear down the netns again on errors. This is needed when a
later call fails and we do not have already stored the netns in the
container state.

[NO NEW TESTS NEEDED] My ginkgo-v2 PR will catch problem like this once
merged.

Fixes #18205

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-04-18 15:18:05 +02:00
Paul Holzinger
4f93a6eee4 libpod: rootlessNetNs.Cleanup() fix error message
The wrong error was logged.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-04-18 15:14:22 +02:00
Brent Baude
4b8230119e HyperV: wait on stop
When using podman machine with hyperv, stop was releasing the terminal
back top the user prematurely.  This resulted in users being able to run
subsequent commands while the vm was still stopped.  Commands like
machine stop were prone to failing.

[NO NEW TESTS NEEDED]

Signed-off-by: Brent Baude <bbaude@redhat.com>
2023-04-18 08:02:48 -05:00
OpenShift Merge Robot
3c995c2c52 Merge pull request #18238 from lsm5/makefile-release-artifact-target
Makefile: include `release-artifacts` target
2023-04-18 08:26:44 -04:00
OpenShift Merge Robot
e7b9ae4f3b Merge pull request #18236 from baude/vsock0
Enabled network over vsock
2023-04-17 17:25:24 -04:00
OpenShift Merge Robot
15e4189fce Merge pull request #18235 from containers/renovate/github.com-microsoft-go-winio-0.x
fix(deps): update module github.com/microsoft/go-winio to v0.6.1
2023-04-17 17:01:17 -04:00
Lokesh Mandvekar
459f751ae3 Makefile: include release-artifacts target
The current release artifacts generation process is still fairly manual
with a bunch of steps. This commit bundles them all into a single
convenient Makefile target.

The `clean-binaries` target ends up removing `bin/`. So, the artifact
dir has been changed to `release/` instead of the current `bin/` to
avoid breaking other Makefile targets.

Related: https://github.com/containers/podman/issues/18215

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2023-04-17 14:54:20 -04:00
Brent Baude
3222545ad5 Enabled network over vsock
podman machine with Microsoft HyperV will use hvsock on the guest and
vsock on the guest for its networking.  this pr enables the basics for
this to happen as well as changes to ignition to automatically set this
up with network manager.

the vm binary referenced in this pr is in containers/gvisor-tap-vsock
and will need to be added to distributions.

[NO NEW TESTS NEEDED]
Signed-off-by: Brent Baude <bbaude@redhat.com>
2023-04-17 12:34:37 -05:00
renovate[bot]
aec7ce4a10 fix(deps): update module github.com/microsoft/go-winio to v0.6.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-17 17:27:04 +00:00
OpenShift Merge Robot
ef4dbc27b0 Merge pull request #18167 from baude/hypervvsock
Add support for HVSOCK on hyperv
2023-04-17 13:25:45 -04:00
OpenShift Merge Robot
b7fc57ca14 Merge pull request #18226 from arctic-alpaca/main
[CI:DOCS] Update API reference to include v4.5
2023-04-17 12:15:22 -04:00
OpenShift Merge Robot
9676391c4e Merge pull request #18202 from R3DRUN3/main
[CI:DOCS] Add license, release and go report badges
2023-04-17 09:24:11 -04:00
arctic-alpaca
1cac535062 Update API reference to include v4.5
Signed-off-by: arctic-alpaca <67190338+arctic-alpaca@users.noreply.github.com>
2023-04-17 14:52:36 +02:00
OpenShift Merge Robot
5c70641e4f Merge pull request #18209 from mtrmac/no-NewBuffer
Don't use bytes.NewBuffer to read data
2023-04-17 03:19:35 -04:00
OpenShift Merge Robot
625ff8fc3e Merge pull request #18214 from containers/renovate/github.com-vbauerster-mpb-v8-8.x
fix(deps): update module github.com/vbauerster/mpb/v8 to v8.4.0
2023-04-16 06:45:22 -04:00
renovate[bot]
08f137aec2 fix(deps): update module github.com/vbauerster/mpb/v8 to v8.4.0
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-04-15 12:49:03 +00:00
OpenShift Merge Robot
4d9b63752a Merge pull request #18159 from Luap99/network-tutorial
[CI:DOCS] docs: update network tutorial with netavark DHCP support
2023-04-15 08:44:21 -04:00
r3drun3
8e7f98ae65 docs(readme): add status badges and remove hardcoded release info
Signed-off-by: r3drun3 <simone.ragonesi@kiratech.it>
2023-04-15 09:57:18 +02:00
Miloslav Trmač
e9356ba206 Don't use bytes.NewBuffer to read data
The documentation says
> The new Buffer takes ownership of buf, and the
> caller should not use buf after this call.

so use the more directly applicable, and simpler, bytes.Reader instead, to avoid this potentially risky use.

Signed-off-by: Miloslav Trmač <mitr@redhat.com>
2023-04-14 22:40:47 +02:00
Brent Baude
f488d9890c Add support for HVSOCK on hyperv
Windows HyperV uses HVSocks (Windows adaptation of vsock) for
communicating between vms and the host.  Podman machine in Qemu uses a
virtual UDS to signal the host that the machine is booted.  In HyperV,
we can use a HVSOCK for the same purpose.

One of the big aspects of using HVSOCK on Windows is that the HVSOCK
must be entered into the Windows registry.  So now part of init and rm
of a podman machine, entries must be added and removed respectively.
Also duplicates are a no-no.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2023-04-14 13:53:25 -05:00
Paul Holzinger
e7a3236358 docs: update network tutorial with netavark DHCP support
Add instructions on how to start the netavark dhcp proxy. Also list
version requirements.

Fixes #17635

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-04-14 12:16:26 +02:00
OpenShift Merge Robot
6c32bf18d0 Merge pull request #18190 from lsm5/bump-main
bump main to v4.6.0-dev
2023-04-13 17:13:27 -04:00
OpenShift Merge Robot
2b78157935 Merge pull request #18136 from rhatdan/docker
Return title fields as a list
2023-04-13 15:32:43 -04:00
Lokesh Mandvekar
32344952aa bump main to v4.6.0-dev
We now have a v4.5 branch.

[NO NEW TESTS NEEDED]

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2023-04-13 15:26:37 -04:00
OpenShift Merge Robot
16cffcb679 Merge pull request #18187 from cevich/rm_test_install
[CI:DOCS] Remove disused test/install
2023-04-13 14:05:58 -04:00
OpenShift Merge Robot
37cdc2b004 Merge pull request #17898 from lsm5/packit-copr-builds
[CI:BUILD] Packit: Initial Enablement
2023-04-13 13:58:00 -04:00
Chris Evich
54ba17f691 Remove disused test/install
Fixes: https://github.com/containers/podman/pull/18175

Signed-off-by: Chris Evich <cevich@redhat.com>
2023-04-13 12:29:05 -04:00
Daniel J Walsh
1fa4e45a95 Return title fields as a list
Podman is attempting to split the headers returned by the ps
command into a list of headers. Problem is that some headers
are multi-word, and headers are not guaranteed to be split via
a tab. This PR splits the headers bases on white space, and for
the select group of CAPS headers which are multi-word, combines
them back together.

Fixes: https://github.com/containers/podman/issues/17524

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-04-13 11:45:40 -04:00
OpenShift Merge Robot
66498483c1 Merge pull request #18170 from containers/renovate/registry.centos.org-centos-centos-8.x
chore(deps): update registry.centos.org/centos/centos docker tag to v8
2023-04-13 09:38:52 -04:00
OpenShift Merge Robot
2d16f43d4a Merge pull request #18169 from edsantiago/systest_kubero_flake
system tests: fix race in kube-play read-only
2023-04-13 09:36:02 -04:00
Lokesh Mandvekar
be148665c1 [CI:BUILD] Packit: Initial Enablement
This commit adds Packit configuration files which will trigger rpm
builds on copr:`rhcontainerbot/packit-builds` on every PR as well as on
copr:`rhcontainerbot/podman-next` on every commit to main branch.

This commit will ensure main branch is always buildable on all supported
Fedora and CentOS Stream versions for aarch64 and x86_64.
TODO: enable build checks for s390x and ppc64le while ensuring they
don't take too long to build.

The packit builds reuse `buildah.spec.rpkg` present upstream and are
thus independent of Fedora / CentOS dist-git.

This change will remove the need for the current webhook based triggering
of rpm builds on rhcontainerbot/podman-next after commit to main.
That will be instead handled by the `trigger: commit` action added in this
PR. New builds will continue to get posted to the same link so users
don't need to change any existing copr repo configuration.

[NO NEW TESTS NEEDED]

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2023-04-13 08:42:18 -04:00
OpenShift Merge Robot
5e6c0647c0 Merge pull request #18171 from edsantiago/instrument_copyhardlinks
system tests: address COPY-hardlink flake
2023-04-13 05:10:13 -04:00
OpenShift Merge Robot
ca3876ce1e Merge pull request #18178 from ygalblum/quadlet-log-driver
Quadlet - do not set log-driver by default
2023-04-13 04:36:38 -04:00
Ygal Blum
4aced7e3eb Quadlet - do not set log-driver by default
Update e2e tests not to expect the flag
System tests - explicitly set the log driver to be able to parse the output

Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
2023-04-13 09:14:40 +03:00
Ed Santiago
51b582d0ea system tests: address COPY-hardlink flake
Possible cause: on Debian, maybe because of fuse-overlayfs(??),
we sometimes see unexpected inode numbers.

This PR tightens the test logic, so it runs one 'stat' command
in only one podman invocation, then cross-checks multiple lines
of output. I don't know if this will really fix the flake, but
even if it doesn't, it will at least give us much more useful
diagnostic output than before.

And, as long as I'm in here, clean up test, remove duplication,
make error messages distinct (hence more useful), and comment.

Fixes: #17979

Signed-off-by: Ed Santiago <santiago@redhat.com>
2023-04-12 14:58:20 -06:00
renovate[bot]
25d4ecf476 chore(deps): update registry.centos.org/centos/centos docker tag to v8
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-04-12 20:06:45 +00:00
Ed Santiago
31420112ce system tests: fix race in kube-play read-only
Use --restart=no on all created containers. Without this, all
containers spin forever and it's impossible to get a
reliable exit status.

As a side effort, clean up tests, make more robust and maintainable.

Fixes: #18047

Signed-off-by: Ed Santiago <santiago@redhat.com>
2023-04-12 13:56:54 -06:00
OpenShift Merge Robot
c8eb15114b Merge pull request #17854 from matejvasek/enable-test-test_wait_next_exit
test: enable test_wait_next_exit
2023-04-12 14:36:50 -04:00
OpenShift Merge Robot
52948641d0 Merge pull request #17954 from edsantiago/sqlite_containersconf
CI: enable sqlite system tests
2023-04-12 12:02:38 -04:00
OpenShift Merge Robot
2784a693a3 Merge pull request #18164 from containers/renovate/docker-6.x
chore(deps): update dependency docker to v6
2023-04-12 11:32:22 -04:00
renovate[bot]
f544971b76 chore(deps): update dependency docker to v6
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-04-12 14:30:01 +00:00
OpenShift Merge Robot
9333c88243 Merge pull request #18160 from containers/renovate/pyyaml-6.x
Update dependency PyYAML to v6
2023-04-12 10:28:30 -04:00
Ed Santiago
f95276bfaf CI: enable sqlite system tests
In setup, write a containers.conf.d file with db_backend
as specified in .cirrus.yml.

This is actually much scarier and more achy-breaky than
merely "sqlite system tests": it enables sqlite in e2e
tests. ("But wait, we already do that!" -- no, not really.
sqlite in e2e is being done via --db-backend option, and
some podman commands in e2e do not use the standard options.
See #17904.

This is unlikely to get merged any time soon (March, maybe
even April) because sqlite is still too fragile; this will
trigger more flakes than are currently acceptable. Also,
the nasty auto-update flake seems to trigger much more
reliably with sqlite. We need that one fixed.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2023-04-12 07:16:57 -06:00
OpenShift Merge Robot
d45ad05afc Merge pull request #18056 from vrothberg/this-that
test/e2e/systemd_activate_test.go: simplify test
2023-04-12 09:12:54 -04:00
Matej Vasek
d28656403e test: enable test_wait_next_exit
Signed-off-by: Matej Vasek <mvasek@redhat.com>
2023-04-12 14:50:13 +02:00
OpenShift Merge Robot
1ad45d4b58 Merge pull request #18149 from peadar/docker-interval
Use a sane polling interval in WaitContainerDocker
2023-04-12 08:44:37 -04:00
OpenShift Merge Robot
f72e02a432 Merge pull request #18143 from vrothberg/auth-fix
api: auth: fix nil deref
2023-04-12 08:22:35 -04:00