15117 Commits

Author SHA1 Message Date
fc5cf812c8 use GetRuntimeDir() from c/common
To prevent duplication and potential bugs we should use the same
GetRuntimeDir function that is used in c/common.

[NO NEW TESTS NEEDED]

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-02-21 16:03:25 +01:00
d224a0f8ac Merge pull request #12918 from dgibson/propagate-conf-env
Propagate CONTAINERS_CONF to conmon
2022-02-21 08:05:38 -05:00
94df701512 Implement Podman Container Clone
podman container clone takes the id of an existing continer and creates a specgen from the given container's config
recreating all proper namespaces and overriding spec options like resource limits and the container name if given in the cli options

this command utilizes the common function DefineCreateFlags meaning that we can funnel as many create options as we want
into clone over time allowing the user to clone with as much or as little of the original config as they want.

container clone takes a second argument which is a new name and a third argument which is an image name to use instead of the original container's

the current supported flags are:

--destroy (remove the original container)
--name (new ctr name)
--cpus (sets cpu period and quota)
--cpuset-cpus
--cpu-period
--cpu-rt-period
--cpu-rt-runtime
--cpu-shares
--cpuset-mems
--memory
--run

resolves #10875

Signed-off-by: cdoern <cdoern@redhat.com>
Signed-off-by: cdoern <cbdoer23@g.holycross.edu>
Signed-off-by: cdoern <cdoern@redhat.com>
2022-02-20 21:11:14 -05:00
23a7f4e0de Option --url and --connection should imply --remote.
Closes #13242

Signed-off-by: Romain Geissler <romain.geissler@amadeus.com>
2022-02-19 14:53:37 +00:00
d12489858d [CI:DOCS] troubleshooting: mention overlay option for --rootfs
* Mention overlay option for --rootfs. Overlay description text
  is from commit 020d81f113ea1e11398ea77495cc4b8e05a91d38
  by Qi Wang

Signed-off-by: Erik Sjölund <erik.sjolund@gmail.com>
2022-02-18 08:04:30 +01:00
8c9d37fafc [CI:DOCS] troubleshooting: mention machinectl and systemd-run
Signed-off-by: Erik Sjölund <erik.sjolund@gmail.com>
2022-02-18 07:01:32 +01:00
db4d15e852 Propagate $CONTAINERS_CONF to conmon
The CONTAINERS_CONF environment variable can be used to override the
configuration file, which is useful for testing.  However, at the moment
this variable is not propagated to conmon.  That means in particular, that
conmon can't propagate it back to podman when invoking its --exit-command.
The mismatch in configuration between the starting and cleaning up podman
instances can cause a variety of errors.

This patch also adds two related test cases.  One checks explicitly that
the correct CONTAINERS_CONF value appears in conmon's environment.  The
other checks for a possible specific impact of this bug: if we use a
nonstandard name for the runtime (even if its path is just a regular crun),
then the podman container cleanup invoked at container exit will fail.
That has the effect of meaning that a container started with -d --rm won't
be correctly removed once complete.

Fixes #12917

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2022-02-18 12:35:25 +11:00
d615ab81f9 tests: Remove inaccurate comment
This comment refers to overiding $PODMAN although the code below does
nothing of the sort.  Presumbly the comment has been outdated by altering
the containers.conf / $CONTAINERS_CONF instead.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2022-02-18 12:35:25 +11:00
a88ea2c68b Merge pull request #13278 from mheon/bump_main_40
[CI:DOCS] Update release notes with v4.0.0 additions
2022-02-17 16:58:34 -05:00
7b55ab4426 Cirrus: Disable F34 aka prior-fedora testing
Podman 4.0 will never be supported in F34, and the use of F35 in CI is
temporary until F36 is brought up to speed.  Rather than fight with
testing issues that will never be fixed/supported, simply disable it.
This commit may be reverted at a future date when F36 VM support is
added.

Signed-off-by: Chris Evich <cevich@redhat.com>
2022-02-17 16:38:42 -05:00
632c089cc6 Cirrus: Use updated VM images
Mainly this is to confirm some changes needed for the podman-py CI setup
don't disrupt operations here. Ref:

https://github.com/containers/automation_images/pull/111

Also includes a minor steup fix WRT setting up for test-rpm build.

