3210 Commits

Author SHA1 Message Date
9934507d74 Command-line input validation: reject unused args
Several podman commands accept no subcommands. Some
of those were not actually checking, though, which
could lead to user confusion. Added validation where
missing; and, refactored to minimize duplication.

(Side note: I decided against using cobra.NoArgs
because its error message, "unknown command",
misleadingly implies that there are known ones).

Also added validation to varlink

Signed-off-by: Ed Santiago <santiago@redhat.com>
2019-02-27 14:20:29 -07:00
512245afcb Fix ignored --stop-timeout flag to 'podman create'
Also add some extra debug information to help figure out what's
going on when stop goes bad.

Fixes: #2472

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-27 16:20:11 -05:00
2c0909bccc fixup! Incorporate review feedback
Per tsweeney, add back the original examples

Signed-off-by: Ed Santiago <santiago@redhat.com>
2019-02-27 14:19:02 -07:00
7a66ad7fee fixup! missed some more:
- [flags] in generate-kube
- optional [IMAGE] in images

Signed-off-by: Ed Santiago <santiago@redhat.com>
2019-02-27 14:19:02 -07:00
69808ff320 fixup! Correction to 'checkpoint'
...it's a subcommand of 'podman container'

Signed-off-by: Ed Santiago <santiago@redhat.com>
2019-02-27 14:18:15 -07:00
9a3a59c3a5 Followup to #2456: update examples, add trust
- belatedly incorporate review feedback from baude
- add usage synopsis for trust-set and trust-show

Signed-off-by: Ed Santiago <santiago@redhat.com>
2019-02-27 14:18:15 -07:00
4e553cfd46 Merge pull request #2471 from baude/clifixups
fix up a number of misplace commands
2019-02-27 22:15:31 +01:00
5c08ff58d7 podman create: disable interspersed opts
With the change to cobra, the following command fails:

   # podman create alpine sh -c /bin/true
   Error: unknown shorthand flag: 'c' in -c

(Correct behavior is to pass '-c' to the container command)

This PR corrects that.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2019-02-27 14:08:58 -07:00
4042528067 Merge pull request #2464 from mheon/build_test_no_varlink
Add a task to Cirrus gating to build w/o Varlink
2019-02-27 21:54:04 +01:00
4a33ee2ab3 fix up a number of misplace commands
* ps now on main command
* sign is no longer on main commmand
* ls, list no longer are valid main aliases for images
* ls, list does work for podman image

Signed-off-by: baude <bbaude@redhat.com>
2019-02-27 12:29:41 -06:00
bd9a18df15 Add a task to Cirrus gating to build w/o Varlink
We had a regression on master where we broke the build for
non-Varlink builds. Catch this in CI in the future.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-27 12:21:57 -05:00
f1f26f4442 Merge pull request #2465 from mheon/fix_build_varlink
Fix build for non-Varlink-tagged Podman
2019-02-27 17:39:13 +01:00
fd16be5c00 Merge pull request #2431 from baude/remotereadme
podman remote-client readme
2019-02-27 16:56:14 +01:00
6412b05211 Skip checkpoint/restore tests on Fedora for now
There is currently still one SELinux related checkpoint/restore problem:
https://github.com/containers/libpod/issues/2334

To avoid unnecessary CI failures the checkpoint/restore tests are
temporarily disabled on Fedora.

It is not necessary to disable the tests on Ubuntu as it is running
without SELinux and it is also not necessary to disable the RHEL 7 tests
as RHEL's CRIU is too old to run the checkpoint/restore tests at all.

Signed-off-by: Adrian Reber <areber@redhat.com>
2019-02-27 16:32:59 +01:00
ffefbda694 Fix build for non-Varlink-tagged Podman
Fixes #2459

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-27 10:27:08 -05:00
70d3cc2e73 Merge pull request #2454 from mheon/all_your_defaults_belong_to_libpod
Move all storage configuration defaults into libpod
2019-02-27 14:25:16 +01:00
f7f266e361 Merge pull request #2456 from edsantiago/better_synopses
Better usage synopses for subcommands
2019-02-27 13:49:29 +01:00
87f0b36787 Merge pull request #2460 from adrianreber/restore
Remove restore as podman subcommand
2019-02-27 13:36:08 +01:00
17135cb00b Remove restore as podman subcommand
The commands checkpoint and restore should only be available under
'podman container'. This is probably a result of the recent cobra
migration.

