Commit graph

2622 commits

Author SHA1 Message Date
OpenShift Merge Robot
e5a3e46746
Merge pull request #5946 from jwhonce/wip/shutdown
V2 restore libpod.Shutdown() when exiting podman commands
2020-04-23 18:27:32 +02:00
Giuseppe Scrivano
48530acbd9
podman: handle namespaces specified on the CLI
and handle differently the user namespace as it supports additional
options.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-23 18:05:03 +02:00
Giuseppe Scrivano
d98b6f4232
pkg: fix shmsize error message
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-23 18:05:01 +02:00
OpenShift Merge Robot
397dcc358a
Merge pull request #5843 from QiWang19/manifest_create
manifest create,add,inspect
2020-04-23 17:45:38 +02:00
Daniel J Walsh
e66346c7b0
Stop wrapping pull messages
The length and size of our error messages on failure to pull
is huge.  This patch at least eliminates some of the wrapping.
But I think eventually we need to look at containers/image
and see if we can modify the error messages to something a little
more human friendly.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-23 05:31:36 -04:00
Qi Wang
17783dda68 manifest create,add,inspect
Implememts manifest subcommands create, add, inspect.

Signed-off-by: Qi Wang <qiwan@redhat.com>
2020-04-22 20:05:21 -04:00
Jhon Honce
be5605ac4f V2 Restore rmi tests
* Introduced define.ErrImageInUse to assist in determining the exit code
  without resorting string searches.

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-04-22 15:34:33 -07:00
OpenShift Merge Robot
bf1e5b875f
Merge pull request #5942 from mheon/volume_flags
Enable basic volumes support in Podmanv2
2020-04-22 23:27:07 +02:00
Jhon Honce
565f93531e V2 restore libpod.Shutdown() when exiting podman commands
Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-04-22 14:25:40 -07:00
OpenShift Merge Robot
2584d6bd58
Merge pull request #5936 from rhatdan/selinux1
Move selinux labeling support from pkg/util to pkg/selinux
2020-04-22 22:30:59 +02:00
OpenShift Merge Robot
576fe98bbc
Merge pull request #5930 from jwhonce/issues/5765
Instrumentation to answer #5765
2020-04-22 21:29:10 +02:00
Matthew Heon
b4a4338dfe Enable basic volumes support in Podmanv2
This enables the --volume, --mount, and --tmpfs flags in
Podmanv2. It does not enable init-related flags, image volumes,
and --volumes-from.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-04-22 14:24:12 -04:00
Daniel J Walsh
ede8380d37
Move selinux labeling support from pkg/util to pkg/selinux
The goal here is to make the package less heavy and not overload
the pkg/util.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-22 14:17:59 -04:00
Brent Baude
6fdcc09a20
Fix integration tests for untag
Signed-off-by: Brent Baude <bbaude@redhat.com>
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-22 14:13:07 -04:00
Jhon Honce
d7a27b8e84 Instrumentation to answer #5765
* currently wired to localhost:8888 to prevent access from off machine

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-04-22 11:07:28 -07:00
OpenShift Merge Robot
02bd8cef7b
Merge pull request #5916 from giuseppe/userns-auto
v2, podman: plug --userns=auto
2020-04-21 16:10:28 -04:00
Matthew Heon
1cd2b746d0 Modify namespace generation code for specgen
Namespaces have now been changed to properly handle all cases.
Spec handling code for namespaces was consolidated in a single
function.

Still missing:
- Image ports
- Pod namespaces likely still broken in Podmanv2

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-04-21 14:38:52 -04:00
OpenShift Merge Robot
0d817f5210
Merge pull request #5900 from baude/v2cp
podmanv2 cp
2020-04-21 12:47:17 -04:00
OpenShift Merge Robot
1ed849f2d1
Merge pull request #5921 from baude/v2imageep
add entrypoint from image where needed
2020-04-21 11:23:21 -04:00
OpenShift Merge Robot
a2541bf133
Merge pull request #5912 from giuseppe/v2-rlimits
v2, pkg: implement rlimits
2020-04-21 11:17:35 -04:00
Brent Baude
29ec539b3f podmanv2 cp
enable podman to copy files between container and host, local mode only. this is a straight port of v1 code to v2.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-04-21 09:23:27 -05:00
Brent Baude
224a5ce51e add entrypoint from image where needed
if the image specifies both the image and entrypoint, we need to account for that and preprend the entrypoint to the command.  this only happens if no user command and entrypoint were supplied.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-04-21 09:15:21 -05:00
Brent Baude
ae5e7e7e78 v2podman port
add port command to podman.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-04-21 08:33:15 -05:00
OpenShift Merge Robot
08823e7383
Merge pull request #5913 from rhatdan/v2
More fixes for podman create tests
2020-04-21 07:54:39 -04:00
Giuseppe Scrivano
6e3ad47b58
v2, podman: plug --userns=auto
--userns=auto tests pass now.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-21 13:46:57 +02:00
OpenShift Merge Robot
47d99fb625
Merge pull request #5647 from rhatdan/containers.conf
Update podmanV2 to use containers.conf
2020-04-21 05:21:09 -04:00
Daniel J Walsh
75fdb753dd
Handle annotations passed in via the client
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-21 05:18:39 -04:00
OpenShift Merge Robot
8884f6a4f3
Merge pull request #5875 from rhatdan/network
Cleanup network option parsing
2020-04-21 05:09:54 -04:00
Giuseppe Scrivano
0108161a4e
pkg: implement rlimits
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-21 10:36:48 +02:00
Valentin Rothberg
09dc701097 podman rmi: refactor logic
While this commit was initially meant to fix #5847, it has turned into a
bigger refactoring which I did not manage to break into smaller pieces:

 * Fix #5847 by refactoring the image-removal logic.

 * Make the api handler for image-removal use the ABI code. This way,
   both (i.e., ABI and Tunnel) end up using the same code.  Achieving
   this code share required to move some code around to prevent circular
   dependencies.

 * Everything in pkg/api (excluding pkg/api/types) must now only be
   accessed from code using `ABISupport`.

 * Avoid imports from entities on handlers to prevent circular
   dependencies.

 * Move `podman system service` logic into `cmd` to prevent circular
   dependencies - it depends on pkg/api.

 * Also remove the build header from infra/abi files.  It will otherwise
   confuse swagger and other tools; errors we cannot fix as go doesn't
   expose a build-tag env variable.

