8404 Commits

Author SHA1 Message Date
43c19966f6 specgen: fix order for setting rlimits
Also make sure that the limits we set for rootless are not higher than
what we'd set for root containers.

Rootless containers failed to start when the calling user already
had ulimit (e.g. on NOFILE) set.

This is basically a cherry-pick of 76f8efc0d0d into specgen

Signed-off-by: Ralf Haferkamp <rhafer@suse.com>
2020-06-26 11:17:32 +02:00
bb11b42879 Merge pull request #6756 from mheon/add_dangling_filter
Add support for dangling filter to volumes
2020-06-26 05:11:50 -04:00
4db296fab3 Merge pull request #6779 from jwhonce/wip/config
Revert sending --remote flag to containers
2020-06-25 15:36:09 -04:00
48e9af1171 Revert sending --remote flag to containers
* quick --remote fix, sent --remote to ctnrs as argument

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-06-25 11:35:32 -07:00
358e69cc2d Merge pull request #6761 from mheon/fix_ps_portmappings
Print port mappings in `ps` for ctrs sharing network
2020-06-25 13:22:36 -04:00
12761ede68 Merge pull request #6748 from rhatdan/windows
Add containers.conf default file for windows and MAC Installs
2020-06-25 13:19:52 -04:00
05e1df2693 Merge pull request #6775 from vrothberg/vendor-common
vendor github.com/containers/common@v0.14.3
2020-06-25 13:00:40 -04:00
e4dcb3e31c vendor github.com/containers/common@v0.14.3
Includes several fixes for config parsing and AppArmor.

Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-06-25 17:53:49 +02:00
7766192293 Merge pull request #6760 from jwhonce/wip/python
Fix podman python docker-py tests
2020-06-25 11:52:06 -04:00
c036eef44d Merge pull request #6771 from vrothberg/fix-6770
systemd generate: allow manual restart of container units in pods
2020-06-25 09:46:10 -04:00
f8036c548c Merge pull request #6754 from edsantiago/man_page_xref
Docs: consistency between man / --help
2020-06-25 08:33:39 -04:00
cd36499d10 Merge pull request #6751 from vrothberg/fix-6744
podman run/create: support all transports
2020-06-25 06:16:54 -04:00
4daf82bd96 systemd generate: allow manual restart of container units in pods
Allow manual restarts of container units that are part of a pod.
This allows for configuring these containers for auto updates.

Fixes: #6770
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-06-25 12:00:17 +02:00
279ccbd310 Merge pull request #2 from edsantiago/pr6751-test
Friendly amendment for pr 6751
2020-06-25 09:12:42 +02:00
35cca198b3 Merge pull request #6713 from mheon/debug_level
Set syslog for exit commands on log-level=debug
2020-06-25 03:11:03 -04:00
16b3356a89 Print port mappings in ps for ctrs sharing network
In Podman v1.9, we printed port mappings for the container, even
if it shared its network namespace (and thus ports) with another
container. We regressed on this in Podman v2.0, which is fixed
here.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-06-24 17:27:26 -04:00
d7770df5ef Fix python dockerpy tests
* Refactor packaging so unittest discovery works
* Refactor tests to use python3-docker.rpm that ships with Fedora32
* Flush image cache between tests suites
* Update documentation to reflect changes

