3198 Commits

Author SHA1 Message Date
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
da70c9db6f When location of c/storage root changes, set VolumePath
We want named volumes to be created in a subdirectory of the
c/storage graph root, the same as the libpod root directory is
now. As such, we need to adjust its location when the graph root
changes location.

Also, make a change to how we set the default. There's no need to
explicitly set it every time we initialize via an option - that
might conflict with WithStorageConfig setting it based on graph
root changes. Instead, just initialize it in the default config
like our other settings.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-26 09:37:00 -05:00
8a5e103876 Merge pull request #2438 from vrothberg/scope-v2
[skip ci] readme/docs update
2019-02-26 15:27:11 +01:00
7fea0d7077 docs: cross-reference podman-{generate,play}-kube
Addresses: https://github.com/containers/libpod/pull/2428#discussion_r260200694
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2019-02-26 15:07:05 +01:00
2ce8a1c890 README: refine "Out of scope" section
Based on user feedback, refine the "Out of scope" section regarding
`docker-compose`:

* Explain why Podman uses Kubernetes YAML.
* Explain how `podman-play-kube` and `podman-generate-kube` fit into the
  picture.

Addresses: https://github.com/containers/libpod/pull/2428#discussion_r259996507
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2019-02-26 15:02:40 +01:00
02988f17f6 Merge pull request #2382 from adrianreber/selinux
Fix one (of two) SELinux denials during checkpointing
2019-02-26 14:26:48 +01:00
865fc27075 Merge pull request #2437 from giuseppe/runtime-nice-error
oci: improve error message when the OCI runtime is not found
2019-02-26 14:09:15 +01:00
446d333783 oci: improve error message when the OCI runtime is not found
We were previously returning the not so nice error directly from
conmon.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-02-26 11:40:34 +01:00
0a8a1deed1 Label CRIU log files correctly
CRIU creates a log file during checkpointing in .../userdata/dump.log.
The problem with this file is, is that CRIU injects a parasite code into
the container processes and this parasite code also writes to the same
log file. At this point a process from the inside of the container is
trying to access the log file on the outside of the container and
SELinux prohibits this. To enable writing to the log file from the
injected parasite code, this commit creates an empty log file and labels
the log file with c.MountLabel(). CRIU uses existing files when writing
it logs so the log file label persists and now, with the correct label,
SELinux no longer blocks access to the log file.

Signed-off-by: Adrian Reber <areber@redhat.com>
2019-02-26 11:28:54 +01:00
05450f3162 Merge pull request #2428 from vrothberg/docker-compose-out-of-scope
README: update "out of scope" section
2019-02-26 10:38:04 +01:00
f9ef82ee7c Merge pull request #2362 from mheon/add_locks_to_config
Add num_locks to the default libpod config
2019-02-26 10:37:59 +01:00
993b3a17c5 Merge pull request #2436 from baude/remotepodpause
podman-remote pod pause|unpause|restart
2019-02-26 10:14:35 +01:00
5b010ee58b Add num_locks to the default libpod config
Allow adjusting number of locks in libpod.conf via an already
available knob we previously didn't expose in the default config
file.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-02-25 17:43:25 -05:00