Commit graph

17897 commits

Author SHA1 Message Date
Paul Holzinger
54b070ee6a
podman logs: read journald with passthrough
The passthrough driver is designed for use in systemd units. By default
we can expect systemd to log the output on journald unless the unit sets
differen StandardOutput/StandardError settings.

At the moment podman logs just errors out when the passthrough driver is
used. With this change we will read the journald for the unit messages.
The logic is actually very similar to the existing one, we just need to
change the filter. We now filter by SYSTEMD_UNIT wich equals to the
contianer cgroup, this allows us the actually filter on a per contianer
basis even when multiple contianers are started in the same unit, i.e.
via podman-kube@.service.

The only difference a user will see is that journald will merge
stdout/err into one stream so we loose the separation there.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-03-16 15:32:18 +01:00
Paul Holzinger
c5fa9c50f3
journald: remove initializeJournal()
This was added as hack in commit 6b06e9b77c because the journald logs
code was not able to handle an empty journal. But since commit
767947ab88 this is no longer the case, we correctly use the sd_journal
API and know when the journal is empty.

Therefore we no longer need this hack and it should be removed because
it just adds overhead and an empty journal entry for no good reason.

[NO NEW TESTS NEEDED]

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-03-16 15:25:46 +01:00
Paul Holzinger
6b19e1437c
netavark: only use aardvark ip as nameserver
Since commit 06241077cc we use the aardvark per container dns
functionality. This means we should only have the aardvark ip in
resolv.conf otherwise the client resolver could skip aardvark, thus
ignoring the special dns option for this container.

Fixes #17499

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-03-16 15:23:41 +01:00
Paul Holzinger
d737a815a9
compat API: network create return 409 for duplicate
If the name already exists and CheckDuplicate is set we need to return
409, if CheckDuplicate is not set we return the network without error.

Fixes #17585

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-03-16 15:21:56 +01:00
Paul Holzinger
1a3a5594a0
fix "podman logs --since --follow" flake
The test should make sure the logs --follow call will log entries that
are created in the future when --since is used and doe not include the
container start event. However it seems the timing is to tight. I think
it was possible that CI logged the line before the logs call was made,
thus it is missing because --since excluded it.

I cannot reproduce so I am not 100% on this but we can reopen the issue
if it still happens.

Fixes #17616

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-03-16 15:11:11 +01:00
Paul Holzinger
bd65bf2ed1
system service --log-level=trace: support hijack
When the service is running with trace log level it wraps the
`http.ResponseWriter` to log extra information. The problem is that the
new type does not keep all the functions from the embedded type.
Instead we have to implement them ourselves, however only Write() was
implemented. Thus `Hijack()`could not be called on the writer. To
prevent these issues we would implement all the interfaces that the
inner type supports (Header, WriteHeader, Flush, Hijack).

Fixes #17749

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-03-16 15:10:30 +01:00
Paul Holzinger
8ab00424bc
podman-mac-helper: exit 1 on error
We should return a proper exit code to signal the failure.

[NO NEW TESTS NEEDED] We do have any tests on macOS.

Fixes #17785

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-03-16 15:08:19 +01:00
OpenShift Merge Robot
fc729b2e23
Merge pull request #17809 from lsm5/v4.4-http2-080
[v4.4] bump golang.org/x/net to v0.8.0
2023-03-16 09:24:57 -04:00
Lokesh Mandvekar
badbd8a34c
bump golang.org/x/net to v0.8.0
Resolves: CVE-2022-41723

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2023-03-16 15:42:52 +05:30
Daniel J Walsh
a5d4551cff
Merge pull request #17689 from openshift-cherrypick-robot/cherry-pick-17686-to-v4.4
[v4.4] Fix package restore of shadow-utils on Windows
2023-03-04 11:29:27 -05:00
Jason T. Greene
36ab43f773 Fix package restore
Signed-off-by: Jason T. Greene <jason.greene@redhat.com>
2023-03-03 18:46:08 +00:00
OpenShift Merge Robot
73ce3c61c1
Merge pull request #17641 from dcermak/quadlet-dont-set-runtime-backport
[v4.4] Quadlet - use the default runtime
2023-02-27 14:48:13 +01:00
Ygal Blum
df0fe4fcc7
Quadlet - use the default runtime
Do not set the runtime when processing a .container file
Let Podman choose the runtime based on its configuration

Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
Signed-off-by: Dan Čermák <dcermak@suse.com>
(cherry picked from commit 0d75854c52)
2023-02-27 12:04:48 +01:00
OpenShift Merge Robot
a302d386a1
Merge pull request #17618 from ashley-cui/442
Bump to v4.4.2
2023-02-23 20:14:57 +01:00
Ashley Cui
594d488b82 Bump to v4.4.3-dev
Signed-off-by: Ashley Cui <acui@redhat.com>
2023-02-23 10:59:50 -05:00
Ashley Cui
74afe26887
Bump to v4.4.2
Signed-off-by: Ashley Cui <acui@redhat.com>
2023-02-23 10:59:21 -05:00
Ashley Cui
87a1c2701a Release notes for v4.4.2
And an adjustment to release notes for v4.4.1

