17961 Commits

Author SHA1 Message Date
b41aaa9972 [v4.4.1-rhel] Add conditional release-checking system test
Unfortunately on a number of occasions, Podman has been released
officially with a `-dev` suffix in the version number.  Assist in
catching this mistake at release time by the addition of a simple
conditional test.  Note that it must be positively enabled by a
magic env. var. before executing the system tests.

Ref. original PR: https://github.com/containers/podman/pull/26540

Signed-off-by: Chris Evich <cevich@redhat.com>
2025-07-14 12:30:16 -04:00
bdd4a5f15a Merge pull request #25627 from cevich/unbreak_v441-actual-rhel_ci
[v4.4.1-rhel] Partially revert f8bca0f
2025-03-21 14:08:49 +00:00
1ca79bdbaf Re-vendor golang.org/x/crypto from temp. source
This commit re-vendors the module from a temporary source, and moves to
an earlier, patched version to address CVE-2025-22869.  Prior to this
commit, building podman fails due to platform dependence on golang 1.18
- the version currently used to build for RHEL.

In the future, it is intended that the RHEL platform will migrate to a
newer golang toolchain.  This will enable re-vendoring the crypto module
again back to the authoritative upstream source.  Thus removing the need
for the temporary fork.

Resolves: RHEL-81300 RHEL-81322

Signed-off-by: Chris Evich <cevich@redhat.com>
2025-03-21 09:16:15 -04:00
03b53d3d59 Partially revert f8bca0f
The Fedora-37 CI VMs used prior to f8bca0f closely matched RHEL-8.8
which is the intended destination of this v4.4.1-rhel release branch.
Importantly this change, along with one or more future commits
(53a8ef8..b9110a1) lead to downstream build failures on RHEL 8.8,
and reproduce using the original Fedora-37 CI VMs. In other words,
leaving the F37 CI VMs in place would have allowed these failures
to be caught during upstream rather than downstream testing.

Signed-off-by: Chris Evich <cevich@redhat.com>
2025-03-19 11:09:00 -04:00
b9110a122f Merge pull request #25578 from Luap99/v4.4.1-rhel-crypto
[v4.4.1-rhel] CVE-2025-22869: replace crypto with github.com/openshift/golang-crypto@v0.33.openshift.1
2025-03-17 17:29:56 +00:00
0d24dfef44 vendor: replace crypto with github.com/openshift/golang-crypto@v0.33.openshift.1
The go 1.23 build requirement is to new for the older branches, switch
to a fork maintained by openshift.

Fixes: CVE-2025-22869
Fixes: https://issues.redhat.com/browse/RHEL-81322
Fixes: https://issues.redhat.com/browse/RHEL-81300
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-03-13 17:41:35 +01:00
4218941608 Revert "vendor: bump to golang.org/x/crypto@v0.36.0"
This reverts commit 53a8ef826491d1d4aa043e84a501bfa779656f5c.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-03-13 17:41:27 +01:00
a39f9501cf Merge pull request #25541 from Luap99/v4.4.1-rhel-crypto
[v4.4.1-rhel] CVE-2025-22869: bump to golang.org/x/crypto@v0.36.0
2025-03-12 08:47:15 +00:00
2c7ea37cd9 cirrus: remove CI_DESIRED_NETWORK check
We only build test and it is not set anymore.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-03-11 19:46:25 +01:00
519e649614 cirrus: remove UBUNTU_NAME
We don't use it and set in in the cirrus.yml anymore.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-03-11 19:38:17 +01:00
53a8ef8264 vendor: bump to golang.org/x/crypto@v0.36.0
Fixes: CVE-2025-22869
Fixes: https://issues.redhat.com/browse/RHEL-81322
Fixes: https://issues.redhat.com/browse/RHEL-81300
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-03-11 19:18:38 +01:00
f8bca0fe45 cirrus: only run single build
Update cirrus.yml to the latest image based of 5.4-rhel, then disable
validate as there no point for it when we do backports. And only
perform a single build on the f41.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-03-11 19:18:33 +01:00
65e9d1f67a Merge pull request #25255 from TomSweeneyRedHat/dev/tsweeney/buildah-1.29.5-v4.4.1-rhel
[v4.4.1-rhel] CVE-2024-11218 Fix
2025-02-07 10:41:25 +00:00
0b9f534a2b [v4.4.1-rhel] CVE-2024-11218 Fix
This fixes CVE-2024-11218 by vendoring in Buidlah v1.29.5 which
has the actual fixes within it.

