2077 Commits

Author SHA1 Message Date
ed67d302ef Cirrus: Enable updating F28 image
Previously this was disabled as some package was breaking networking on
GCE after updating + rebooting.  This is fixed now, so we should update
packages when building the fedora test VM image.

https://pagure.io/cloud-sig/issue/292

Signed-off-by: Chris Evich <cevich@redhat.com>
2018-10-31 09:47:43 -04:00
cf4288e3cc Merge pull request #1735 from giuseppe/slirp4netns-not-block
rootless: avoid hang on failed slirp4netns
2018-10-31 06:28:24 -07:00
ea50ce6a59 rootless: avoid hang on failed slirp4netns
If for any reason slirp4netns fails at startup, podman waits
indefinitely.  Check every second if the process is still running so
that we avoid to hang.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-10-31 13:08:23 +01:00
ee513cca86 Merge pull request #1704 from giuseppe/attach-cuid-too-long
attach: fix attach when cuid is too long
2018-10-30 14:22:01 -07:00
319a7a7043 Merge pull request #1715 from baude/getusergroup
get user and group information using securejoin and runc's user library
2018-10-30 11:49:15 -07:00
ce24ce7c53 Merge pull request #1728 from baude/trunccommand
truncate command output in ps by default
2018-10-30 07:49:28 -07:00
c65b3599cc runtime: do not allow runroot longer than 50 characters
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-10-30 15:35:24 +01:00
f77d846536 attach: fix attach when cuid is too long
conmon creates a symlink to avoid using a too long UNIX path.

Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1641800

There is still one issue when the path length of the symlink has the
same length of the attach socket parent directory since conmon fails
to create the symlink, but that must be addressed in conmon first.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-10-30 15:35:24 +01:00
aa49675e29 truncate command output in ps by default
when the PS command was reworked for performance and formatting improvements,
i forgot to truncate the command field.  Long container commands was throwing
the formatting off. we now truncated to 17 characters plus the elipses.

Signed-off-by: baude <bbaude@redhat.com>
2018-10-30 08:35:22 -05:00
24d4f114ea Merge pull request #1725 from cevich/newer_runc_commit
Use newer runc commit in VM images
2018-10-30 04:21:39 -07:00
8126eb8a39 Update the runc commit used for testing
Use image ubuntu-1804-bionic-v20180911-libpod-63a86a18 which was built
with RUNC_COMMIT 78ef28e63bec2ee4c139b5e3e0d691eb9bdc748d.

Signed-off-by: Chris Evich <cevich@redhat.com>
2018-10-29 18:32:41 -04:00
d5b600171d Merge pull request #1721 from vrothberg/fix-1695
unmount: fix error logic
2018-10-29 15:29:32 -07:00
5e071f47c0 Merge pull request #1720 from vrothberg/contributing-describe-changes
CONTRIBUTING.md: add section about describing changes
2018-10-29 15:29:27 -07:00
a1b961af50 Merge pull request #1724 from baude/psformatchanges
make various changes to ps output
2018-10-29 15:17:13 -07:00
7052c8534e Merge pull request #1723 from afbjorklund/local_config
Sync default config with libpod.conf
2018-10-29 15:17:04 -07:00
60ba26ab21 Merge pull request #1722 from baude/ps2space
Use two spaces to pad PS fields
2018-10-29 14:49:33 -07:00
058f0e3681 make various changes to ps output
for backwards compatibility and auto-test, we needed a few changes
that slipped in when i reworked ps to be faster to be reverted. the
follow behaviours were reverted:

1. the is_infra column was redacted.  that appears to be a mistake on my
part.
2. a newline after ps prints its format was added
3. a newline prior to printing the headers was removed.

Signed-off-by: baude <bbaude@redhat.com>
2018-10-29 14:33:32 -05:00
1c4880d3ef Sync default config with libpod.conf
Only changed libpod.conf file, which might not even be in use.

Signed-off-by: Anders F Björklund <anders.f.bjorklund@gmail.com>
2018-10-29 19:11:47 +01:00
13b05ea476 Use two spaces to pad PS fields
Ed has asked that we revert to using two spaces for padding between PS fields.  I assume
this is for docker autotests.

Signed-off-by: baude <bbaude@redhat.com>
2018-10-29 12:08:41 -05:00
079208cdbc unmount: fix error logic
Only return `ErrCtrStateInvalid` errors when the mount counter is equal
to 1.  Also fix the "can't unmount [...] last mount[..]" error which
hasn't been returned when the error passed to `errors.Errorf()` is nil.

Fixes: #1695
Signed-off-by: Valentin Rothberg <vrothberg@suse.com>
2018-10-29 15:46:54 +01:00
1dd7f13dfb get user and group information using securejoin and runc's user library
for the purposes of performance and security, we use securejoin to contstruct
the root fs's path so that symlinks are what they appear to be and no pointing
to something naughty.

then instead of chrooting to parse /etc/passwd|/etc/group, we now use the runc user/group
methods which saves us quite a bit of performance.

Signed-off-by: baude <bbaude@redhat.com>
2018-10-29 08:59:46 -05:00
a36974585f CONTRIBUTING.md: add section about describing changes
Add a section about describing changes in commit messages.  GitHub tends
to drive the large part of discussions and change descriptions to the
corresponding pull requests and issues, but such information is lost in
the git history.  Not providing sufficient information in commit
messages is painful for reviewing and can cause issues while debugging.
It also complicates studying source code, where reading commit messages
and the code's git history is a common approach to better understand the
code.