Signed-off-by: Ashley Cui <acui@redhat.com>
2023-02-23 10:58:56 -05:00
OpenShift Merge Robot
266ce9a3a1
Merge pull request #17557 from openshift-cherrypick-robot/cherry-pick-17554-to-v4.4
[v4.4] [CI:BUILD] Revert "CI: Temporarily disable all AWS EC2-based tasks"
2023-02-18 13:54:00 +01:00
Chris Evich
3abff420a9 Revert "CI: Temporarily disable all AWS EC2-based tasks"
This reverts commit 7f8bc6f510.

Signed-off-by: Chris Evich <cevich@redhat.com>
2023-02-17 18:42:01 +00:00
OpenShift Merge Robot
2d68f21a13
Merge pull request #17553 from openshift-cherrypick-robot/cherry-pick-17548-to-v4.4
[v4.4] kube play: only enforce passthrough in Quadlet
2023-02-17 17:47:52 +01:00
OpenShift Merge Robot
9168027b08
Merge pull request #17552 from openshift-cherrypick-robot/cherry-pick-17544-to-v4.4
[v4.4] Emergency fix for man pages: check for broken includes
2023-02-17 16:53:15 +01:00
OpenShift Merge Robot
f60a6cd0d2
Merge pull request #17549 from openshift-cherrypick-robot/cherry-pick-17525-to-v4.4
[v4.4] quadlet system tests: add useful defaults, logging
2023-02-17 16:50:37 +01:00
OpenShift Merge Robot
f17495e141
Merge pull request #17532 from mheon/backport_17528_44
Backport #17528 to v4.4
2023-02-17 16:47:40 +01:00
Valentin Rothberg
8322cab918 kube play: only enforce passthrough in Quadlet
Only enforce the passthrough log driver for Quadlet. Commit 68fbebf
introduced a regression on the `podman-kube@` template as `podman logs`
stopped working and settings from containers.conf were ignored.

Fixes: #17482
Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-02-17 15:01:35 +00:00
Ed Santiago
d69512b98a Emergency fix for man pages: check for broken includes
Somehow the options/secret.md file generated corrupt md which
then generated corrupt .man files. Fix, and add a Makefile
check to prevent this from happening again.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2023-02-17 14:38:19 +00:00
OpenShift Merge Robot
429a00deed
Merge pull request #17551 from openshift-cherrypick-robot/cherry-pick-17541-to-v4.4
[v4.4] CI: Temporarily disable all AWS EC2-based tasks
2023-02-17 15:02:36 +01:00
Chris Evich
9606d7f992 CI: Temporarily disable all AWS EC2-based tasks
An ongoing issue with uploading artifacts is hindering development
progress.  Temporarily disable all aflicted tasks until the problem is
resolved.  Typical error message:

```
Uploading 1 artifacts for
Failed to upload artifacts: Put
...cut...
tls: server selected unsupported protocol version 303
Re-trying to artifacts upload...
```

Signed-off-by: Chris Evich <cevich@redhat.com>
2023-02-17 13:56:00 +00:00
Ed Santiago
ab7a47840f quadlet system tests: add useful defaults, logging
Tests constantly fail with zero indication of why. Fix that.
 - add correct default for $QUADLET path
 - add check to make sure it exists
 - log quadlet commands and their output

Signed-off-by: Ed Santiago <santiago@redhat.com>
2023-02-17 11:18:30 +00:00
Aditya R
805e94b034 volume,container: chroot to source before exporting content
* Utils must support higher level API to create Tar with chrooted into
  directory
* Volume export: use TarwithChroot instead of Tar so we can make sure no
  symlink can be exported by tar if it exists outside of the source
directory.
* container export: use chroot and Tar instead of Tar so we can make sure no
  symlink can be exported by tar if it exists outside of the mointPoint.

[NO NEW TESTS NEEDED]
[NO TESTS NEEDED]
Race needs combination of external/in-container mechanism which is hard to repro in CI.

Closes: BZ:#2168256
CVE: https://access.redhat.com/security/cve/CVE-2023-0778

Signed-off-by: Aditya R <arajan@redhat.com>

<MH: Cherry-pick to v4.4>

Signed-off-by: Matt Heon <mheon@redhat.com>
2023-02-16 11:27:37 -05:00
OpenShift Merge Robot
396c138ce5
Merge pull request #17491 from openshift-cherrypick-robot/cherry-pick-17489-to-v4.4
[v4.4] install sigproxy before start/attach
2023-02-13 16:19:09 -05:00
Valentin Rothberg
321d05aa93 install sigproxy before start/attach
Install the signal proxy before attaching to/starting the container to
make sure there's no race-condition as revealed in the failing start/run
tests in #16901.  The tests had the valid expectation that signal
forwarding works once the container is running.

Further update the tests to account for the attach test where the
expectation is that signal forwarding works once Podman has attached to
container (or even before).

