Commit graph

1183 commits

Author SHA1 Message Date
Giuseppe Scrivano
418dee100b
spec: allow container alias name in lookup
Previously --uts=container: expected the full container ID.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-02-26 15:04:31 +01:00
OpenShift Merge Robot
9631c30ce4
Merge pull request #5328 from lsm5/trivial-typo-correction
fix trivial typo
2020-02-25 22:57:53 +01:00
Lokesh Mandvekar
4e015cefc2 fix trivial typo
Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2020-02-25 15:44:06 -05:00
OpenShift Merge Robot
609407d4e6
Merge pull request #5326 from jwhonce/issues/5311
Remove 1 sec delay
2020-02-25 21:32:28 +01:00
OpenShift Merge Robot
6c5591ed9d
Merge pull request #3901 from cevich/support_f31
Cirrus: Support testing with F31
2020-02-25 21:32:20 +01:00
OpenShift Merge Robot
6a03a9a538
Merge pull request #5324 from giuseppe/fix-running-no-pause
rootless: raise error if the process is not found
2020-02-25 21:16:26 +01:00
Jhon Honce
997e3c8863 Remove 1 sec delay
* Stop closing net.Listener() twice on interrupt
 * Do not report error if closing server twice

Fixes #5311

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-02-25 11:04:20 -07:00
Chris Evich
80da73f13c
Temp. skip "remove pause by id" bindings test
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-02-25 12:34:26 -05:00
Giuseppe Scrivano
6dbb89e56c
rootless: become root only if the pause file is specified
we need to store the pause process PID file so that it can be re-used
later.

commit e9dc212092 introduced this
regression.

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

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-02-25 18:15:29 +01:00
Giuseppe Scrivano
d400f0b5b2
rootless: fix segfault when open fd >= FD_SETSIZE
if there are more than FD_SETSIZE open fds passed down to the Podman
process, the initialization code could crash as it attempts to store
them into a fd_set.  Use an array of fd_set structs, each of them
holding only FD_SETSIZE file descriptors.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-02-25 17:52:06 +01:00
OpenShift Merge Robot
6babc9f20c
Merge pull request #5305 from mheon/check_for_common_deadlocks
Add basic deadlock detection for container start/remove
2020-02-25 13:17:12 +01:00
OpenShift Merge Robot
8a30759b6b
Merge pull request #5318 from giuseppe/fix-running-without-env-variables
build: move initialization after SetXdgDirs
2020-02-25 01:59:01 +01:00
Giuseppe Scrivano
44baab0a70
utils: relax check for directory to use
when we use namespaces, we set the run directory to 0711 to allow
other users to access it.

without this relaxation, the /run/user/$UID directory would be
skipped.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-02-24 21:26:16 +01:00
Lokesh Mandvekar
e3857800d2 add apiv2 tests for podman pause and stop
Initial ginkgo setup credit to Brent Baude <bbaude@redhat.com>

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2020-02-24 15:05:52 -05:00
OpenShift Merge Robot
afd5cbff1e
Merge pull request #5281 from baude/bindingsci
enable ci on go binding tests
2020-02-24 17:25:22 +01:00
OpenShift Merge Robot
2602083f62
Merge pull request #5301 from baude/apiv2imagetests3
more image binding tests
2020-02-24 17:09:24 +01:00
Matthew Heon
4004f646cd Add basic deadlock detection for container start/remove
We can easily tell if we're going to deadlock by comparing lock
IDs before actually taking the lock. Add a few checks for this in
common places where deadlocks might occur.

This does not yet cover pod operations, where detection is more
difficult (and costly) due to the number of locks being involved
being higher than 2.

Also, add some error wrapping on the Podman side, so we can tell
people to use `system renumber` when it occurs.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-02-24 09:29:34 -05:00
Ed Santiago
fab5b35b2a Friendly amendment: tests, and a help message
1) Help message for podman port was missing [PORT]

2) Add test for 'podman port'. And, actually, an entire
   networking test that I'd written some weeks ago but
   apparently didn't 'git add'.

