18761 Commits

Author SHA1 Message Date
38c217a0bf pkg/rootless: use catatonit from /usr/libexec/podman
The path was missing a slash between the libexec path and the binary
name. This was never noticed because the code already falls back to a
builtt-in pause process.

Fixes: 71f96c2e6ff7 ("rootless: define LIBEXECPODMAN")

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-04-11 11:00:07 +02:00
bab95de9a2 rootless: make sure we only use a single pause process
Currently --tmpdir changes the location of the pause.pid file. this
causes issues because the c code in pkg/rootless does not know about
that. I tried to fix this[1] by fixing the c code to not use the
shortcut. While this fix worked it will result in many pause processes
leaking in the integrration tests.

Commit ab88632 added this behavior but following the disccusion it was
never the intention that we end up having more than one pause process.
The issues that was trying to fix was caused by somthing else AFAICT,
the main problem seems to be that the pause.pid file parent directory
may not be created when we try to create the pid file so it failed with
ENOENT. This patch fixes it by creating this directory always and revert
the change to no longer depend on the tmpdir value.

With this commit we now always use XDG_RUNTIME_DIR/libpod/tmp/pause.pid
for all podman processes. This allows the c shortcut to work reliably
and should therefore improve perfomance over my other approach.

A system test is added to ensure we see the right behavior and that
podman system migrate actually stops the pause process. Thanks to Ed
Santiago for the improved test to make it work for both `catatonit` and
`podman pause`.

This should fix the issues with namespace missmatches that we can see in
CI as flakes.

[1] https://github.com/containers/podman/pull/18057

Fixes #18057

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-04-11 10:57:46 +02:00
4857c65d3e Merge pull request #18035 from n1hility/flush-config
Update podman to use atomic container and machine config updates
2023-04-11 02:53:42 -04:00
820976a91e Merge pull request #18138 from cevich/use_gha_versions
[CI:DOCS] GHA: Use version instead of SHA for actions
2023-04-10 16:23:07 -04:00
3b2b1441ec Use atomic config writing strategy for podman machine config files
Windows: Flush machine config writes before renaming
Windows: Previously this code was changed to improve atomicity by changing
the persitence approach to a two-step process (write + rename).
However, the first-step write operation was not fully flushed,
leading to the possibility of incomplete writes.

[NO NEW TESTS NEEDED]

Signed-off-by: Jason T. Greene <jason.greene@redhat.com>
2023-04-10 14:57:49 -05:00
67307603b4 Add remaining release notes for v4.5.0-RC2
Signed-off-by: Matt Heon <mheon@redhat.com>
2023-04-10 15:22:42 -04:00
d53871cf12 GHA: Use version instead of SHA for actions
It's nearly impossible for humans to tell semantic-version differences
by looking at a commit sha.  Since all the actions in question come from
github, there's little security/safety benefit to using SHAs.

Signed-off-by: Chris Evich <cevich@redhat.com>
2023-04-10 14:45:36 -04:00
25bc7d161e chore(deps): update dependency containers/automation_images to v20230405
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-04-10 17:35:57 +00:00
1f2775cbdc Merge pull request #18130 from flouthoc/bump-deps
vendor: bump `containers/(storage, buildah, image, common)`
2023-04-10 13:33:44 -04:00
0a89a22c71 Merge pull request #18105 from rhatdan/codespell
Fix up codespell errors
2023-04-10 13:33:04 -04:00
944accffaf build: pass env by reference
Buildah uses a different logic to pass environment variable to executor
now after: https://github.com/containers/buildah/pull/4702/files so
podman should same logic and pass env by reference.

Signed-off-by: Aditya R <arajan@redhat.com>
2023-04-10 20:31:23 +05:30
7edf73dfdf test: retrofit error message
Retrofit error message as per cf56eb1865

Signed-off-by: Aditya R <arajan@redhat.com>
2023-04-10 17:30:54 +05:30
b624ad7572 test/system: expect 12 char for short id
After https://github.com/containers/buildah/pull/4660 buildah
spits a 12 letter image short id instead of 13 so lets honor that.

Signed-off-by: Aditya R <arajan@redhat.com>
2023-04-10 17:30:34 +05:30
260bc3ec4c vendor: bump containers/(storage, common, buildah, image)
Bump containers/(storage, common, buildah and image)

Changes since 2023-01-01:
 - skip mount-cache-selinux-long-name test under remote, with
   a FIXME requesting that someone see if it can be made to work.

 - skip six tests that fail under rootless-remote

 - add new --build-arg-file option:
 - update man page