Following the descriptions should be enforced by the maintainers of the
libpod project.  Pull requests containing commits without proper
descriptions should not be merged.

This change bases on the documentation of the Linux kernel v4.17:
https://www.kernel.org/doc/html/v4.17/process/submitting-patches.html

Signed-off-by: Valentin Rothberg <vrothberg@suse.com>
2018-10-29 13:13:34 +01:00
aef9d56ae2 Merge pull request #1696 from QiWang19/ExportForCrio
Change ParseDevice to exported name
2018-10-29 04:09:16 -07:00
22390b3b04 Change to exported name in ParseDevice
Signed-off-by: Qi Wang <qiwan@redhat.com>
2018-10-29 06:39:39 -04:00
49555721ec Merge pull request #1718 from rhatdan/vendor
Vendor in latest containers/storage
2018-10-26 11:44:09 -07:00
a36dbc8a3f Merge pull request #1717 from jwhonce/wip/unittest
Ensure test container in running state
2018-10-26 10:11:09 -07:00
1896f16a55 Vendor in latest containers/storage
We need this to start testing metacopy up for podman.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2018-10-26 11:17:27 -04:00
aa853b2091 Merge pull request #1585 from rhatdan/labels
Add tests for selinux labels
2018-10-26 07:30:39 -07:00
6e1aeb06f8 Merge pull request #1637 from vrothberg/runlabel-execute-any-command
runlabel: run any command
2018-10-26 04:33:12 -07:00
a2dc29746f Merge pull request #1716 from baude/rmallps
fix bug in rm -fa parallel deletes
2018-10-26 01:32:36 -07:00
f641c2d938 fix bug in rm -fa parallel deletes
Signed-off-by: baude <bbaude@redhat.com>
2018-10-25 16:15:11 -05:00
f6e7807fa5 Merge pull request #1709 from baude/parallelheur
Add --max-workers and heuristics for parallel operations
2018-10-25 13:08:45 -07:00
d62fa127a1 Ensure test container in running state
* Save storage if tests fail

Fixes #1643

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2018-10-25 12:20:11 -07:00
f9fb62c737 Add tests for selinux labels
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2018-10-25 09:33:08 -04:00
3efa068528 Merge pull request #1699 from baude/rund
run performance improvements
2018-10-25 05:59:31 -07:00
3e5a5c68da Add --max-workers and heuristics for parallel operations
add a global flag for --max-workers so users can limit the number
of parallel operations for a given function.  also, when not limited
by max-workers, we implement a heuristic function that returns the
number of preferred parallel workers based on the number of CPUs and
the given operation.

Signed-off-by: baude <bbaude@redhat.com>
2018-10-25 07:50:46 -05:00
76d20f0735 Merge pull request #1712 from baude/cyphar
Increase security and performance when looking up groups
2018-10-25 05:35:59 -07:00
6246942d37 Increase security and performance when looking up groups
We implement the securejoin method to make sure the paths to /etc/passwd and
/etc/group are not symlinks to something naughty or outside the container
image. And then instead of actually chrooting, we use the runc functions to
get information about a user.  The net result is increased security and
a a performance gain from 41ms to 100us.

Signed-off-by: baude <bbaude@redhat.com>
2018-10-25 06:42:43 -05:00
e2aef6341d run prepare in parallel
run prepare() -- which consists of creating a network namespace and
mounting the container image is now run in parallel.   This saves 25-40ms.

Signed-off-by: baude <bbaude@redhat.com>
2018-10-25 06:34:23 -05:00
57f778aed9 Merge pull request #1713 from baude/runcfail
downgrade runc due a rootless bug
2018-10-24 17:25:11 -07:00
803efd4d38 downgrade runc due a rootless bug
Signed-off-by: baude <bbaude@redhat.com>
2018-10-24 14:25:31 -05:00
606a5cec8f runlabel: run any command
As discussed [1], the runlabel command should execute any command
specified in a label.  The reasoning behind is that we cannot restrict
which options are passed to Podman which thereby has full access to the
host (runlabels must be used with care).

With the updated semantics, runlabel will substitute the commands with a
basepath equal to "docker" or "podman" with "/proc/self/exe", and
otherwise leave the command unchanged to execute any other command on
the host.

[1] https://github.com/containers/libpod/pull/1607#issuecomment-428321382

Signed-off-by: Valentin Rothberg <vrothberg@suse.com>
2018-10-24 14:02:43 +02:00
cde41c0b84 Merge pull request #1646 from QiWang19/addenvbud
Support auth file environment variable in podman build
2018-10-23 17:04:17 -07:00
bf80717904 Merge pull request #1708 from rhatdan/docker
Eat our own dogfood
2018-10-23 16:41:43 -07:00
a9929b40dc Merge pull request #1684 from QiWang19/deviceman
Explain the device format in man pages
2018-10-23 15:18:14 -07:00
37e9e5667e Merge pull request #1706 from giuseppe/fix-cidfile-rootless
create: fix writing cidfile when using rootless
2018-10-23 14:45:33 -07:00
28279ce6bd Merge pull request #1666 from giuseppe/vendor-storage-overlay
vendor: update container/storage
2018-10-23 14:45:28 -07:00
9250747092 Eat our own dogfood
Switch all tests to use podman installed on the system, or Docker if podman
does not exist.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2018-10-23 17:36:37 -04:00
28d8d72a82 Merge pull request #1707 from afbjorklund/local_path
Add support for /usr/local installation
2018-10-23 14:29:43 -07:00
0a0dbc4692 vendor: update containers/storage
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2018-10-23 23:09:35 +02:00