Commit Graph

1583 Commits

Author SHA1 Message Date
baude
fec1de6ef4 trivial cleanups from golang
the results of a code cleanup performed by the goland IDE.

Signed-off-by: baude <bbaude@redhat.com>
2019-07-03 15:41:33 -05:00
baude
24e1eebde4 ps should use nostore when possible
when not using --size with ps, we do not need a store.  this should make
ps more effecient when the system is under heavy load.

also, prune unused ps functions as no longer needed.

Signed-off-by: baude <bbaude@redhat.com>
2019-07-03 13:21:58 -05:00
OpenShift Merge Robot
93560ab6de Merge pull request #3477 from ashley-cui/pauserootless
Fix rootless detection error for pause & unpause
2019-07-03 00:47:34 +02:00
Ashley Cui
a704be59e5 Fix rootless detection error for pause & unpause
Previously, when pause & unpause were run on rootless, the error message that pause was unsupported for rootless was not being thrown. When running remote, even if remote host was root, unsupported rootless error was being thrown.

Now, the error shows up when appropriate.

Signed-off-by: Ashley Cui <ashleycui16@gmail.com>
2019-07-02 14:33:03 -04:00
baude
d0a0a3fbd9 configure runtime without store
some podman commands do not require the use of a container/image store.
in those cases, it is more effecient to not open the store, because that
results in having to also close the store which can be costly when the
system is under heavy write I/O loads.

Signed-off-by: baude <bbaude@redhat.com>
2019-07-01 14:15:44 -05:00
OpenShift Merge Robot
150778820f Merge pull request #3324 from marcov/detach-keys-configurable
libpod: specify a detach keys sequence in libpod.conf
2019-07-01 15:54:27 +02:00
OpenShift Merge Robot
ed394070a8 Merge pull request #3422 from nalind/no-layer-images
Handle images which contain no layers
2019-06-28 19:14:45 +02:00
OpenShift Merge Robot
9d49bda8f1 Merge pull request #3451 from ashley-cui/unmount
Remove umount command from remote client.
2019-06-28 18:06:30 +02:00
Ashley Cui
93d3eb30a8 Remove umount command from remote client.
Since there is no mount command, it does not make sense to have umount.

Signed-off-by: Ashley Cui <ashleycui16@gmail.com>
2019-06-27 16:52:56 -04:00
Giuseppe Scrivano
7255468e65 rootless: enable linger if /run/user/UID not exists
at least on Fedora 30 it creates the /run/user/UID directory for the
user logged in via ssh.

This needs to be done very early so that every other check when we
create the default configuration file will point to the correct
location.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-06-27 16:34:35 +02:00
OpenShift Merge Robot
0906b32087 Merge pull request #3442 from baude/removelibpodfrommainphase2
libpod removal from main (phase 2)
2019-06-27 16:01:45 +02:00
baude
8561b99644 libpod removal from main (phase 2)
this is phase 2 for the removal of libpod from main.

Signed-off-by: baude <bbaude@redhat.com>
2019-06-27 07:56:24 -05:00
OpenShift Merge Robot
c06d9898f9 Merge pull request #3420 from ashley-cui/remoteconf
Fix crash for when remote host IP or Username is not set in conf file…
2019-06-26 22:25:34 +02:00
Nalin Dahyabhai
1ebb84b58e Handle images which contain no layers
This fixes some of our handling of images which have no layers, i.e.,
those whose TopLayer is set to an empty value.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2019-06-26 10:43:04 -04:00
OpenShift Merge Robot
58a1777f51 Merge pull request #3374 from giuseppe/cgroups
cgroups: add initial support for cgroups v2
2019-06-26 15:25:19 +02:00
OpenShift Merge Robot
da1ef2bdfd Merge pull request #3435 from mheon/fix_tmpfs_options
Fix parsing of the --tmpfs option
2019-06-26 15:07:22 +02:00
Giuseppe Scrivano
5d25a4793d util: drop IsCgroup2UnifiedMode and use it from cgroups
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-06-26 13:17:04 +02:00
Marco Vedovati
6e9b490f5e podman: clarify the format of --detach-keys argument
Signed-off-by: Marco Vedovati <mvedovati@suse.com>
2019-06-26 10:12:34 +02:00
OpenShift Merge Robot
c9078936dd Merge pull request #3419 from baude/removelibpodfrommainphase1
remove libpod from main
2019-06-26 02:36:06 +02:00
Matthew Heon
77f2e8467a Fix parsing of the --tmpfs option
With StringSlice, we're seeing individual options added and
parsed separately, so `tmpfs:nosuid,nodev` turns into three tmpfs
mounts passed into pkg/sec (tmpfs:, nosuid, nodev). Swap to
StringArray to tell cobra this can't be split on commas.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-06-25 18:06:00 -04:00
Ashley Cui
bf5686739c Fix crash for when remote host IP or Username is not set in conf file & conf file exists.
When Host IP is not set in podman-remote.conf, error is printed out.
When Username is not set in podman-remote.conf, default username is used.