Outstanding issue:
* client.get_image() does not fail if image does not exist

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-06-24 12:40:55 -07:00
d78e83f47d Add support for dangling filter to volumes
The dangling filter determine whether a volume is dangling - IE,
it has no containers attached using it. Unlike our other filters,
this one is a boolean - must be true or false, not arbitrary
values.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-06-24 15:12:56 -04:00
2df3faab7b Merge pull request #6752 from rhatdan/inspect
Fix inspect to display multiple label: changes
2020-06-24 14:57:35 -04:00
4ee66598c1 Merge pull request #6753 from giuseppe/drop-default-mapping-1-1
utils: drop default mapping when running uid!=0
2020-06-24 13:10:53 -04:00
cf7222172e Friendly amendment for pr 6751
More robust system test for podman run/create docker-archive

Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-06-24 11:10:50 -06:00
18300573f9 Set syslog for exit commands on log-level=debug
We have a flag, --syslog, for telling logrus to log to syslog as
well as to the terminal. Previously, this flag also set the exit
command for containers to use `--syslog` (otherwise all output
from exit commands is lost). I attempted to replicate this with
Podman v2.0, but quickly ran into circular import hell (the flag
is defined in cmd/podman, I needed it in cmd/podman/containers,
cmd/podman imports cmd/podman/containers already, etc). Instead,
let's just set the syslog flag automatically on
`--log-level=debug` so we log exit commands automatically when
debug-level logs are requested. This is consistent with Conmon
and seems to make sense.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-06-24 13:09:34 -04:00
b61e429f19 Merge pull request #6732 from mheon/fix_stopsignal_set
Set stop signal to 15 when not explicitly set
2020-06-24 13:02:43 -04:00
a10da9a999 Add containers.conf default file for windows and MAC Installs
We want to add this configuration file so that users can descover
how to configure the permanent connection to a remote podman instance.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-06-24 12:58:44 -04:00
c6090c290e Docs: consistency between man / --help
New functionality in hack/man-page-checker: start cross-
referencing the man page 'Synopsis' line against the
output of 'podman foo --help'. This is part 1, flag/option
consistency. Part 2 (arg consistency) is too big and will
have to wait for later.

flag/option consistency means: if 'podman foo --help'
includes the string '[flags]' in the Usage message,
make sure the man page includes '[*options*]' in its
Synopsis line, and vice-versa. This found several
inconsistencies, which I've fixed.

While doing this I realized that Cobra automatically
includes a 'Flags:' subsection in its --help output
for all subcommands that have defined flags. This
is great - it lets us cross-check against the
usage synopsis, and make sure that '[flags]' is
present or absent as needed, without fear of
human screwups. If a flag-less subcommand ever
gets extended with flags, but the developer forgets
to add '[flags]' and remove DisableFlagsInUseLine,
we now have a test that will catch that. (This,
too, caught two instances which I fixed).

I don't actually know if the new man-page-checker
functionality will work in CI: I vaguely recall that
it might run before 'make podman' does; and also
vaguely recall that some steps were taken to remedy
that.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-06-24 10:39:10 -06:00
988fd27541 Merge pull request #6746 from vrothberg/untag
podman untag: error if tag doesn't exist
2020-06-24 12:19:42 -04:00
061261ee05 utils: drop default mapping when running uid!=0
this is a leftover from the first implementation of rootless.  This
code is never hit by podman rootless anymore as podman automatically
creates a user namespace now.

Fixes an issue with podman remote when used with uid != 0.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-06-24 18:13:42 +02:00
f80461078e podman run/create: support all transports
Support all image transports in podman run/create.  It seems we
regressed with v2 on that.  Also add tests to make sure we're
not regressing again.

Fixes: #6744
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-06-24 17:20:04 +02:00
7330647cbd Fix inspect to display multiple label: changes
If the user runs a container like

podman run --security-opt seccomp=unconfined --security-opt label=type:spc_t --security-opt label=level:s0 ...

Podman inspect was only showing the second option

This change will show

            "SecurityOpt": [
                "label=type:spc_t,label=level:s0:c60",
                "seccomp=unconfined"
            ],

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-06-24 11:05:39 -04:00
6bc5dcc282 Merge pull request #6729 from QiWang19/inspect-format
Reformat inspect network settings
2020-06-24 09:35:25 -04:00
1c6c12581c podman untag: error if tag doesn't exist
Throw an error if a specified tag does not exist.  Also make sure that
the user input is normalized as we already do for `podman tag`.

To prevent regressions, add a set of end-to-end and systemd tests.

Last but not least, update the docs and add bash completions.

Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-06-24 15:34:46 +02:00
c07df63c45 Merge pull request #6741 from maybe-sybr/maybe/apiv2/fix-volume-create-code
APIv2: Return `StatusCreated` from volume creation
2020-06-24 09:32:39 -04:00
179731bb14 Merge pull request #6738 from maybe-sybr/maybe/apiv2/fix-network-compat-urls
APIv2:fix: Remove `/json` from compat network EPs
2020-06-24 09:29:53 -04:00
7fe4c5204e Set stop signal to 15 when not explicitly set
When going through the output of `podman inspect` to try and
identify another issue, I noticed that Podman 2.0 was setting
StopSignal to 0 on containers by default. After chasing it
through the command line and SpecGen, I determined that we were
actually not setting a default in Libpod, which is strange
because I swear we used to do that. I re-added the disappeared
default and now all is well again.