Fixes: #16901
Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
Signed-off-by: Ed Santiago <santiago@redhat.com>
2023-02-13 18:07:46 +00:00
OpenShift Merge Robot
73f52c051b
Merge pull request #17462 from mtrmac/c-image-eof-4.4
[v4.4] Update to c/image 5.24.1
2023-02-10 09:09:48 -05:00
Miloslav Trmač
84521f52d8 Update to c/image 5.24.1
... to include an unexpected EOF workaround.

Signed-off-by: Miloslav Trmač <mitr@redhat.com>
2023-02-09 21:22:52 +01:00
OpenShift Merge Robot
1918d25f46
Merge pull request #17454 from openshift-cherrypick-robot/cherry-pick-17451-to-v4.4
[v4.4] events + container inspect test: RHEL fixes
2023-02-09 14:29:36 -05:00
Ed Santiago
8e5eb9a797 events + container inspect test: RHEL fixes
Primarily, add skip_if_journald_unavailable because RHEL.

Secondarily, reverse a flipped actual/expect assertion
that made it difficult to understand the RHEL failure.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2023-02-09 16:34:06 +00:00
OpenShift Merge Robot
56d5de8bcf
Merge pull request #17439 from ashley-cui/441
Bump to v4.4.1
2023-02-08 15:43:10 -05:00
Ashley Cui
65c4123831 Bump to v4.4.2-dev
Signed-off-by: Ashley Cui <acui@redhat.com>
2023-02-08 14:03:54 -05:00
Ashley Cui
34e8f39332
Bump to v4.4.1
Signed-off-by: Ashley Cui <acui@redhat.com>
2023-02-08 14:03:18 -05:00
Ashley Cui
7431f3d006 Update release notes for Podman 4.4.1
Signed-off-by: Ashley Cui <acui@redhat.com>
2023-02-08 14:01:19 -05:00
OpenShift Merge Robot
1bde07e041
Merge pull request #17429 from openshift-cherrypick-robot/cherry-pick-17027-to-v4.4
[v4.4] Resolve symlink path for qemu directory if possible
2023-02-08 13:03:47 -05:00
OpenShift Merge Robot
393336bd71
Merge pull request #17430 from openshift-cherrypick-robot/cherry-pick-17420-to-v4.4
[v4.4] kube play: do not teardown unconditionally on error
2023-02-08 11:43:05 -05:00
OpenShift Merge Robot
db50458c2b
Merge pull request #17390 from openshift-cherrypick-robot/cherry-pick-17364-to-v4.4
[v4.4] Add missing return after utils.Error()
2023-02-08 10:00:06 -05:00
Valentin Rothberg
68a58c9a12 kube play: do not teardown unconditionally on error
Commit 2f29639bd3 added a UX improvement to cleanup/teardown when
running the specified YAML has failed.  However, the teardown happens
unconditionally such that rerunning the same YAML file will teardown the
previously created workload instead of just failing with a name-conflict
error (e.g., "pod already exists").  The regression popped up testing
the Ansible system role with Podman v4.4.0.

For now, do not teardown at all on error to quickly fix this regression
for the upcoming Podman v4.4.1 release.  The UX improvement is still
desired but must be conditional and only happen on newly created
resources, which probably requires moving it down to the backend.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-02-08 14:30:08 +00:00
Daniel J Walsh
7b5f724824
Merge pull request #17404 from openshift-cherrypick-robot/cherry-pick-17351-to-v4.4
[v4.4]  Install podman-systemd.unit man page, make quadlet discoverable
2023-02-08 09:28:35 -05:00
Nathan Henrie
a1cc3733b1 Resolve symlink path for qemu directory if possible
Fixes https://github.com/containers/podman/issues/17026
Fixes https://github.com/NixOS/nixpkgs/issues/169118

[NO NEW TESTS NEEDED]

Related: https://github.com/NixOS/nixpkgs/pull/163015
Signed-off-by: Nathan Henrie <nate@n8henrie.com>
2023-02-08 14:17:19 +00:00
OpenShift Merge Robot
f5670f01c9
Merge pull request #17371 from openshift-cherrypick-robot/cherry-pick-17356-to-v4.4
[v4.4] oci: bind mount /sys with --userns=(auto|pod:)
2023-02-08 08:19:27 -05:00
OpenShift Merge Robot
5571faa9ed
Merge pull request #17408 from openshift-cherrypick-robot/cherry-pick-17293-to-v4.4
[v4.4] [CI:DOCS] docs: specify order preference for FROM
2023-02-08 07:16:50 -05:00
OpenShift Merge Robot
37f905cc91
Merge pull request #17410 from openshift-cherrypick-robot/cherry-pick-17398-to-v4.4
[v4.4] Quadlet: exit 0 when there are no files to process
2023-02-08 03:57:35 -05:00
OpenShift Merge Robot
168034546d
Merge pull request #17415 from openshift-cherrypick-robot/cherry-pick-17401-to-v4.4
[v4.4] [CI:DOCS] events: document journald identifiers
2023-02-08 03:30:29 -05:00
Valentin Rothberg
c3d781de0c events: document journald identifiers
Document the identifiers used in the journald events backend. Those can
be used to filter Podman events with journalctl and I need them to be
documented for a blog I am writing at the moment.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2023-02-08 01:53:00 +00:00