Signed-off-by: Ashley Cui <ashleycui16@gmail.com>
2019-06-25 16:10:42 -04:00
baude
dd81a44ccf remove libpod from main
the compilation demands of having libpod in main is a burden for the
remote client compilations.  to combat this, we should move the use of
libpod structs, vars, constants, and functions into the adapter code
where it will only be compiled by the local client.

this should result in cleaner code organization and smaller binaries. it
should also help if we ever need to compile the remote client on
non-Linux operating systems natively (not cross-compiled).

Signed-off-by: baude <bbaude@redhat.com>
2019-06-25 13:51:24 -05:00
OpenShift Merge Robot
21978c9908 Merge pull request #3332 from rhatdan/cgroupmanager
Correctly identify the defaults for cgroup-manager
2019-06-25 14:54:28 +02:00
OpenShift Merge Robot
d8b18a9879 Merge pull request #3401 from mheon/templating_is_dumb
Fix inspect --format '{{.Mounts}}.
2019-06-25 00:20:25 +02:00
OpenShift Merge Robot
394e12aa65 Merge pull request #3391 from QiWang19/cp_file
fix bug creats directory copying file
2019-06-24 23:49:57 +02:00
Matthew Heon
2d9f1e95eb Support aliases for .Src and .Dst in inspect .Mounts
This provides backwards compatability with 1.4.0-1.4.2 releases
which name .Source and .Destination as .Src and .Dst - useful for
not breaking toolbox.

Also add a test.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-06-24 14:08:25 -04:00
Adrian Reber
1e706a021d Add --latest, -l to 'podman diff'
The man page of 'podman diff' claims that the diff sub-command knows
about --latest, -l. This adds support, as described in the man-page, to
the diff sub-command for --latest, -l.

Signed-off-by: Adrian Reber <areber@redhat.com>
2019-06-21 13:37:04 +02:00
Qi Wang
c962d214e6 fix bug creats directory copying file
close #3384

Signed-off-by: Qi Wang <qiwan@redhat.com>
2019-06-20 17:52:12 -04:00
OpenShift Merge Robot
360adac374 Merge pull request #3366 from edsantiago/test_typo_fixes
fix broken healthcheck tests
2019-06-19 19:34:00 +02:00
OpenShift Merge Robot
c211b3ff6a Merge pull request #3364 from jwhonce/wip/logrus
Vendor in logrus v1.4.2
2019-06-19 17:36:55 +02:00
Jhon Honce
d0d9a4c9b1 Vendor in logrus v1.4.2
Fixes #3346

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2019-06-18 17:37:53 -07:00
Ed Santiago
40eb0453ad fix broken healthcheck tests
Four of the healthcheck tests were completely broken. They
were written with the option '--healthcheck-cmd' which is
not an option (it should be  '--healthcheck-command', with
'command' as a full word). The tests were merely checking
exit code, not error message, so of course they failed.
I have fixed the command line and added checks for the
expected diagnostic.

(Side note: do not write tests that check exit code but
nothing else. This should not need to be said).

One of the four tests was invalid: --healthcheck-interval 0.5s.
Per Brent:

   initially i was going to restrict sub one-second intervals

That test has been removed. It would probably be a good idea
for a future PR to add some validation such as preventing
negative values, but that's left as an exercise for later.

Also: grammar fix in an error message.

Caught by my ginkgo log greasemonkey script, which
highlights 'Error' messages and grabbed my attention.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2019-06-18 15:07:53 -06:00
OpenShift Merge Robot
3cabd81045 Merge pull request #3352 from mheon/inspect_config_to_libpod
Move the Config portion of Inspect into libpod
2019-06-18 20:34:30 +02:00
Giuseppe Scrivano
292a48cab4 cmd, docs, test: fix some typos
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-06-18 10:52:19 +02:00
OpenShift Merge Robot
8bcfd24397 Merge pull request #3338 from jwhonce/issue/3299
Add remote client log to file
2019-06-18 01:03:38 +02:00
Matthew Heon
33b71944c0 Move the Config portion of Inspect into libpod
While we're at it, rewrite how we populate it. There were several
potential segfaults in the optional spec.Process block, and a few
fields not being populated correctly versus 'docker inspect'.