Also, while I was looking for the bug in SpecGen, I found a bunch
of TODOs that have already been done. Eliminate the comments for
these.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-06-24 09:27:20 -04:00
c48a542013 Merge pull request #6733 from edsantiago/bats_help_extra_args
BATS tests: new too-many-arguments test
2020-06-24 09:27:07 -04:00
b74238864f Merge pull request #6739 from jwhonce/wip/connection
Fix ssh-agent support
2020-06-24 09:24:24 -04:00
3df30ef358 Merge pull request #6743 from giuseppe/specify-mappings-to-storage
libpod: specify mappings to the storage
2020-06-24 09:21:41 -04:00
0d26b8f24b Merge pull request #6737 from maybe-sybr/maybe/doc/fix-volume-list-swagdoc
APIv2:doc: Fix swagger doc to refer to volumes
2020-06-24 05:34:05 -04:00
370195cf78 libpod: specify mappings to the storage
specify the mappings in the container configuration to the storage
when creating the container so that the correct mappings can be
configured.

Regression introduced with Podman 2.0.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-06-24 11:26:49 +02:00
3430ca4df0 APIv2: Return StatusCreated from volume creation
The swagdoc in `register_volumes.go` already correctly notes that a 201
should be returned upon success, so we only need to change the handler
to match the spec.

Signed-off-by: Matt Brindley <58414429+maybe-sybr@users.noreply.github.com>
2020-06-24 15:08:20 +10:00
5fbac502bd APIv2:fix: Remove /json from compat network EPs
Signed-off-by: Matt Brindley <58414429+maybe-sybr@users.noreply.github.com>
2020-06-24 12:20:49 +10:00
4e59fd77a8 Fix ssh-agent support
* An identity of "" implies ssh-agent and user/password to be used
* Fixed example

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-06-23 18:51:56 -07:00
bfcfdfcb74 APIv2:doc: Fix swagger doc to refer to volumes
Signed-off-by: Matt Brindley <58414429+maybe-sybr@users.noreply.github.com>
2020-06-24 11:37:00 +10:00
5fe122bf52 Merge pull request #6706 from rhatdan/completions
Add podman network to bash command completions
2020-06-23 19:05:57 -04:00
1356f92afb Merge pull request #6685 from mavit/autfile
Fix typo.
2020-06-23 19:03:01 -04:00
6864a5547a BATS tests: new too-many-arguments test
...plus a few others. And fixes to actual parsing.

If a command's usage message includes '...' in the
argument list, assume it can take unlimited arguments.
Nothing we can check.

For all others, though, the ALL-CAPS part on the
right-hand side of the usage message will define
an upper bound on the number of arguments accepted
by the command. So in our 'podman --help' test,
generate N+1 args and run that command. We expect
a 125 exit status and a suitably helpful error message.

Not all podman commands or subcommands were checking,
so I fixed that. And, fixed some broken usage messages
(all-caps FLAGS, and '[flags]' at the end of 'ARGS').
Add new checks to the help test to prevent those in
the future.

Plus a little refactoring/cleanup where necessary.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-06-23 14:17:48 -06:00
f586c006f8 Reformat inspect network settings
Reformat ports of inspect network settings to compatible with docker inspect. Close #5380

Signed-off-by: Qi Wang <qiwan@redhat.com>
2020-06-23 16:14:27 -04:00
81f4204e4e Merge pull request #6728 from mheon/add_privileged_tests
Add tests for --privileged with other flags
2020-06-23 15:33:46 -04:00
0560a98e0e Add podman network to bash command completions
network commands were not supported in command completions.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-06-23 15:31:08 -04:00
0d961a40ba Merge pull request #6726 from edsantiago/bats
system tests: invoke with abs path to podman
2020-06-23 15:31:02 -04:00