Commit Graph

394 Commits

Author SHA1 Message Date
Giuseppe Scrivano c11cff4542
cmd, podman: do not override entrypoint if unset
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-30 11:33:34 +02:00
Giuseppe Scrivano 32564df172
cmd, podman: use String instead of variable+StringVar
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-30 11:33:34 +02:00
Jhon Honce 22d5b2e305 V2 enable ps tests
* Combine cobra.Command helper functions into validate package
  from registry and common packages
* Introduce ChoiceValue for flags

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-04-29 15:51:37 -07:00
Valentin Rothberg 8700c2fd03 enable inspect tests
A surprisingly big change.  A core problem was that `podman inspect`
allows for passing containers AND images with the default `--type=all`.
This only worked partially as the data was processed in isolation which
caused various issues (e.g., two separate outputs instead of one) but it
also caused issues regarding error handling.

Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-04-29 07:25:31 +02:00
Brent Baude 517bc28360 system tests must pass
Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-04-28 15:17:00 -05:00
Giuseppe Scrivano c999f9daf2
specgen: remove dead code
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-28 14:30:55 +02:00
OpenShift Merge Robot f6f7172494
Merge pull request #6000 from mheon/volume_backend_flags
Add support for volumes-from, image volumes, init
2020-04-27 21:53:37 +02:00
Matthew Heon 02671a103f Add support for volumes-from, image volumes, init
This should complete Podmanv2's support for volume-related flags.
Most code was sourced from the old pkg/spec implementation with
modifications to account for the split between frontend flags
(volume, mount, tmpfs) and the backend flags implemented here.

Also enables tests for podman run with volumes

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-04-27 13:13:21 -04:00
Daniel J Walsh a83d1a2772
Make podman container list == podman ps
Also make
podman create -p PUBLISHPorts
work.

This PR fixes ps_test.go

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-27 09:51:26 -04:00
OpenShift Merge Robot fdf64f0c66
Merge pull request #5994 from giuseppe/fix-healthchecks
v2, podman: fix healthchecks
2020-04-27 15:40:24 +02:00
Giuseppe Scrivano 408d1328e2
spec: propagate --no-hosts to specgen
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-27 12:58:01 +02:00
Giuseppe Scrivano eab41cac6f
podman: handle --no-healthcheck
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-27 11:31:46 +02:00
Giuseppe Scrivano 350727570b
podman: special case health-cmd none
now we have to pass down this information to libpod

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-27 11:21:55 +02:00
OpenShift Merge Robot 2afe579c06
Merge pull request #5971 from giuseppe/fix-userns-tests
v2, podman: fix and enable all run_userns_test.go tests
2020-04-24 22:39:26 +02:00
Giuseppe Scrivano 88f1994ab9
podman: assume user namespace if there are mappings
if some mappings are specified, assume there is a private user
namespace.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-24 15:55:38 +02:00
Giuseppe Scrivano 64d8b4eebb
podman: implement userns=keep-id
add missing implementation for userns=keep-id and enable the user
namespaces tests.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-24 15:03:50 +02:00
Giuseppe Scrivano 3eeb03d1f9
podman: fix --log-opt=path=%s
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-24 13:02:07 +02:00
Giuseppe Scrivano 145d74716c
podman: fix --http-proxy
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-24 12:56:24 +02:00
Giuseppe Scrivano a1f73d0954
podman: fix podman --group-add
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-24 12:56:23 +02:00
Giuseppe Scrivano 2e6a62fc38
podman: fix --cgroups=disabled
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-24 12:56:21 +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 2fd6a84c09
specgen: do not always set shmsize
if it wasn't overriden on the CLI, leave it undefined.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-23 18:05:02 +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
OpenShift Merge Robot 1ad978a3d7
Merge pull request #5919 from rhatdan/v2
Lots more fixes for V2 conversion.
2020-04-21 16:53:53 -04:00
OpenShift Merge Robot ba1b5d4559
Merge pull request #5851 from jwhonce/wip/json
Provide a json variable pointing to a configured json API
2020-04-21 16:13:06 -04:00
Daniel J Walsh bc56236102
Handle hostname flag from client
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-21 16:02:11 -04:00
Daniel J Walsh 592e7867a3
Add support for devices from command line
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-21 16:02:11 -04:00
Daniel J Walsh 9d7b5947b9
Fix handling of CGroupsParent and CGroupsMode
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-21 16:00:45 -04:00
Daniel J Walsh f7fe424e19
Throw error on IPv6 ip addresses
Podman does not currently support IPv6 addresses.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-21 16:00:45 -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 0134999034
Merge pull request #5911 from giuseppe/cgroup-skip-unset
podman: do not set empty cgroup limit blocks
2020-04-21 14:20:58 -04:00
Jhon Honce b21a5b7ff4 Provide a json variable pointing to a configured json API
* All commands now using the same instance of json API
* `json` variable created in each package to prevent `encoding/json`
  from being re-introduced

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-04-21 07:56:10 -07: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 46384a6189
podman: do not set empty cgroup limit blocks
refactor cgroup limits in their own function.  If there are no limits
set avoid to set the block.  Basic rootless containers work now.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-21 11:42:24 +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 64f774866a
Need to set the Entrypoint
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
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
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
Giuseppe Scrivano 4e09c5ebb4
common: setting cgroup resources correctly
fix some cgroups related integration tests.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-20 17:26:53 +02: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
Daniel J Walsh 6c421b076f
We were not handling the user option on create
With this patch we can get run_passwd_test.go to pass

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-17 14:52:51 -04:00
Jhon Honce 554c663b5a Fix bug where two configurations had been created
* registry.PodmanConfig() new returns a pointer to the source of truth

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-04-16 16:49:59 -07:00
Brent Baude 241326a9a8 Podman V2 birth
remote podman v1 and replace with podman v2.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-04-16 15:53:58 -05:00