Signed-off-by: Chris Evich <cevich@redhat.com>
2022-02-17 16:38:42 -05:00
aa17030379 Update release notes with v4.0.0 additions
Signed-off-by: Matthew Heon <mheon@redhat.com>
2022-02-17 15:22:21 -05:00
a429dcd2ab Merge pull request #13241 from edsantiago/logformatter_do_python
[CI:DOCS] logformatter: handle python logs
2022-02-17 11:56:37 -05:00
27022180b8 Merge pull request #13264 from mheon/fix_plugin_flake
Fix a potential flake in volume plugins tests
2022-02-17 11:54:35 -05:00
a09e94f9ca Merge pull request #13263 from giuseppe/update-c-storage
vendor: update c/storage to 26c561f9
2022-02-17 11:24:37 -05:00
71474f64b9 Merge pull request #13260 from containers/dependabot/go_modules/github.com/containers/buildah-1.24.2
Bump github.com/containers/buildah from 1.24.1 to 1.24.2
2022-02-17 10:14:36 -05:00
1252f9dd33 Fix a potential flake in volume plugins tests
We could remove the container running the volume plugins, before
the containers using the volume plugins; this could cause
unmounting the volumes to fail because the plugin could not be
contacted.

Signed-off-by: Matthew Heon <mheon@redhat.com>
2022-02-17 09:46:35 -05:00
38811823c1 vendor: update c/storage to 26c561f9
update c/storage to commit 26c561f9a64585d9a25d340e1ae5479eca8008a1.

It contains an important fix for partial pulls.