Fixes: #5847
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-04-21 08:12:25 +02:00
OpenShift Merge Robot
89276a5f92
Merge pull request #5883 from abitrolly/patch-3
Return labes in API (fixes #5882)
2020-04-20 20:18:48 -04:00
OpenShift Merge Robot
b771467224
Merge pull request #5862 from rhatdan/v2
Fix up handling of image data as well as setting Linux Capabilties correctly
2020-04-20 17:19:32 -04:00
OpenShift Merge Robot
1e9b3e7500
Merge pull request #5899 from jwhonce/wip/tree
V2 podman image tree
2020-04-20 16:37:38 -04:00
Daniel J Walsh
e62d081770
Update podman to use containers.conf
Add more default options parsing

Switch to using --time as opposed to --timeout to better match Docker.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-20 16:11:36 -04:00
OpenShift Merge Robot
354088a94b
Merge pull request #5889 from giuseppe/rootless-fd-join
rootless: move join namespace inside child process
2020-04-20 16:08:39 -04:00
Daniel J Walsh
b35a0d0cd2
Fix podman inspect to accept -l and -s fields
Podman inspect has a breaking change in that it dropped
--latest and --size options.

This PR adds these back.  Lots of tests rely on
podman inspect -l.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-20 15:52:46 -04:00
Daniel J Walsh
eb101936e6
Handle Linux Capabilities correctly
If user sets capabilities list we need handle minimal capabilities.

Also handle seccomp-policy being passed in.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-20 15:50:46 -04:00
Daniel J Walsh
a2ad5bb9e1
Add functions to return image informations
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-20 15:50:46 -04:00
Jhon Honce
9cd6bba5d5 V2 podman image tree
* Basic port of V1 podman image tree ID

TODO: Refactor to return tree from service and format in presentation
layer
TODO: Support tunneling mode

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-04-20 10:10:24 -07:00
Giuseppe Scrivano
788fdc685b
rootless: move join namespace inside child process
open the namespace file descriptors inside of the child process.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-20 17:40:25 +02:00
Giuseppe Scrivano
8360fcf82c
rootless: skip looking up parent user ns
since we join directly the conmon user namespace, there is no need to
look up its parent user namespace, as we can safely assume it is the
init namespace.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-20 17:40:24 +02:00
OpenShift Merge Robot
e5e625b2a6
Merge pull request #5872 from jwhonce/wip/options
V2 Fix support for tcp://[::]<port> connections
2020-04-20 10:42:00 -04:00
Sujil02
838df56bcf Update pod inspect report to hold current pod status.
Added status field in pod inspect report.
Fixed pod tests to use it.

Signed-off-by: Sujil02 <sushah@redhat.com>
2020-04-20 07:05:25 -04:00
Anatoli Babenia
48e7bae4e0 Return labes in API (fixes #5882)
Signed-off-by: Anatoli Babenia <anatoli@rainforce.org>
2020-04-20 09:56:37 +03:00
Daniel J Walsh
426eccee63
Cleanup network option parsing
We were not handling the parsing of --ip.  This pr adds validation
checks and now will support the flag.

Move validation to the actual parsing of the network flags.

We should only parse the dns flags if the user changed them. We don't
want to pass default options if set in containers.conf to the server.
Potential for duplicating defaults.

Add support for --dns-opt flag passing

Begin handling of --network flag, although we don't have a way right now
to translate a string into a specgen.Namespace.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-19 05:19:30 -04:00
Jhon Honce
4e0326241b V2 Fix support for tcp://[::]<port> connections
* Fix support for socket activation, on remote and service

$ systemd-socket-activate -l 8083 --fdname=podman bin/podman system service --log-level=debug --time=30
$ bin/podman-remote --remote=tcp://[::]:8083 image ls

Or, use the podman.{socket,service} unit files

$ bin/podman-remote --remote=unix:///run/podman/podman.sock image ls

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-04-17 16:39:59 -07:00
Sujil02
37f3b191d5 Add pod prune for api v2.
Add the ability to prune pods for api v2,
Includes the addition of force flag, for client side prompt.
Update test suite to support this use case.

Signed-off-by: Sujil02 <sushah@redhat.com>
2020-04-17 17:30:58 -04:00
OpenShift Merge Robot
ba289dcd79
Merge pull request #5868 from baude/v2t2
Fixes for system tests
2020-04-17 14:43:21 -04:00
OpenShift Merge Robot
a5884c07df
Merge pull request #5819 from vrothberg/v2-build
podmanV2: implement build
2020-04-17 14:30:49 -04:00
Brent Baude
44a8cf8676 Fixes for system tests
Various fixes to protect against regressions in system tests

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-04-17 13:22:06 -05:00