Signed-off-by: Ed Santiago <santiago@redhat.com>
Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-02-23 11:04:39 -06:00
baude
5a1609b9cf fix port list by container with port
code was erronously misinterpretting the port as a containername.

Fixes: #1791832

Signed-off-by: baude <bbaude@redhat.com>
Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-02-23 11:03:56 -06:00
Brent Baude
d92b9b8859 more image binding tests
add two additional bindings tests for image usage.

add ability to use search filter on the endpoint.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-02-23 11:01:21 -06:00
Brent Baude
a64985c71b enable ci on go binding tests
Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-02-22 09:43:19 -06:00
Brent Baude
f0df07b593 add more image tests for go bindings
adding more image tests for go bindings.  one big change is that the params were converted from map[string]string to url.values to account for the ability to send []string as query params

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-02-21 16:11:39 -06:00
OpenShift Merge Robot
f51cf8546d
Merge pull request #5280 from baude/addreturn
search endpoint failure correction
2020-02-21 15:30:00 -05:00
Brent Baude
a86f3e88d0 disable generation of cni firewall plugin
it turns out that when the firewall plugin is not provided as part of the configuration, then the firewall cni plugin will dynamically figure out if it should use firewalld or iptables.

also removing this from the default configuration file

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-02-21 13:06:58 -06:00
Brent Baude
ea153c8e2e search endpoint failure correction
when returning an invalid search, a return was omitted triggering a null on the consumer end.

Fixes: #5228

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-02-21 12:53:39 -06:00
OpenShift Merge Robot
75ea3b67c6
Merge pull request #5213 from mheon/remove_db_imagevol
Remove ImageVolumes from database
2020-02-21 13:25:59 -05:00
OpenShift Merge Robot
5bdf5aeb71
Merge pull request #5263 from baude/logsize
implement reverse reader for log reads
2020-02-21 13:12:21 -05:00
OpenShift Merge Robot
a554e97adc
Merge pull request #5236 from marusak/filter_by_id
apiv2: Image filtering and fixup docs
2020-02-21 12:17:38 -05:00
OpenShift Merge Robot
585649df46
Merge pull request #5178 from marusak/expose_cpu
stats: Expose CPU usage in API
2020-02-21 11:04:16 -05:00
OpenShift Merge Robot
4e35c0824f
Merge pull request #5279 from edsantiago/swagger_fixes
Swagger: yet more fixes
2020-02-21 10:00:14 -05:00
Matthew Heon
e3a549b7b1 Remove ImageVolumes from database
Before Libpod supported named volumes, we approximated image
volumes by bind-mounting in per-container temporary directories.
This was handled by Libpod, and had a corresponding database
entry to enable/disable it.

However, when we enabled named volumes, we completely rewrote the
old implementation; none of the old bind mount implementation
still exists, save one flag in the database. With nothing
remaining to use it, it has no further purpose.

Signed-off-by: Matthew Heon <mheon@redhat.com>
2020-02-21 09:37:30 -05:00
OpenShift Merge Robot
aae8874204
Merge pull request #5262 from schubter/signal-decode
APIv2: Fixed syscall.Signal not convertable by decoder
2020-02-21 07:33:22 -05:00
OpenShift Merge Robot
bfeaabb350
Merge pull request #5222 from mheon/fix_5219
Use cleaned destination path for indexing image volumes
2020-02-20 18:16:52 -05:00
Jhon Honce
0f0b4fd3c2 Add support for ssh:// and unix:// podman clients
* Make context keys package safe
 * Add support for PODMAN_HOST and PODMAN_SSHKEY
 * Add slight increasing delay when client connections fail
 * Remove usages of path.Join(), added JoinURL(). '/' is not OS
   dependent.

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-02-20 14:18:45 -07:00
Ed Santiago
63a2fec6cb Swagger: yet more fixes
PR #5204 added /libpod/containers/create but with the wrong
swagger comment. Fix that.