Squash of:
* cf56eb1865
* 561f082772

Signed-off-by: Ed Santiago <santiago@redhat.com>
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
Signed-off-by: Aditya R <arajan@redhat.com>
2023-04-10 17:30:14 +05:30
c04ccdbc55 Merge pull request #18121 from containers/renovate/actions-stale-8.x
[skip-ci] Update actions/stale action to v8
2023-04-09 07:20:31 -04:00
b3dd2dbf4c Merge pull request #18115 from containers/renovate/actions-setup-go-4.x
[skip-ci] Update actions/setup-go action to v4
2023-04-09 07:17:55 -04:00
8a6dc0a822 Merge pull request #18112 from containers/renovate/github-issue-labeler-2.x
[skip-ci] Update github/issue-labeler action to v2.6
2023-04-09 07:15:18 -04:00
0e35de0e42 Merge pull request #18122 from containers/renovate/actions-upload-artifact-3.x
[skip-ci] Update actions/upload-artifact action to v3
2023-04-09 07:07:34 -04:00
c5a0d86461 [skip-ci] Update actions/upload-artifact action to v3
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-04-09 10:09:56 +00:00
d3cf8ccf84 [skip-ci] Update actions/stale action to v8
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-04-09 07:32:10 +00:00
21fbd5c1ab [skip-ci] Update actions/setup-go action to v4
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-04-08 22:36:07 +00:00
adce98f08f Merge pull request #18104 from rhatdan/docs
[ci:docs] Capitalize all uid,gid and id words that are not options in docs
2023-04-08 07:41:56 -04:00
f3971e4124 [skip-ci] Update github/issue-labeler action to v2.6
Signed-off-by: Renovate Bot <bot@renovateapp.com>
2023-04-08 11:06:49 +00:00
a83f9d1e8f Merge pull request #18100 from containers/dependabot/go_modules/test/tools/golang.org/x/tools-0.8.0
build(deps): bump golang.org/x/tools from 0.7.0 to 0.8.0 in /test/tools
2023-04-08 03:56:38 -04:00
341aa0da54 Merge pull request #18082 from containers/dependabot/go_modules/golang.org/x/text-0.9.0
build(deps): bump golang.org/x/text from 0.8.0 to 0.9.0
2023-04-08 03:53:59 -04:00
a96c28da91 Merge pull request #18044 from containers/renovate/configure
[CI:DOCS] Configure Renovate
2023-04-08 03:51:22 -04:00
c4e79fc169 Fix up codespell errors
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-04-08 00:53:38 -04:00
a5dd5c20ee Capitalize all uid,gid and id words that are not options in docs
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2023-04-08 00:41:47 -04:00
352a41e3ae build(deps): bump golang.org/x/tools from 0.7.0 to 0.8.0 in /test/tools
Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.7.0 to 0.8.0.
- [Release notes](https://github.com/golang/tools/releases)
- [Commits](https://github.com/golang/tools/compare/v0.7.0...v0.8.0)

---
updated-dependencies:
- dependency-name: golang.org/x/tools
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-08 03:54:18 +00:00
430603950b Merge pull request #18098 from xduugu/quadlet-userns
quadlet: add `UserNS` option key
2023-04-07 23:31:53 -04:00
960eab1b8c Merge pull request #18086 from umohnani8/detach
Properly remove the service container during kube down
2023-04-07 17:56:00 -04:00
13135f924f Properly remove the service container during kube down
Ensure that we are actually looking up the service container
ID and actually removing it during kube teardown for the --wait
use case. This ensures that we don't have a service container waiting
around in removing state before we return from kube play in the remote
case.

[NO NEW TESTS NEEDED]

Signed-off-by: Urvashi Mohnani <umohnani@redhat.com>
2023-04-07 14:44:16 -04:00
f6a50311c5 quadlet: add UserNS option key
The `UserNS` key will replace the `RemapGid`, `RemapUid`, `RemapUidSize`
and `RemapUsers` options which are therefore marked as deprecated by
this commit.

Closes #17984

Signed-off-by: Cedric Staniewski <cedric@gmx.ca>
2023-04-07 17:19:21 +02:00
74bf122039 Merge pull request #18091 from ashley-cui/relnotes1
[CI:DOCS] Release notes for 4.5.0 Part 1
2023-04-07 06:48:41 -04:00
7b27dcfcfd Merge pull request #18090 from nalind/images-list-digested-names
"podman pull by digest and list --all" test: untag instead of rmi
2023-04-07 06:42:56 -04:00
6ea703b798 Merge pull request #18078 from xpahos/main
The `--ulimit` option now also accepts the name with an `RLIMIT_` prefix both upper and lower case.
2023-04-07 06:11:39 -04:00
9827f35c94 Merge pull request #18074 from edsantiago/waitwait
e2e tests: fix racy flakes
2023-04-07 05:50:22 -04:00
a616f2be48 Merge pull request #18088 from edsantiago/disable_checks_under_treadmill
[CI:BUILD] postbuild step: skip under nightly treadmill
2023-04-07 05:45:08 -04:00
29aac4dfe3 [CI:DOCS] Release notes for 4.5.0 Part 1
Signed-off-by: Ashley Cui <acui@redhat.com>
2023-04-06 17:32:35 -04:00
a462b37703 Merge pull request #18072 from cevich/enable_ec2_experimental
Cirrus: Enable labeling of EC2 VMs
2023-04-06 16:49:17 -04:00
358b46225a "podman pull by digest and list --all" test: untag instead of rmi
The "podman pull by digest and list --all" e2e test pulls an image using
a tagged reference when an image with the same ID is already present in
a read-only additional image store.
This causes a new image record to be created in read-write storage.
The test then removes this entry, pulls the image again using a digested
reference, and then expects the image to not have any tagged names in it
when it goes to look at it again.
Newer containers/storage will ensure that at the point when the
read-write image record is created, that it includes all of the data
items and naming information from the read-only copy of the image, so
that this information doesn't appear to be lost.
Change the test to use "untag" instead of "rmi", which should pass with
either the older or newer containers/storage.
The test is checking that `podman images` doesn't choke when it
encounters a digested name attached to an image, so the difference in
behavior between containers/storage versions is irrelevant.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2023-04-06 16:48:52 -04:00
83773074e3 Merge pull request #18066 from Juneezee/chore/yaml
chore: replace `github.com/ghodss/yaml` with `sigs.k8s.io/yaml`
2023-04-06 16:34:17 -04:00
f417861e0f build(deps): bump golang.org/x/text from 0.8.0 to 0.9.0
Bumps [golang.org/x/text](https://github.com/golang/text) from 0.8.0 to 0.9.0.
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.8.0...v0.9.0)

---
updated-dependencies:
- dependency-name: golang.org/x/text
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-06 20:16:55 +00:00
bb099ed3e0 Merge pull request #18058 from containers/dependabot/go_modules/golang.org/x/sys-0.7.0
build(deps): bump golang.org/x/sys from 0.6.0 to 0.7.0
2023-04-06 16:15:04 -04:00
1adfdb7d73 Merge pull request #18085 from Luap99/e2e-custom-network
test/e2e: use custom network config dir where needed
2023-04-06 16:01:35 -04:00
43e6bc9d94 Add renovate.json configuration
Signed-off-by: Chris Evich <cevich@redhat.com>
2023-04-06 14:54:21 -04:00
cf6f137045 CI: postbuild step: skip under nightly treadmill
Principally because 'make completion' fails if we transitively
bring in a new cobra, but also, none of the other tests are
meaningful under the treadmill.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2023-04-06 11:49:50 -06:00
fb41410dfc Merge pull request #18061 from containers/dependabot/go_modules/github.com/spf13/cobra-1.7.0
build(deps): bump github.com/spf13/cobra from 1.6.1 to 1.7.0
2023-04-06 10:43:17 -04:00
db9785ba56 The --ulimit option accepts the name with an RLIMIT_ prefix both upper and lower case
Signed-off-by: Alexander Gryanko <xpahos@yandex-team.ru>
2023-04-06 18:20:28 +04:00
dc9a65e348 test/e2e: use custom network config dir where needed
Since commit f250560a8043 the play kube command uses its own network.
this is racy be design because we create the network followed by
creating/running pod/containers. This means in the meantime another
prune or reset process could wipe out the network config because we have
to share the network config directory by design in the test.

The problem is we only have one host netns which is shared between
tests. If the network config dir is not shared we cannot make conflict
checks for interface names and ip address. This results in different
tests trying to use the same interface and/or ip address which will
cause runtime failures in CNI and netavark.

The only solution I see is to make sure only the reset/prune tests are
using a custom network dir. This makes sure they do not wipe configs
that are otherwise required by other parallel running tests.

Fixes #17946

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2023-04-06 16:16:50 +02:00