Commit Graph

1404 Commits

Author SHA1 Message Date
Daniel J Walsh
6b3d4abb07 Fix podman command --change CMD
Currently in Docker if you commit with --change 'CMD a b c'
The command that gets added is

[/bin/sh -c "a b c"]

If you commit --change 'CMD ["a","b","c"]'

You get
[a b c]

This patch set makes podman match this behaviour.

Similar change required for Entrypoint.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2019-04-17 15:44:50 -04:00
OpenShift Merge Robot
bf5ffdafb4 Merge pull request #2917 from baude/remotestart
podman-remote start
2019-04-17 10:13:18 -07:00
baude
3c0147e559 podman-remote start
enable the ability to start containers from the remote-client.  also,
enable start integration tests for remote testing.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-17 11:08:54 -05:00
OpenShift Merge Robot
799d4667c1 Merge pull request #2936 from haircommander/pod-prune
Add podman pod prune
2019-04-17 08:55:59 -07:00
OpenShift Merge Robot
a87cf6fef8 Merge pull request #2949 from baude/remotecontainercommands
podman-remote container commands
2019-04-16 09:38:35 -07:00
Peter Hunt
4319552cf8 Added remote pod prune
Signed-off-by: Peter Hunt <pehunt@redhat.com>
2019-04-16 11:23:18 -04:00
Peter Hunt
0b34b4a59c Add podman pod prune
podman system prune would leave pods be, and not prune them if they were stopped.
Fix this by adding a `podman pod prune` command that prunes stopped pods similarly to containers.

Signed-off-by: Peter Hunt <pehunt@redhat.com>
2019-04-16 11:23:18 -04:00
baude
7cea949f04 podman-remote container commands
Several container commands were ported to the remote client but had not
been updated on the container submenu yet.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-16 10:22:50 -05:00
OpenShift Merge Robot
a2e9626d92 Merge pull request #2934 from haircommander/kube-file
Add File mounts to play kube
2019-04-16 08:05:44 -07:00
OpenShift Merge Robot
713839cf83 Merge pull request #2946 from baude/segs
Fix segfaults attribute to missing options
2019-04-16 06:25:41 -07:00
baude
6fb0a706af Fix segfaults attribute to missing options
In cases where the remote client culls options to a command, we need to
be sure that the lookup for that flag does not result in a nil pointer.
To do so, we add a Remote attribute to the podman struct and then cli
helper funcs are now aware they are remote.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-15 12:21:51 -05:00
OpenShift Merge Robot
c1e2b583c8 Merge pull request #2944 from mheon/fix_renumber
Call the runtime with WithRenumber() when asked by 'system renumber' command
2019-04-15 09:39:17 -07:00
Matthew Heon
936537cfe7 Call the runtime with WithRenumber() when asked
We must have lost this at some point, rendering system renumber
useless.

Signed-off-by: Matthew Heon <mheon@redhat.com>
2019-04-15 10:36:19 -04:00
Peter Hunt
2f804ea9a2 Add File mounts to play kube
Both File and FileOrCreate options are supported.

Signed-off-by: Peter Hunt <pehunt@redhat.com>
2019-04-15 09:27:36 -04:00
Giuseppe Scrivano
187de9f98e cmd, pkg: drop commented code
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-15 13:00:54 +02:00
Giuseppe Scrivano
a09b6bf77d pod: drop dead code
we always create a user namespace now, so no need to check if we are
running as non root.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-15 12:59:46 +02:00
Giuseppe Scrivano
ffd8999421 rootless, mount: not create namespace
we need to check if we are able to mount the container as part of the
mount command itself.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-15 12:57:19 +02:00
Peter Hunt
e61838bc3b Incorporate image and default environment variables in play kube
Also put Environment variable parsing from image data into a helper function

Signed-off-by: Peter Hunt <pehunt@redhat.com>
2019-04-14 16:27:52 -04:00
OpenShift Merge Robot
4daf788022 Merge pull request #2830 from baude/remotecheckpoint
remote-client checkpoint/restore
2019-04-13 03:23:42 -07:00
OpenShift Merge Robot
15723671b3 Merge pull request #2911 from giuseppe/fix-pull-errors
pull: fix a couple of issues
2019-04-12 12:40:51 -07:00
OpenShift Merge Robot
89ffcf9df9 Merge pull request #2903 from baude/remotegenkube
podman-remote generate kube
2019-04-12 11:03:20 -07:00
baude
80b2c097fe podman-remote generate kube
Allow the ability to generate kube YAML from the podman remote-client.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-12 12:05:09 -05:00
Giuseppe Scrivano
fcea6fda82 pull: exit with error if the image is not found
Closes: https://github.com/containers/libpod/issues/2785

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-12 15:24:22 +02:00
Giuseppe Scrivano
6f3d2edc2b pull: remove cryptic error message
we were printing something like:

(0x1840f00,0xc00041bba0)

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-12 14:23:52 +02:00
OpenShift Merge Robot
cb2b019d5d Merge pull request #2885 from kunalkushwaha/image-dangling-filter-fix
imagefilter dangling handling corrected
2019-04-11 14:15:49 -07:00
OpenShift Merge Robot
272f10f1bb Merge pull request #2902 from baude/remoteattachfixes
Fixes for podman-remote run and attach
2019-04-11 13:06:39 -07:00
baude
495f2ce515 Fixes for podman-remote run and attach
Fixes the ability to run (create,start) a container and attach to its
console correctly.  We can now also exit from the console without
hanging the remote client.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-11 13:51:50 -05:00
OpenShift Merge Robot
745993b592 Merge pull request #2895 from mheon/commit_no_default_include_volumes
Add --include-volumes flag to 'podman commit'
2019-04-11 09:59:52 -07:00
OpenShift Merge Robot
ab259987ee Merge pull request #2879 from mheon/header_on_no_images
Print header for 'podman images' even with no images present
2019-04-11 09:59:44 -07:00
baude
72d08d4c61 remote-client checkpoint/restore
add the ability for the remote client to be able to checkpoint and
restore containers.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-11 10:13:58 -05:00
Matthew Heon
aef09ce031 Add --include-volumes flag to 'podman commit'
The 'docker commit' will never include a container's volumes when
committing, without an explicit request through '--change'.