Fixes: https://issues.redhat.com/browse/OCPBUGS-44538,
https://issues.redhat.com/browse/OCPBUGS-44537,
https://issues.redhat.com/browse/OCPBUGS-44539,
https://issues.redhat.com/browse/RHEL-67603, https://issues.redhat.com/browse/RHEL-67597

[NO NEW TESTS NEEDED]

Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
2025-02-06 18:50:21 -05:00
c0aafc4a58 Merge pull request #24360 from Luap99/cirrus-remove-tests-4.4
[v4.4.1-rhel] cirrus: remove functional tests
2024-10-24 17:42:36 +00:00
0245907b7c cirrus: remove functional tests
As discussed at the cabal October 8, 2024 we have no need for these
tests on RHEL branches. The work to maintain them is higher than it is
worth it. We also do not test RHEL but rather some outdated frozen
fedora image build from the time we created the branch.

Therefore we gain little value from them especially as all the internal
Red Hat QE is testing it anyways again on the proper RHEL builds.

So simply delete all the stuff we no longer need:
 - alt builds, no point in windows/macos testing and other arches
 - all the functional tests
 - the build success task (not needed as there is nothing after it
   anymore)
 - the swagger task, we do not use the swagger from the rhel branches

Fixes: https://issues.redhat.com/browse/RUN-2315

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-10-24 16:23:09 +02:00
869aba4a76 Merge pull request #24313 from dashea/CVE-2024-9675-buildah-revendor
[v4.4.1-rhel] Update buildah for CVE-2024-9675
2024-10-22 09:08:40 +00:00
638400242d [v4.4.1-rhel] Update buildah for CVE-2024-9675
Addresses:
https://issues.redhat.com/browse/RHEL-62386
https://issues.redhat.com/browse/RHEL-62377

[NO NEW TESTS NEEDED]

Signed-off-by: David Shea <dshea@redhat.com>
2024-10-18 13:37:25 -04:00
55fc954493 Merge pull request #24017 from TomSweeneyRedHat/dev/tsweeney/v4.4.1-rhel-cve-2024-3727
[v4.4.1-rhel] CVE-2024-3727 & stats
2024-09-19 22:49:11 +00:00
2c2d84f2b7 [v4.4.1-rhel] CVE-2024-3727 & stats
Addresses CVE-2024-3727 and Podman stats takes pagecache into account

Fixes: https://issues.redhat.com/browse/OCPBUGS-37008
       https://issues.redhat.com/browse/OCPBUGS-37010
       https://issues.redhat.com/browse/OCPBUGS-37011

Also addresses #1642 in the v4.4.1-rhel branch

Fixes: https://issues.redhat.com/browse/RHEL-16376

Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
2024-09-19 12:07:38 -04:00
85c2a4fb32 Merge pull request #23266 from TomSweeneyRedHat/dev/tsweeney/accel244-v4.4.1-rhel
[v4.4.1-rhel] builds try to write to additionalImageStore
2024-07-22 19:22:13 +00:00
a90356fd8d [v4.4.1-rhel] builds try to write to additionalImageStore
... read-only locataion

This vendors in c/storage v1.45.7 to address this issue in RHEL 8.8/9.2: containers/storage#1733