[NO NEW TESTS NEEDED]

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-02-17 14:54:02 +01:00
095026c3d5 Bump github.com/containers/buildah from 1.24.1 to 1.24.2
Bumps [github.com/containers/buildah](https://github.com/containers/buildah) from 1.24.1 to 1.24.2.
- [Release notes](https://github.com/containers/buildah/releases)
- [Changelog](https://github.com/containers/buildah/blob/main/CHANGELOG.md)
- [Commits](https://github.com/containers/buildah/compare/v1.24.1...v1.24.2)

---
updated-dependencies:
- dependency-name: github.com/containers/buildah
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-17 12:08:46 +00:00
c018c0f3c7 Merge pull request #13252 from chmouel/increase-subuid-subgid
increase subuid and subgid in image
2022-02-17 06:01:59 -05:00
deb75f5654 Merge pull request #13228 from giuseppe/idmap-options
pkg: support passing down options for idmap
2022-02-17 05:04:00 -05:00
3c99cff3d1 Merge pull request #13258 from robbmanes/bitshift_st_rdev
Calculate device major/minor using bitshift
2022-02-17 04:20:00 -05:00
90066af62e Calculate device major/minor using bitshift
Previously, devices with a major/minor number >256 would fail to be
detected.  Switch to using bitwise conversion (similar to
sys/sysmacros in C).

[NO NEW TESTS NEEDED]

Signed-off-by: Robb Manes <robbmanes@protonmail.com>
2022-02-16 15:47:02 -05:00
13f6261f84 increase subuid and subgid in image
increase the number of ids available to the podman users when running as
rootless.

Signed-off-by: Chmouel Boudjnah <chmouel@redhat.com>
2022-02-16 20:00:47 +01:00
f918a9418f Merge pull request #13075 from n1hility/mac-forward-helper
Mac API forwarding using a privileged docker socket claim helper
2022-02-16 13:39:42 -05:00
317a1535f9 Merge pull request #13243 from patrycja-guzik/docs2
[CI:DOCS] Unify ls --filter docs for networks and pods
2022-02-16 10:47:41 -05:00
f335cbf11b Merge pull request #13244 from vrothberg/merge-filter-tests
e2e: merge after/since image-filter tests
2022-02-16 10:25:41 -05:00
7a83d16f95 [CI:DOCS] logformatter: handle python logs
We've got some python tests running in CI, and they're really hard
to troubleshoot. This PR:

  1) colorizes python unittest lines (ok / skipped / fail), and
  2) links to source files

The color is nice for skimming, but it's the linking that might
make it much easier to diagnose future failures.

(Context: failure today in test/python/docker/compat/test_images.py)

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-02-16 06:31:05 -07:00
a811acf74c pkg: support passing down options for idmap
[NO NEW TESTS NEEDED] the feature is still being worked in crun:

https://github.com/containers/crun/pull/874

also needs: https://github.com/containers/common/pull/927

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-02-16 11:19:58 +01:00
50fbe52f49 Update to podman4 copr stream
Signed-off-by: Jason T. Greene <jason.greene@redhat.com>
2022-02-16 03:49:17 -06:00
c74f8f04fd Introduce podman machine init --root=t|f and podman machine set --root=t|f
Switch default to rootless for mac and windows

Signed-off-by: Jason T. Greene <jason.greene@redhat.com>
2022-02-16 03:49:17 -06:00
8f5ba05ec4 Initial implementation of mac forwarding using a privileged docker sock claim helper
Signed-off-by: Jason T. Greene <jason.greene@redhat.com>
2022-02-16 03:49:17 -06:00
b62816578e e2e: merge after/since image-filter tests
Merge the two tests to speed up testing.  Both built the exact same
images.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2022-02-16 10:33:57 +01:00
98962a28f5 Merge pull request #13239 from baude/e2esincebefore
Fix images since/after tests
2022-02-16 04:24:56 -05:00
10580ec198 Unify ls --filter docs for networks and pods
Signed-off-by: Patrycja Guzik <patrycja.k.guzik@gmail.com>

#13078 follow-up
2022-02-15 23:54:45 +01:00
6a8d29eead Changes of docker descriptions
It looks like some descriptions have changed on the docker registry
where we had been searching for images that include 'alpine'.  We are
now seeing an image in the initial list that has 'alpine' in its
description.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2022-02-15 15:21:00 -06:00
5b98efe1d1 Fix images since/after tests
For the since and after imagve filter tests, instead of using the
read-only cache of images, we just use the empty r/w store.  We then
build three images that are strictly predictable.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2022-02-15 12:33:51 -06:00
60b0acb7dc Merge pull request #13237 from Luap99/net-docs
[CI:DOCS] podman network: add documentation for netavark
2022-02-15 11:40:40 -05:00
4a166c8b63 podman network: add documentation for netavark
Add some docs about the different network backends. Also remove the CNI
word from network since we refer to either a netavark or CNI config.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-02-15 16:46:23 +01:00
5977fd5095 Merge pull request #13209 from esendjer/main
ignition: propagate proxy settings from a host into a vm
2022-02-14 15:50:38 -05:00
38b19c112a Merge pull request #13223 from Foxboron/morten/fix-annotation
create: Fix key=value annotation in the flag output
2022-02-14 10:06:38 -05:00
a0991c6f36 create: Fix key=value annotation in the flag output
[NO NEW TESTS NEEDED]

Signed-off-by: Morten Linderud <morten@linderud.pw>
2022-02-14 15:42:18 +01:00
ba50e5d9eb Merge pull request #13084 from eriksjolund/troubleshooting_userns_keep_id_uidmap_gidmap
[CI:DOCS] Add --userns=keep-id, --uidmap, --gidmap troubleshooting
2022-02-14 08:42:37 -05:00
d36613908a Merge pull request #13220 from baude/podman4fcos
Temporarily pull machine images from side repo
2022-02-14 03:52:37 -05:00
a8928a3caa ignition: propagate proxy settings from a host into a vm
Set proxy settings (such as `HTTP_PROXY`, and others)
for the whole guest OS with setting up `DefaultEnvironment`
with a `systemd` configuration file `default-env.conf`,
a `profile.d` scenario file - `default-env.sh` and
a `environment.d` configuration file `default-env.conf`

The **actual** environment variables are read by podman
at a start, then they are encrypted with base64 into
a single string and after are provided into a VM through
QEMU Firmware Configuration (fw_cfg) Device

Inside a VM a systemd service `envset-fwcfg.service`
reads the providead encrypted string from fw_cfg, decrypts
and then adds to the files
 - `/etc/systemd/system.conf.d/default-env.conf`
 - `/etc/profile.d/default-env.sh`
 - `/etc/environment.d/default-env.conf`
At the end this service execute  `systemctl daemon-reload`
to propagate new variables for systemd manager

[NO NEW TESTS NEEDED]

Closes #13168

Signed-off-by: esendjer <esendjer@gmail.com>
2022-02-12 21:24:15 +05:00
3b5a3f4a74 [CI:DOCS] Add --userns=keep-id, --uidmap, --gidmap troubleshooting
* Add troubleshooting advice: "Container creates a file that is
  not owned by the user's regular UID". The solution involves
  using the options --uidmap and --gidmap.

* Add troubleshooting advice: "Passed-in devices or files can't be
  accessed in rootless container (UID/GID mapping problem)".
  The general solution involves using the options --uidmap and
  --gidmap. Sometimes --userns=keep-id could be used.

Co-authored-by: Tom Sweeney <tsweeney@redhat.com>

Signed-off-by: Erik Sjölund <erik.sjolund@gmail.com>
2022-02-12 07:29:09 +01:00
eb19a7582e Merge pull request #13144 from lsm5/e2e-netavark
enable netavark specific tests
2022-02-11 20:44:07 -05:00
73f35ff2ae Temporarily pull machine images from side repo
Until podman4 is in the fcos trees, we need to pull the machine images
from a side repository.  There is a hard coded bit that forces the
side repo download right now.  Simple comment or removal of the bit will
revert to normal download behavior.

[NO NEW TESTS NEEDED]

Signed-off-by: Brent Baude <bbaude@redhat.com>
2022-02-11 17:04:18 -06:00
1b22ad95c1 Merge pull request #13214 from adrianreber/2022-02-11-fix-tests
Fix checkpoint/restore pod tests
2022-02-11 16:46:08 -05:00
6f9f78f7f2 enable netavark specific tests
These are copies of the CNI tests with modifications wherever
neccessary.

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2022-02-11 13:34:28 -05:00