Signed-off-by: Matthew Heon <mheon@redhat.com>
2019-06-17 15:36:55 -04:00
Jhon Honce
0003be1e0e Add remote client logging to a file
Logging messages from the dependency libraries should not log onto the
screen when using the remote client.  This patch writes logging to
~/.config/containers/podman-remote.log

Fixes #3299

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2019-06-17 08:01:39 -07:00
Petr Vaněk
3db5cd67d4 API.md: fix few typos
Appropriate changes were applied to the file
cmd/podman/varlink/io.podman.varlink, in order to make changes in API.md
persistent.

Signed-off-by: Petr Vaněk <arkamar@atlas.cz>
2019-06-15 23:07:46 +02:00
Daniel J Walsh
53c3720de9 Correctly identify the defaults for cgroup-manager
Currently we report cgroupmanager default as systemd, even if the user modified
the libpod.conf.  Also cgroupmanager does not work in rootless mode.  This
PR correctly identifies the default cgroup manager or reports it is not supported.

Also add homeDir to correctly get the homedir if the $HOME is not set.  Will
attempt to get Homedir out of /etc/passwd.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2019-06-15 09:51:47 -04:00
OpenShift Merge Robot
670fc03088 Merge pull request #3094 from QiWang19/cpvol
podman copy  files to the volume with a container
2019-06-15 12:48:54 +02:00
OpenShift Merge Robot
90e3c9002b Merge pull request #3328 from mheon/storage_opts_for_cleanup
When creating exit command, pass storage options on
2019-06-15 00:18:53 +02:00
Matthew Heon
74691738aa Fix storage-opts type in Cobra
StringSliceVar was distorting options. StringArrayVar seems to
not mangle them, so use that instead.

Thanks to Giuseppe for finding this one.

Signed-off-by: Matthew Heon <mheon@redhat.com>
2019-06-14 09:46:19 -04:00
Matthew Heon
49e696642d Add --storage flag to 'podman rm' (local only)
This flag switches to removing containers directly from c/storage
and is mostly used to remove orphan containers.

It's a superior solution to our former one, which attempted
removal from storage under certain circumstances and could, under
some conditions, not trigger.

Also contains the beginning of support for storage in `ps` but
wiring that in is going to be a much bigger pain.

Fixes #3329.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-06-13 17:02:20 -04:00
Matthew Heon
b2bdbf331e When creating exit command, pass storage options on
We made changes earlier that empty storage options when setting
storage driver explicitly. Unfortunately, this breaks rootless
cleanup commands, as they lose the fuse-overlayfs mount program
path.

Fix this by passing along the storage options to the cleanup
process.

Also, fix --syslog, which was broken a while ago (probably when
we broke up main to add main_remote).

Fixes #3326

Signed-off-by: Matthew Heon <mheon@redhat.com>
2019-06-13 15:19:17 -04:00
Daniel J Walsh
3bbb692d80 If container is not in correct state podman exec should exit with 126
This way a tool can determine if the container exists or not, but is in the
wrong state.

Since 126 is documeted as:
**_126_** if the **_contained command_** cannot be invoked

It makes sense that the container would exit with this state.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2019-06-12 05:15:58 -04:00
OpenShift Merge Robot
d4681fafe5 Merge pull request #3298 from ashley-cui/username
Fix podman-remote to user default username
2019-06-12 08:49:12 +02:00
OpenShift Merge Robot
c385f33cdf Merge pull request #3290 from edsantiago/bats
BATS tests - get working again
2019-06-11 21:21:33 +02:00
OpenShift Merge Robot
130f6cba8c Merge pull request #3293 from mheon/add_test_for_play_kube
Add a test for 'podman play kube' to prevent regression
2019-06-11 18:48:25 +02:00
Matthew Heon
f909b745ec Add --filename option to generate kube
This allows writing output directly to a file, instead of STDOUT.
Makes things easier for some scripting tasks. Like the unit tests
for 'play kube'.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2019-06-11 11:26:46 -04:00
Ashley Cui
91ce129eab Fix podman-remote to user default username
Currently, you have to specify the username every time, rather than default like SSH does.

Signed-off-by: Ashley Cui <ashleycui16@gmail.com>
2019-06-11 10:09:37 -04:00