Also fix some other inconsistencies: missing 'libpod' prefix,
missing 'Container' suffix, and change 'ContainerCreate'
to 'CreateContainer'; all of these changes preserve consistency
with both the invoked function as well as the overall naming
conventions used in this module.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-02-20 12:21:52 -07:00
Brent Baude
e3b31a3ab8 implement reverse reader for log reads
in cases where the log file exceeds the available memory of a system, we had a bug that triggered an oom because the entire logfile was being read when the tail parameter was given.  this reads in chunks and is more or less memory safe.

fixes: #5131

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-02-20 10:22:45 -06:00
OpenShift Merge Robot
3e5699224b
Merge pull request #5251 from sujil02/pod-test
Add test to validate the pod bindings api
2020-02-20 17:06:36 +01:00
OpenShift Merge Robot
846405256b
Merge pull request #5241 from mheon/pod_network_opts_add
Add network opts to pods
2020-02-20 10:39:15 +01:00
Ed Santiago
1d8437d3ca Swagger: fix one incorrect comment
PR #5235 updated a bunch of entrypoints from {name} to {name:.*},
requiring matching changes to swagger comments. Looks like one
got missed due to the manual nature of this work.

Have I mentioned lately that manual maintenance of duplicate
information is not a great idea?

Discrepancy caught by my script, which I would really like to
look into getting into CI, but is gating on #5238. (I would
actually not like to get this script into CI, I would prefer
to have the duplicate information be autogenerated from
the function calls themselves, but I seem to have lost
that battle)

Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-02-19 16:21:11 -07:00
Brent Baude
d65ff6b3ec apiv2 container create using specgen
this uses the specgen structure to create containers rather than the outdated createconfig.  right now, only the apiv2 create is wired up.  eventually the cli will also have to be done.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-02-19 15:20:15 -06:00
Sujil02
3db43dcce3 Add test to validate the pod bindings api
Include test to validate pod create, start, stop, restart,
pause, unpause, list, and inspect api bindings.
Also includes bug fixes that resulted in invalid api responses.

Signed-off-by: Sujil02 <sushah@redhat.com>
2020-02-19 16:05:27 -05:00
OpenShift Merge Robot
aa1bb0b579
Merge pull request #5259 from schubter/apiv2-create-image
APIv2: Fixed CreateImageFromImage not respecting supplied Tag parameter
2020-02-19 17:30:37 +01:00
OpenShift Merge Robot
da249e2fe2
Merge pull request #5225 from vrothberg/fix-5087
config: use built-in TOML merge and adhere to label setting
2020-02-19 17:30:21 +01:00
Matthew Heon
97323808ed Add network options to podman pod create
Enables most of the network-related functionality from
`podman run` in `podman pod create`. Custom CNI networks can be
specified, host networking is supported, DNS options can be
configured.

Also enables host networking in `podman play kube`.

Fixes #2808
Fixes #3837
Fixes #4432
Fixes #4718
Fixes #4770

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-02-19 11:29:30 -05:00
Andreas Schubert
3aa32dff1d
Fixed syscall.Signal not convertable by decoder
Signed-off-by: Andreas Schubert <schubter@gmail.com>
2020-02-19 15:04:24 +01:00
Andreas Schubert
1e4129a19d
Fixed typo in KillContainer
Signed-off-by: Andreas Schubert <schubter@gmail.com>
2020-02-19 13:48:10 +01:00
Valentin Rothberg
58cbbbc56e set process labels in pkg/spec
Set the (default) process labels in `pkg/spec`. This way, we can also
query libpod.conf and disable labeling if needed.

Fixes: #5087
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-02-19 11:04:02 +01:00
Andreas Schubert
6e5cf818e9
Fixed CreateImageFromImage not respecting supplied Tag parameter
Signed-off-by: Andreas Schubert <schubter@gmail.com>
2020-02-19 10:36:44 +01:00
OpenShift Merge Robot
1bed53b02c
Merge pull request #5247 from schubter/5242
APIv2: fixes decoder issue
2020-02-19 03:45:02 +01:00
Andreas Schubert
4b96c3b2c8
adds missing query struct tags and exports the fields
Signed-off-by: Andreas Schubert <schubter@gmail.com>
2020-02-18 21:10:55 +01:00