Commit Graph

1171 Commits

Author SHA1 Message Date
Giuseppe Scrivano
525f0b30ac system: add new subcommand "migrate"
it is useful to migrate existing containers to a new version of
podman.  Currently, it is needed to migrate rootless containers that
were created with podman <= 1.2 to a newer version which requires all
containers to be running in the same user namespace.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-04-26 22:23:45 +02:00
Daniel J Walsh
3a4be4b66c Add --read-only-tmpfs options
The --read-only-tmpfs option caused podman to mount tmpfs on /run, /tmp, /var/tmp
if the container is running int read-only mode.

The default is true, so you would need to execute a command like

--read-only --read-only-tmpfs=false to turn off this behaviour.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2019-04-26 12:29:10 -04:00
baude
2e800d63aa podman-remote prune containers
enable the ability to prune containers from the remote-command.  this
also includes the system prune command.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-26 10:15:09 -05:00
baude
c4dd7c5813 enable podman remote top
add the ability for the remote client to display a container's running
processes.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-25 14:44:14 -05:00
OpenShift Merge Robot
01e79477ca Merge pull request #2850 from baude/eventsjournald
journald event logging
2019-04-25 12:20:39 -07:00
Qi Wang
6f08e6c3d1 fix login supports credHelpers config
Skip the error if login can't find credentials in credHelpers with credHelpers configed in auth.json and podman login will store the credentials in credHelpers later.

Signed-off-by: Qi Wang <qiwan@redhat.com>
2019-04-25 13:48:55 -04:00
Nalin Dahyabhai
5c81a117f1 images: add context to GetParent/IsParent/Remove/Prune...
Add a context.Context parameter to Image.GetParent(), Image.IsParent(),
Image.GetChildren(), Image.Remove(), and Runtime.PruneImages().

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2019-04-25 08:57:58 -04:00
baude
7bf7c177ab journald event logging
add the ability for podman to read and write events to journald instead
of just a logfile.  This can be controlled in libpod.conf with the
`events_logger` attribute of `journald` or `file`.  The default will be
set to `journald`.

Signed-off-by: baude <bbaude@redhat.com>
2019-04-24 16:00:04 -05:00
OpenShift Merge Robot
b01fdcbbd5 Merge pull request #2973 from baude/remoterestart
podman remote-client restart containers
2019-04-24 13:59:06 -07:00
baude
18d66136c1 podman remote-client restart containers
add the ability to restart containers with the remote-client

Signed-off-by: baude <bbaude@redhat.com>
2019-04-24 13:30:18 -05:00
Valentin Rothberg
b90a5107e9 pull: special case all-tags semantics
Supporting the all-tags semantics added some non-trivial code to the
pull command which does not make use of `registries.conf` and introduced
some regressions such as not adhering to the configured search registries.

Speacial case the all-tags flags to let existing users of all-tags
continue working while others can work again.  This implies that the
all-tags pull does not adhere to configured search registries while the
default (non-all-tags) pull does.

Note that this is a purely symptomaic fix.  A final solution should
include Buildah and the c/image library to avoid redundant and
error-prone code across the projects.

Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1701922
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2019-04-24 19:33:12 +02:00
OpenShift Merge Robot
a2487aec67 Merge pull request #2933 from haircommander/kube-clean
Clean up after play kube failure
2019-04-22 13:31:27 -07:00
Jhon Honce
69962682e9 Refactor of 'podman prune' to better support remote
* Push iterations into the service not the client
* Add e2e tests
* Refactor to use new frameworks

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2019-04-18 15:13:56 -07:00
OpenShift Merge Robot
e4947e5fd6 Merge pull request #2948 from baude/remotepause
podman-remote pause|unpause
2019-04-18 14:17:41 -07:00
baude
55e630e787 podman-remote pause|unpause
Add the ability to pause and unpause containers with the remote client.

Also turned on the pause tests!

Signed-off-by: baude <bbaude@redhat.com>
2019-04-18 13:42:27 -05:00
Peter Hunt
8c478f94f9 Add header to play kube output
Signed-off-by: Peter Hunt <pehunt@redhat.com>
2019-04-18 09:18:53 -04:00
Peter Hunt
47c1017cf8 Clean up after play kube failure
Before, we would half create a pod in play kube and error out if we fail.
Rather, let's clean up after our failure so the user doesn't have to delete the pod themselves.

Signed-off-by: Peter Hunt <pehunt@redhat.com>
2019-04-18 09:18:53 -04:00
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