Signed-off-by: Adrian Reber <areber@redhat.com>
2019-02-27 07:46:29 +01:00
a20ff42134 Better usage synopses for subcommands
Conceptually simple: include, where applicable, a brief
description of command-line options for each subcommand.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2019-02-26 18:10:36 -07:00
623fcfab84 Merge pull request #2458 from mheon/bump-1.1.0
Bump to 1.1.0
2019-02-27 00:46:56 +01:00
86141f9eba Bump gitvalidation epoch
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 17:33:45 -05:00
e130657e28 Bump to v1.2.0-dev
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 17:33:45 -05:00
006206abe1 Bump to v1.1.0
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
v1.1.0
2019-02-26 17:33:45 -05:00
174e8997aa Merge pull request #2434 from mheon/release_notes_v1.1
Update release notes for v1.1.0
2019-02-26 23:23:30 +01:00
22c885c730 Merge pull request #2440 from rhatdan/buildah
Vendor in buildah v1.7.1
2019-02-26 22:49:01 +01:00
f68a243f8e Centralize setting default volume path
No reason to do it in util/ anymore. It's always going to be a
subdirectory of c/storage graph root by default, so we can just
set it after the return.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 15:44:46 -05:00
5511cdc487 Ensure volume path is set appropriately by default
There are some cases where we might not be properly adjusting the
volume path after setting the storage graph root. Ensure that we
always set volume path to be a child of graph root.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 15:39:13 -05:00
e3b428686d Vendor in latest buildah 1.7.1
This release updates buildah to use containers/image v1.5
Which fixes a crash issue when pulling container images.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2019-02-26 15:37:23 -05:00
b8e6ef618b Move all storage configuration defaults into libpod
Instead of passing in defaults via WithStorageConfig after
computing them in cmd/podman/libpodruntime, do all defaults in
libpod itself.

This can alleviate ordering issues which caused settings in the
libpod config (most notably, volume path) to be ignored.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 15:32:53 -05:00
ee667dcf97 Merge pull request #2448 from giuseppe/volumes-skip-user-binds
volume: do not create a volume if there is a bind
2019-02-26 19:52:23 +01:00
6352f19d88 Merge pull request #2446 from mheon/add_image_volume
Only remove image volumes when removing containers
2019-02-26 19:20:08 +01:00
ed1ea8dea1 rename pod when we have a name collision with a container
when podman generate kube runs, it names the pod based on the first
container it finds. the resulting yaml file is perfectly acceptable
in a kubernetes environment.  But when replaying the YAML file
with podman, we cannot have a container and pod with the same name.
therefore, we rename the pod if find a collision to name_pod.

Signed-off-by: baude <bbaude@redhat.com>
2019-02-26 12:13:12 -06:00
1ad0d29fc2 Merge pull request #2443 from baude/playstartrecursive
start pod containers recursively
2019-02-26 18:46:36 +01:00
21bc766ee3 volume: do not create a volume if there is a bind
if there is already a bind mount specified for the target, do not
create a new volume.

Regression introduced by 52df1fa7e054d577e8416d1d46db1741ad324d4a

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-02-26 18:42:04 +01:00
7c27c44629 Merge pull request #2444 from adrianreber/logs
Fix podman logs -l
2019-02-26 18:29:44 +01:00
83db80ce17 Only remove image volumes when removing containers
When removing volumes with rm --volumes we want to only remove
volumes that were created with the container. Volumes created
separately via 'podman volume create' should not be removed.

Also ensure that --rm implies volumes will be removed.

Fixes #2441

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 12:16:58 -05:00
f5b72b8c44 Fix podman logs -l
'podman logs -l' was no longer working. This fixes it by replacing
&waitCommand.Latest with &logsCommand.Latest.

Signed-off-by: Adrian Reber <areber@redhat.com>
2019-02-26 17:33:17 +01:00
0e252f0437 Merge pull request #2439 from vrothberg/vendor-image
vendor containers/image v1.5
2019-02-26 17:20:44 +01:00
c79c641da1 start pod containers recursively
when using the play kube command, we need to make sure that containers
with dependancies are started in proper order.  in this case, the infra
container must be started first.

Signed-off-by: baude <bbaude@redhat.com>
2019-02-26 10:19:08 -06:00
4848aae587 podman remote-client readme
addition of a remote-client readme.

Signed-off-by: baude <bbaude@redhat.com>
2019-02-26 10:03:16 -06:00
36df2e7073 Merge pull request #2397 from mheon/volume_path_fixes
Volume path fixes
2019-02-26 17:02:03 +01:00
6a47073b7f Update release notes for v1.1.0
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 10:29:55 -05:00
507ab29cfe Merge pull request #2289 from 4383/improve-hacking
[skip ci]Introduce how to start to hack on libpod.
2019-02-26 10:10:05 -05:00
ffe7e49698 vendor containers/image v1.5
Fixes are race condition in the blobinfocache when copying images
leading to a panic().

Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2019-02-26 15:55:20 +01:00
ba6f1acf07 Record when volume path is explicitly set in config
This ensures we won't overwrite it when it's set in the config we
load from disk.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 09:38:02 -05:00
5a0a9dfa23 Add debug information when overriding paths with the DB
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 09:38:02 -05:00
0d697573a6 Add path for named volumes to podman info
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 09:38:02 -05:00
5fcbe5baab Add volume path to default libpod.conf (and manpage)
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 09:38:02 -05:00
d41d8d090e Validate VolumePath against DB configuration
If this doesn't match, we end up not being able to access named
volumes mounted into containers, which is bad. Use the same
validation that we use for other critical paths to ensure this
one also matches.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 09:37:00 -05:00