This addresses: https://issues.redhat.com/browse/RHEL-41079 and https://issues.redhat.com/browse/ACCELFIX-243

Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
2024-07-22 11:27:54 -04:00
f134850763 [v4.4.1-rhel] test/system: fix mount external container test
Checking for the mountdir is not relevent, a recent c/storage change[1] no
longer deletes the mount point directory so the check will cause a false
positive. findmnt exits 1 when the given path is not a mountpoint so
let's use that to check.

[1] 3f2e81abb3

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-07-22 11:27:54 -04:00
32c1c30af0 [v4.4.1-rhel] Change images_test expect from 10 to 9
I'm not exactly sure what is happening here, but this call
```
result := podmanTest.Podman([]string{"images", "-q", "-f", "reference=quay.io/libpod/*"})
```
in the test/e2e/images-test.go in this test
```
It("podman images filter reference", func()
```

is now sending back 10 instead of 9 objects.  This was a change
that @edsantiago also made in https://github.com/containers/podman/pull/21356

After the other adjustments I made to the tests to right them,
this seemed to be the last issue.

Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
2024-07-20 16:50:49 -04:00
54326f49e4 [v4.4.1-rhel] CI: stop using registry.k8s.io
It's flaky.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-07-20 16:44:53 -04:00
cbe3e18798 [v4.4.1-rhel] *: migrate image registry to registry.k8s.io
This change is a part of the bigger umbrella issue: https://github.com/kubernetes/k8s.io/issues/4780
Currently, we need this change to get in https://github.com/cri-o/cri-o/pull/6742,
which is failing in CI due to inconsistent vendoring.

Signed-off-by: Sohan Kunkerkar <sohank2602@gmail.com>
2024-07-20 16:44:53 -04:00
fe54ad34e8 Merge pull request #23335 from TomSweeneyRedHat/dev/tsweeney/retryable-4.4.1-rhel
[v4.4.1-rhel] CVE-2024-6104 retryablehttp
2024-07-19 14:35:35 +00:00
a55bdc2caf [v4.4.1-rhel] CVE-2024-6104 retryablehttp
Fixes CVE-2024-6104 which bumps github.com/hashicorp/go-retryablehttp to
v0.7.7.

Addresses:
https://issues.redhat.com/browse/OCPBUGS-36116
https://issues.redhat.com/browse/OCPBUGS-36117
https://issues.redhat.com/browse/OCPBUGS-36118
https://issues.redhat.com/browse/RHEL-44858
https://issues.redhat.com/browse/RHEL-44880

[NO NEW TESTS NEEDED]

Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
2024-07-18 19:55:40 -04:00
7a4fe43454 Merge pull request #23184 from mheon/fix_cve_2024_37298_441rhel
[v4.4.1-rhel] Fix CVE-2024-37298
2024-07-18 17:45:40 +00:00
7a0847859a Update gorilla/mux to v1.4.1 to address CVE-2024-37298
Ref: RHEL-45918

Signed-off-by: Matt Heon <mheon@redhat.com>
2024-07-03 14:19:52 -04:00
38ccfa2b33 Merge pull request #23089 from TomSweeneyRedHat/dev/tsweeney/accel250-v4.4.1-rhel
[v4.4.1-rhel] Ensure that containers do not get stuck in stopping
2024-06-28 16:13:55 +00:00
8f1e58d9f8 [v4.4.1-rhel] Ensure that containers do not get stuck in stopping
The scenario for inducing this is as follows:
1. Start a container with a long stop timeout and a PID1 that
   ignores SIGTERM
2. Use `podman stop` to stop that container
3. Simultaneously, in another terminal, kill -9 `pidof podman`
   (the container is now in ContainerStateStopping)
4. Now kill that container's Conmon with SIGKILL.
5. No commands are able to move the container from Stopping to
   Stopped now.

The cause is a logic bug in our exit-file handling logic. Conmon
being dead without an exit file causes no change to the state.
Add handling for this case that tries to clean up, including
stopping the container if it still seems to be running.

