Commit Graph

4106 Commits

Author SHA1 Message Date
Giuseppe Scrivano
c4dedd3021 Revert "rootless: change default path for conmon.pid"
since we now enter the user namespace prior to read the conmon.pid, we
can write the conmon.pid file again to the runtime dir.

This reverts commit 6c6a865436.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-05-25 13:47:59 +02:00
Giuseppe Scrivano
30ef6ba125 rootless: enable loginctl linger
otherwise the processes we leave around will be killed once the
session terminates.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-05-25 13:47:58 +02:00
Giuseppe Scrivano
ee11f3bce9 rootless: new function to join existing conmon processes
move the logic for joining existing namespaces down to the rootless
package.  In main_local we still retrieve the list of conmon pid files
and use it from the rootless package.

In addition, create a temporary user namespace for reading these
files, as the unprivileged user might not have enough privileges for
reading the conmon pid file, for example when running with a different
uidmap and root in the container is different than the rootless user.

Closes: https://github.com/containers/libpod/issues/3187

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-05-25 13:47:57 +02:00
Giuseppe Scrivano
ce26aa701f rootless: block signals for pause
block signals for the pause process, so it can't be killed by
mistake.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-05-25 13:46:32 +02:00
OpenShift Merge Robot
b1d590b441 Merge pull request #3196 from giuseppe/keep-id
userns: add new option --userns=keep-id
2019-05-25 12:32:08 +02:00
OpenShift Merge Robot
3c85122faa Merge pull request #3185 from mheon/fix_cp_test
Fix a potential flake in the tests for podman cp
2019-05-25 12:20:08 +02:00
Giuseppe Scrivano
5eb321ac37 podman: honor env variable PODMAN_USERNS
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-05-24 17:34:13 +02:00
Giuseppe Scrivano
f09370c68b userns: add new option --userns=keep-id
it creates a namespace where the current UID:GID on the host is mapped
to the same UID:GID in the container.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-05-24 17:34:12 +02:00
OpenShift Merge Robot
1ac06d8469 Merge pull request #3192 from cevich/add_zip
Cirrus: Add zip package to images
2019-05-24 11:42:18 +02:00
OpenShift Merge Robot
5296428e91 Merge pull request #3186 from baude/varlinkdocsnullable
document nullable types
2019-05-23 22:52:14 +02:00
Giuseppe Scrivano
6df320c391 rootless: store also the original GID in the host
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-05-23 22:41:48 +02:00
Matthew Heon
0b571ede78 Fix a potential flake in the tests for podman cp
Instead of using the working directory, use a subdirectory of the
temporary directory created for the individual test, to prevent a
potential EEXIST for shared working directory.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-05-23 16:30:11 -04:00
OpenShift Merge Robot
1dbb27365a Merge pull request #3190 from giuseppe/fix-userns-psgo
rootless: fix top huser and hgroup
2019-05-23 20:38:12 +02:00
Chris Evich
52c86775be cirrus: update images w/ zip pkg
Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-23 11:28:31 -04:00
OpenShift Merge Robot
579fd01f7d Merge pull request #3097 from cevich/show_ip
hack: Display IP address of VM from script
2019-05-23 15:49:11 +02:00
Chris Evich
361f787abe Cirrus: Add zip package to images
Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-23 09:16:17 -04:00
Giuseppe Scrivano
e85b33fb04 rootless: fix top huser and hgroup
when running in rootless mode, be sure psgo is honoring the user
namespace settings for huser and hgroup.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-05-23 14:45:17 +02:00
Giuseppe Scrivano
da3021edd1 vendor: update psgo to v1.3.0
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-05-23 14:44:34 +02:00
Chris Evich
1bf622a0ea hack: ignore from all VCS files when tarballing
Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-22 13:13:40 -04:00
Chris Evich
53a2994a22 hack: shrink xfer tarball size
Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-22 12:44:38 -04:00
Chris Evich
99bd1d31c7 hack: Display IP address of VM from script
Useful for accessing it from other terminals.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-22 12:44:37 -04:00
baude
e2777a526d document nullable types
the varlink doc generator was ignoring all nullable types when
generating its documentation

Signed-off-by: baude <bbaude@redhat.com>
2019-05-22 10:08:03 -05:00
OpenShift Merge Robot
e0376b9c3f Merge pull request #3108 from rhatdan/flags
Fixup Flags
2019-05-22 16:27:30 +02:00
OpenShift Merge Robot
9db66b2fe3 Merge pull request #2715 from ypu/login_logout
Add test cases for login and logout
2019-05-22 14:08:43 +02:00
OpenShift Merge Robot
a4c42c6c6c Merge pull request #3178 from mheon/fix_gen_kube
Fix a 'generate kube' bug on ctrs with named volumes
2019-05-22 09:47:44 +02:00
OpenShift Merge Robot
6f02f3b2bc Merge pull request #3176 from baude/resizechanbuffer
make remote resize channel buffered
2019-05-22 08:57:53 +02:00
Yiqiao Pu
3a3c558f60 Add test cases for login and logout
As logout test request login to the registry, we plan to test them
together. There are five test cases added:
1. Podman login and logout with default value
3. Podman login and logout with --authfile
2. Podman login and logout with --tls-verify
4. Podman login and logout with --cert-dir
5. Podman login and logout with multi registry

All above test cases are using docker rgistry v2