Podman, however, defaulted to including user volumes as image
volumes.

Make this behavior depend on a new flag, '--include-volumes',
and make the default behavior match Docker.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-04-11 09:55:24 -04:00
OpenShift Merge Robot
f9ae2d4830 Merge pull request #2883 from baude/remoteclifixes
Initial remote flag clean up
2019-04-11 01:06:56 -07:00
Kunal Kushwaha
034cc8a5ae imagefilter dangling handling corrected
imagefilter dangling=<value> shall not be ignored.
this PR handles the value and returns images accordingly.

Signed-off-by: Kunal Kushwaha <kushwaha_kunal_v7@lab.ntt.co.jp>
2019-04-11 09:18:31 +09:00
OpenShift Merge Robot
6cd6eb6768 Merge pull request #2892 from edsantiago/healthcheck_typo_fix
(minor): fix misspelled 'Healthcheck'
2019-04-10 11:28:57 -07:00
baude
7f10672486 Initial remote flag clean up
The remote client should not honor most of the local podman "global"
options.  Many of them are only applicable to where the podman backend
is actually running.

Also, removing some options for push and pull that also are not
applicable to the remote client environment.

Additionally, take some of the code from main and pop it into functions
that can be called whether local or not.  This helps the remote client
and darwin builds.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-10 12:43:19 -05:00
Ed Santiago
a07b2c2c60 (minor): fix misspelled 'Healthcheck'
Signed-off-by: Ed Santiago <santiago@redhat.com>
2019-04-10 09:43:56 -06:00
baude
fbcda7772d Add the ability to attach remotely to a container
Also, you can now podman-remote run -it.  There are some bugs that need
to be ironed out but I would prefer to merge this so we can make both
progress on start and exec as well as the bugs.

* when doing podman-remote run -it foo /bin/bash, you have to press
enter to get the prompt to display. with the localized podman, we had to
teach it connect to the console first and then start the container so we
did not miss anything.

* when executing "exit" in the console, we get a hard lockup likely
because nobody knows what to do.

* custom detach keys are not supported

* podman-remote run -it alpine ls does not currently work.  only
dropping to a shell works.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-10 08:59:28 -05:00
Matthew Heon
ba4a1bb9bd Print header for 'podman images' even with no images
Fixes #2877

Signed-off-by: Matthew Heon <mheon@redhat.com>
2019-04-10 09:55:55 -04:00
OpenShift Merge Robot
2f2c7660c3 Merge pull request #2882 from baude/remoteps
podman-remote ps
2019-04-10 04:24:56 -07:00
OpenShift Merge Robot
60ef8f8da9 Merge pull request #2663 from jwhonce/wip/remote_umount
Implement podman-remote umount and rm command
2019-04-09 17:46:28 -07:00
baude
23cd1928ec podman-remote ps
add the ability to run ps on containers using the remote client.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-09 15:00:35 -05:00
Jhon Honce
09ff62429a Implement podman-remote rm
* refactor command output to use one function
* Add new worker pool parallel operations
* Implement podman-remote umount
* Refactored podman wait to use printCmdOutput()

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2019-04-09 11:55:26 -07:00
Ed Santiago
cebb7ebbee ps: now works with --size and nonroot
Revert the error check from #2832. This is not strictly
necessary, since 'podman ps --size' now works perfectly
fine in nonroot because some recent change (Giuseppe's,
presumably) masked os.Geteuid() return 0... but removing
for maintainability's sake.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2019-04-09 12:55:19 -06:00
OpenShift Merge Robot
8eb03d3e53 Merge pull request #2746 from baude/remotecreate
podman-remote create|run
2019-04-08 10:16:34 -07:00
OpenShift Merge Robot
7f8e9bd54c Merge pull request #2845 from QiWang19/cpdir
fix bug podman cp directory
2019-04-08 07:48:54 -07:00
baude
ba65301c95 podman-remote create|run
add the ability to create and run containers via the podman-remote
client.

we now create an intermediate layer from the the create/run cli flags.
the intermediate layer can be converted into a createconfig or into a
varlink struct.  Once transported, the varlink struct can be converted
back to an intermediate layer and then to a createconfig.

remote terminals are not supported yet.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-08 09:05:31 -05:00
Brent Baude
23602de816 Revert "Switch to golangci-lint"
Signed-off-by: baude <bbaude@redhat.com>
2019-04-05 20:09:45 -05:00
Daniel J Walsh
bc320be00b Merge pull request #2742 from openSUSE/golangci-lint
Switch to golangci-lint
2019-04-05 11:02:41 -04:00
OpenShift Merge Robot
ed8bd80d3f Merge pull request #2856 from haircommander/kube-entrypoint
Respect image entrypoint in play kube
2019-04-05 05:56:29 -07:00
Giuseppe Scrivano
ebc8999fcf podman: enable kube for rootless
Closes: https://github.com/containers/libpod/issues/2852

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-05 09:34:23 +02:00