Fixes #19629

Addresses: https://issues.redhat.com/browse/ACCELFIX-250

Signed-off-by: Matt Heon <mheon@redhat.com>
Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
2024-06-24 18:37:06 -04:00
f1c4871edf Merge pull request #22618 from cevich/v4.4.1-rhel_fix_artifacts
[v4.4.1-rhel] Fix artifacts task failure
2024-05-07 12:46:18 +00:00
35cf46d43d [v4.4.1-rhel] Fix artifacts task failure
PR #22540 removed the job that generated the (useless) benchmark data
generation.  However it neglected to stop addition of the data to the
output artifacts.  Fix this.

Signed-off-by: Chris Evich <cevich@redhat.com>
2024-05-06 10:59:19 -04:00
c8a5fd129b Merge pull request #22540 from cevich/v4.4.1-rhel_disable_machine
[v4.4.1-rhel] CI Maintenance: Disable machine tests
2024-04-30 12:21:38 +00:00
b97b539f60 CI Maintenance: Disable machine tests
Older versions of podman machine do not support being run against the
latest version of the machine VM images.  As there is no built-in
provision to pin older machine VM image versions, these tests will
simply fail forever.  Disable them.

Also cleanup a long since disabled task.

Signed-off-by: Chris Evich <cevich@redhat.com>
2024-04-29 14:59:07 -04:00
b09f9668cf Merge pull request #22338 from TomSweeneyRedHat/dev/tsweeney/cve-jose-v4.4.1-rhel
[v4.4.1-rhel] Bump ocicrypt and go-jose CVE-2024-28180
2024-04-19 13:02:37 +00:00
788303370e [v4.4.1-rhel] Bump ocicrypt and go-jose CVE-2024-28180
Bump github.com/go-jose/go-jose to v3.0.0 and
github.com/containers/ocicrypt to v1.1.10

Addresses: CVE-2024-28180
https://issues.redhat.com/browse/OCPBUGS-30785
https://issues.redhat.com/browse/OCPBUGS-30786
https://issues.redhat.com/browse/OCPBUGS-30787

Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
2024-04-18 16:24:44 -04:00
661113d391 Merge pull request #20906 from lsm5/v4.4.1-rhel-fr
v4.4.1-rhel backports
2024-04-16 18:07:07 +00:00
0ef28c0dad remote,test: remove .dockerignore which is a symlink
It seems certain test infrastructure prevents cloning repo which
contains symlink outside of the repo itself, generate symlink for such
test by the testsuite itself just before running test and remove it when
test is completed.

Signed-off-by: Aditya R <arajan@redhat.com>
(cherry picked from commit 607aff55fa1a3b80328e8010049380728fde1d62)
Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
2024-04-16 09:05:59 -04:00
a74493f9ad CI fixes from Chris Evich and Ed Santiago
Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
2024-04-15 14:51:11 -04:00
a6508a2568 Merge pull request #22286 from TomSweeneyRedHat/dev/tsweeney/v4.4.1-rhel_inspect_dev
[v4.4.1-rhel] inspect: ignore ENOENT during device lookup
2024-04-06 07:10:59 -04:00
b1442ba30c [v4.4.1-rhel] inspect: ignore ENOENT during device lookup
When we walk the /dev tree we need to lookup all device paths. Now in
order to get the major and minor version we have to actually stat each
device. This can again fail of course. There is at least a race between
the readdir at stat call so it must ignore ENOENT errors to avoid
the race condition as this is not a user problem. Second, we should
also not return other errors and just log them instead, returning an
error means stopping the walk and returning early which means inspect
fails with an error which would be bad.

Also there seems to be cases were ENOENT will be returned all the time,
e.g. when a device is forcefully removed. In the reported bug this is
triggered with iSCSI devices.

Because the caller does already lookup the device from the created map
it reports a warning there if the device is missing on the host so it
is not a problem to ignore a error during lookup here.