Signed-off-by: Yiqiao Pu <ypu@redhat.com>
2019-05-22 14:34:42 +08:00
Matthew Heon
968bcbc86b Remove unused return statement in kube volume code
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-05-21 23:08:39 -04:00
OpenShift Merge Robot
488b698040 Merge pull request #3177 from mheon/duplicate_volumes
When superceding mounts, check for opposite types
2019-05-22 00:10:40 +02:00
OpenShift Merge Robot
1cf9a1bdba Merge pull request #3173 from giuseppe/use-wait-for-file
libpod: prefer WaitForFile to polling
2019-05-21 22:08:17 +02:00
OpenShift Merge Robot
536fd6addd Merge pull request #3084 from giuseppe/rootless-pause-process
rootless: use a pause process to keep namespaces alive
2019-05-21 22:08:08 +02:00
OpenShift Merge Robot
8f43d08d96 Merge pull request #2561 from cevich/cirrus_test_images
Cirrus: Support testing of VM cache-image changes
2019-05-21 22:08:00 +02:00
Matthew Heon
cec56b0075 Merge pull request #3168 from rhatdan/vendor
Update vendor of buildah and containers/images
2019-05-21 15:54:26 -04:00
Matthew Heon
e59083f41f Fix play kube when a pod is specified
We need to pass the Pod ID in as part of the CreateConfig.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-05-21 14:18:42 -04:00
Matthew Heon
03824e04fd Fix a 'generate kube' bug on ctrs with named volumes
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-05-21 13:52:55 -04:00
Matthew Heon
43f28cdc16 Add test for image volume conflict with user volume
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-05-21 12:36:48 -04:00
OpenShift Merge Robot
e6277b1a2d Merge pull request #3167 from weirdwiz/filter
Minor fix filtering images by label
2019-05-21 17:39:27 +02:00
Chris Evich
bd0ac639bf Cirrus: Fix missing CRIO_COMMIT -> CONMON_COMMIT
Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-21 10:56:47 -04:00
Matthew Heon
57e38e9550 When superceding mounts, check for opposite types
When we supercede low-priority mounts and volumes (image volumes,
and volumes sourced from --volumes-from) with higher-priority
ones (the --volume and --mount flags), we always replaced
lower-priority mounts of the same type (e.g. a user mount to
/tmp/test1 would supercede a volumes-from mount to the same
destination). However, we did not supercede the opposite type - a
named volume from image volumes at /tmp/test1 would be allowed to
remain and create a conflict, preventing container creation.

Solve this by destroying opposite types before merging (we can't
do it in the same loop, as then named volumes, which go second,
might trample changes made by mounts).

Fixes #3174

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-05-21 10:21:21 -04:00
baude
00262edf6c make remote resize channel buffered
when doing any sort of attach to a container, a sigwinch is sent
followed by a resize event.  this is fine for the local client but when
doing things over the varlink, the first sigwinch is wiped out by the
immediate resize event and is therefore lost.  by making the channel
buffered, both events are processed after the varlink connection is
established.

Signed-off-by: baude <bbaude@redhat.com>
2019-05-21 09:13:19 -05:00
Chris Evich
c7d9780be4 Cirrus: workaround root expand failure
Occasionally, and seemingly only on F29 the root disk fails to expand
upon boot.  When this happens, any number of failures could occur if
space runs out.  Until there is time to investigate the actual cause,
workaround this problem by detecting it and acting accordingly.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-21 08:44:02 -04:00
Chris Evich
1a2055ffac Cirrus: Stub in F30 support
New base-image boots, a cache-image builds, but more work is needed for
it to be prime-time ready.  This commit just adds some updates to the
scafolding necessary to build the base-image.  Future work will make F30
more of a reality.

Also add log-collection scripts to test image verification task

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-21 08:44:02 -04:00
Chris Evich
95141f88d4 Cirrus: fixups based on review feedback
Also remove disused distros (RHEL/CentOS/FAH) and fix get_ci_vm script

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-21 08:44:02 -04:00
Chris Evich
c4d9b03f78 Cirrus: Overhaul/Simplify env. var setup
Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-21 08:44:02 -04:00
Chris Evich
51a95e6ef1 Cirrus: Run tests on test-built cache-images
Also, add jq and catatonit installs to images.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-21 08:44:01 -04:00
Chris Evich
191a08ae43 Cirrus: Support testing of VM cache-image changes
Previously, it was quite difficult to affect changes to VM cache images
without lots of manual work.  This commit adds a new optional testing
task which mirrors the official-image build task which only runs on
master.  In contrast, the new task may be run at any time in a PR, but
including a magic phrase in the PR description.

Update documentation to describe the new task and inform on it's usage.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-21 08:44:01 -04:00
Chris Evich
84c6f7c55d Cirrus: Remove "too new" runc hack
Hack was to workaround not having fix for:
https://bodhi.fedoraproject.org/updates/FEDORA-2019-b4356521ba

Update `RUNC_COMMIT` value to match commit id to working package.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-05-21 08:44:01 -04:00
OpenShift Merge Robot
773b9ac9d0 Merge pull request #3169 from giuseppe/rootless-empty-res-cgroup1
rootless: force resources to be nil on cgroup v1
2019-05-21 12:49:15 +02:00
Giuseppe Scrivano
3788da9344 libpod: prefer WaitForFile to polling
replace two usage of kwait.ExponentialBackoff in favor of WaitForFile
that uses inotify when possible.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-05-21 10:07:31 +02:00
OpenShift Merge Robot
e43a98e512 Merge pull request #3086 from TomSweeneyRedHat/dev/tsweeney/runorder3
Touchup run man page
2019-05-21 02:11:07 +02:00