[NO NEW TESTS NEEDED] Requires special device setup to trigger
consistentlyand we cannot do that in CI.

Original Fixed https://issues.redhat.com/browse/RHEL-11158

This fixes: https://issues.redhat.com/browse/RHEL-20488

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
2024-04-05 16:18:05 -04:00
981e986f89 Merge pull request #22194 from TomSweeneyRedHat/cve-v4.4.1-rhel
[v4.4.1-rhel] Bump Buildah to v1.29.3 CVE-2024-1753
2024-03-28 19:32:32 +00:00
e79c35238e [v4.4.1-rhel] Bump Buildah to v1.29.3 CVE-2024-1753
As the title says, buming to Buildah v1.29.3 to address:
CVE-2024-1753
https://issues.redhat.com/browse/RHEL-26762 and probably another card
TBD

[NO NEW TESTS NEEDED]

Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
2024-03-27 20:55:27 -04:00
80daf82887 Merge pull request #22059 from TomSweeneyRedHat/dev/tsweeney/deadlockfix_4.4.1
[v4.4.1-rhel] libpod: fix deadlock while parallel container create
2024-03-18 15:49:08 +00:00
9ef352adfc [v4.4.1-rhel] libpod: fix deadlock while parallel container create
Cherry pick from #20329
Addresses: https://issues.redhat.com/browse/RHEL-14744 and
https://issues.redhat.com/browse/RHEL-14743

When containers are created with a named volume it can deadlock because
the create logic tried to lock all volumes in a loop, this is fine if it
only ever creates a single container at any given time. However because
we multiple containers can be created at the same time they can cause a
deadlock between the volumes. This is because the order of the loop is
not stable, in fact it is based on the order of how the volumes were
specified on the cli.

So if you create two containers at the same time with
`-v vol1:/dir2 -v vol2:/dir2` and the other one with
`-v vol2:/dir2 -v vol1:/dir1` then there is chance for a deadlock.

Now one solution could be to order the volumes to prevent the issue but
the reason for holding the lock is dubious. The goal was to prevent the
volume from being removed in the meantime. However that could still
have happend before we acquired the lock so it didn't protect against
that.

Both boltdb and sqlite already prevent us from adding a container with
volumes that do not exists due their internal consistency checks.
Sqlite even uses FOREIGN KEY relationships so the schema will prevent us
from doing anything wrong.

The create code currently first checks if the volume exists and if not
creates it. I have checked that the db will guarantee that this will not
work:
Boltdb: `no volume with name test2 found in database when adding container xxx: no such volume`
Sqlite: `adding container volume test2 to database: FOREIGN KEY constraint failed`

Keep in mind that this error is normally not seen, only if the volume is
removed between the volume exists check and adding the container in the
db this messages will be seen wich is an acceptable race and a
pre-existing condition anyway.

[NO NEW TESTS NEEDED] Race condition, hard to test in CI.

Fixes #20313

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
2024-03-15 16:13:29 -04:00
284c44d04f remote,build: error if containerignore is symlink
Drop support for remote use-cases when `.containerignore` or
`.dockerignore` is a symlink pointing to arbitrary location on host.

Signed-off-by: Aditya R <arajan@redhat.com>
2024-03-13 20:02:10 +05:30
a0fcaa87b5 Merge pull request #21662 from TomSweeneyRedHat/dev/tsweeney/4.4.1-rhel_net_10
[v4.4.1-rhel] Bump golang.org/x/net to v0.13.0
2024-02-15 11:46:46 +00:00
c651132ef2 [v4.4.1-rhel] Bump golang.org/x/net to v0.13.0
As the title says.  Bump golang.org/x/net to v0.13.0.

Addresses: https://issues.redhat.com/browse/OCPBUGS-17313

CVE-2023-3978

[NO NEW TESTS NEEDED]
Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
2024-02-14 15:32:07 -05:00