Commit Graph

1364 Commits

Author SHA1 Message Date
OpenShift Merge Robot
a2e0e170f9 Merge pull request #6532 from sujil02/python-test
Modify py test to start stop system service for each test
2020-06-09 16:27:24 +02:00
Valentin Rothberg
a5facca78f e2e: disable checkpoint test on Ubuntu
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-06-08 16:51:32 +02:00
Brent Baude
efd1422143 Enable Ubuntu tests in CI
Add updates required for ubuntu and run integration tests

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-06-08 12:21:16 +02:00
Sujil02
37428df4c2 Modify py test to start stop system service for each test
Start stop system service for each test class to make it east to integrate to CI
Adds more tests
Add some common methods shared between images and containers test.

Signed-off-by: Sujil02 <sushah@redhat.com>
2020-06-07 22:27:01 -04:00
OpenShift Merge Robot
1fcb6788a5 Merge pull request #6417 from sujil02/py-test
Adds docker py regression test.
2020-06-06 05:40:03 -04:00
Daniel J Walsh
c8f57b71a4 Fix handling of systemd.
Systemd enablement has to happen on the server side, since we need
check if the image is running systemd.

Also need to make sure user setting the StopSignal is not overriden on the
server side. But if not set and using systemd, we set it correctly.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-06-05 13:01:57 -04:00
Sujil02
359d67a687 Adds docker py regression test.
Adds test to validate podman image endpoints.
Adds readme on how to run python tests
Adds contants file.

Signed-off-by: Sujil02 <sushah@redhat.com>
2020-06-04 16:04:34 -04:00
OpenShift Merge Robot
650ed437a8 Merge pull request #6489 from edsantiago/bats
BATS and APIv2: more tests and tweaks
2020-06-04 15:03:40 +02:00
OpenShift Merge Robot
c133e55afc Merge pull request #6485 from QiWang19/remote-ignore
fix remote test --ignore & turn on more tests
2020-06-04 14:52:25 +02:00
OpenShift Merge Robot
6682ea8f0d Merge pull request #6481 from QiWang19/rm-test-stop
turn on remote stop_test
2020-06-04 14:49:35 +02:00
OpenShift Merge Robot
8cf74a79e3 Merge pull request #6470 from mheon/fix_stats_nonet
Properly follow linked namespace container for stats
2020-06-04 14:46:49 +02:00
OpenShift Merge Robot
a3f2a8d73c Merge pull request #6482 from mheon/split_inspect
Ensure that image/container inspect are specialized
2020-06-04 13:36:10 +02:00
Ed Santiago
2d5a2a7640 BATS and APIv2: more tests and tweaks
- (minor): apiv2 tests: check for full ID

   Observation made while reviewing #6461: tests were checking
   only for a 12-character container/image ID in return value.
   It's actually 64, and we should test for that. This should
   also minimize confusion in a future maintainer.

 - podman pause/unpause: new test

   Runs a 'date/sleep' loop, pauses container, sleeps 3s,
   restarts, then confirms that there's a 3- to 6-second
   gap in the logs for the container.

 - podman healthcheck: new test

   run a container with healthcheck, test both healthy
   and unhealthy conditions

 - podman pod: check '{{.Pod}}' field in podman ps

   Hey, as long as we have a pod with two running
   containers, might as well confirm that 'podman ps'
   returns the expected pod ID.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-06-03 16:13:33 -06:00
OpenShift Merge Robot
377554d681 Merge pull request #6461 from chuanchang/add_contaner_cases_for_apiv2
test.apiv2: add test cases for committing an image from a container
2020-06-03 21:15:05 +02:00
Qi Wang
f313a88441 fix remote test --ignore & turn on more tests
fix remote test --ignore & turn on more tests

Signed-off-by: Qi Wang <qiwan@redhat.com>
2020-06-03 15:04:58 -04:00
Matthew Heon
d505989b0e Ensure that image/container inspect are specialized
We are currently able to inspect images with
`podman container inspect` and containers with
`podman image inspect` and neither of those seem correct. This
ensures that the appropriate flags, and only the appropriate
flags, are available for each specialized exec, and they can only
inspect the specific type they were intended to.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-06-03 14:25:45 -04:00
OpenShift Merge Robot
bba0a8be1a Merge pull request #6465 from rhatdan/remote
Add more Remote tests
2020-06-03 20:12:05 +02:00
OpenShift Merge Robot
cbfb4980ce Merge pull request #6469 from jwhonce/wip/auth
V2 Add support for ssh authentication methods
2020-06-03 19:43:56 +02:00
OpenShift Merge Robot
df0141dc20 Merge pull request #6473 from mheon/fix_inspect_segfault
Fix a segfault in `podman inspect -l` w/ no containers
2020-06-03 19:27:54 +02:00
Qi Wang
e77db144ab turn on remote stop_test
turn on stop_test  --cidfile

Signed-off-by: Qi Wang <qiwan@redhat.com>
2020-06-03 12:55:58 -04:00
Jhon Honce
cbca625328 V2 Add support for ssh authentication methods
* podman --remote ssh://<user>:<password>@<host>:<port><path>
* podman --remote ssh://<user>:<password>@<host>:<port><path> \
  --identity <path> --passphrase <phrase>
* ssh-add <key>
  podman --remote ssh://<user>@<host><path>
* Fix `podman help` to run even if podman missing components
* Prompt for passphrase on stdin IFF key is protected and passphrase
  not given via any other configuration

* cobra flags do not support optional value flags therefore refactored
  --remote to be a boolean and --url will now contain the URI to Podman
  service

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-06-03 09:54:39 -07:00
Daniel J Walsh
8153f299ad Add more Remote tests
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-06-03 06:35:45 -04:00
Alex Jia
382342a0b0 test.apiv2: add test cases for committing an image from a container
Testing query parameters: container, repo, tag, comment, author, changes
and pause.

Signed-off-by: Alex Jia <chuanchang.jia@gmail.com>
2020-06-03 05:33:56 +00:00
Qi Wang
5473ba95d7 Turn on remote rm_test --cidfile
Turn on remote rm_test --cidfile

Signed-off-by: Qi Wang <qiwan@redhat.com>
2020-06-02 19:12:31 -04:00
Matthew Heon
42505f64d2 Properly follow linked namespace container for stats
Podman containers can specify that they get their network
namespace from another container. This is automatic in pods, but
any container can do it.

The problem is that these containers are not guaranteed to have a
network namespace of their own; it is perfectly valid to join the
network namespace of a --net=host container, and both containers
will end up in the host namespace. The code for obtaining network
stats did not account for this, and could cause segfaults as a
result. Fortunately, the fix is simple - the function we use to
get said stats already performs appropriate checks, so we just
need to recursively call it.

Fixes #5652

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-06-02 17:58:52 -04:00
Matthew Heon
4b37d4d5af Fix a segfault in podman inspect -l w/ no containers
We also need to rework container/image inspect to be separate,
but that can happen in another PR.

Fixes #6472

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-06-02 17:22:00 -04:00
Matthew Heon
e0d9404634 Enable detached exec for remote
The biggest obstacle here was cleanup - we needed a way to remove
detached exec sessions after they exited, but there's no way to
tell if an exec session will be attached or detached when it's
created, and that's when we must add the exit command that would
do the removal. The solution was adding a delay to the exit
command (5 minutes), which gives sufficient time for attached
exec sessions to retrieve the exit code of the session after it
exits, but still guarantees that they will be removed, even for
detached sessions. This requires Conmon 2.0.17, which has the new
`--exit-delay` flag.

As part of the exit command rework, we can drop the hack we were
using to clean up exec sessions (remove them as part of inspect).
This is a lot cleaner, and I'm a lot happier about it.

Otherwise, this is just plumbing - we need a bindings call for
detached exec, and that needed to be added to the tunnel mode
backend for entities.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-06-02 15:30:42 -04:00
OpenShift Merge Robot
94f2241831 Merge pull request #6411 from mheon/exec_bindings
Add bindings for exec and enable attached remote exec
2020-06-02 06:08:21 -04:00
Matthew Heon
45a7e7266e Add bindings for exec and enable attached remote
This adds bindings for starting exec sessions, and then uses them
to wire up detached exec. Code is heavily based on Attach code
for containers, slightly modified to handle exec sessions.

Bindings are presently attached-only, detached is pending on a
Conmon update landing in CI. I'll probably get to that next.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-06-01 17:24:00 -04:00
OpenShift Merge Robot
d6bf6b92c8 Merge pull request #6456 from edsantiago/bats
system tests : more tests
2020-06-01 21:11:41 +02:00
OpenShift Merge Robot
7c41cb7802 Merge pull request #6454 from rhatdan/remote
Remove skipifremote checks in images_test.go
2020-06-01 20:41:41 +02:00
Ed Santiago
03d32d05ac system tests : more tests
- exec: add test for #5046, in which conmon swallowed chars
  on a large byte transfer

- pod: add 'pod exists' tests, both positive and negative;
  consolidate tests; add '--label', and check in 'pod inspect'
  add 'pod ps' tests

- networking: add test for #5466, in which detached run
  with --userns=keep-id would not forward a port

Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-06-01 12:00:47 -06:00
Brent Baude
990514ea92 Add support for format {{.Label}}
the pod ps man page says .Label is valid go template format. i dont think the function was actually ever implemented.

Fixes #6448

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-06-01 11:54:15 -05:00
Daniel J Walsh
d8b0a58fd8 turn on remote testing for images. podman-remote build now works.
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-06-01 12:44:04 -04:00
Brent Baude
8c1883721c Fix leak of empty tarball
In cases of trying to export an image, if the image was not found, we leaked an empty tarball or directory depending on the format.

Fixes: #6409

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-06-01 10:07:58 -05:00
OpenShift Merge Robot
22713d62e2 Merge pull request #6353 from lsm5/build-without-varlink
enable building without `varlink` tag
2020-06-01 14:48:35 +02:00
OpenShift Merge Robot
9037908b78 Merge pull request #5594 from edsantiago/bats
system tests: enable skopeo REGISTRY_AUTH_FILE
2020-05-30 05:17:18 -04:00
Lokesh Mandvekar
8a914e8a0b default build without varlink tag
Issue gh#6286 was already fixed in a prior commit but the Makefile still
ran some varlink steps by default.

This commit makes any varlink build steps dependent on the varlink
build tag and also makes the contrib rpm spec file independent of
varlink.

Endpoint tests will be run only if BUILDTAGS contains varlink.

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2020-05-29 14:38:33 -04:00
OpenShift Merge Robot
78c38460eb Merge pull request #6380 from mheon/fix_mount_readonly
Add support for `readonly` option to --mount
2020-05-29 08:26:05 -04:00
Jhon Honce
5626c2163b V2 verify JSON output is consistent and doesn't drift
$ cd test/apiv2
$ python -m unittest -v test_rest_v1_0_0.TestApi

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-05-28 16:20:29 -07:00
OpenShift Merge Robot
e8818ced80 Merge pull request #6416 from vrothberg/fix-ps-last
fix `ps --last=N`
2020-05-28 14:54:45 -04:00
Valentin Rothberg
d6469c9c9b fix ps --last=N
Fix `ps --last=N` to also include non-running containers. Also add an
e2e test to prevent us from regressing in the future.

Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-05-28 14:24:01 +02:00
Alex Jia
7e03d277f7 test.apiv2: add testing for image and deal with API returning binary
Add testing for displaying image history and exporting image

Deal with API returning binary (Content-Type =~ 'octet').
When so, set $output to the output of 'file'.

Bug fix: in 't' helper, declare loop var $i as local
to avoid contaminating caller

Signed-off-by: Ed Santiago <santiago@redhat.com>
Signed-off-by: Alex Jia <chuanchang.jia@gmail.com>
2020-05-28 10:00:13 +00:00
Brent Baude
8438fa4fec Add streaming ability to endpoint
Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-05-27 12:16:39 -05:00
OpenShift Merge Robot
89b4683cc4 Merge pull request #6372 from boaz0/gh_6283
Add --format to pod inspect
2020-05-27 09:59:25 -04:00
Boaz Shuster
1f8a78747a Add --format to pod inspect
Signed-off-by: Boaz Shuster <boaz.shuster.github@gmail.com>
2020-05-27 09:48:38 +03:00
Matthew Heon
e26f9eda64 Add support for readonly option to --mount
This is just an alias to the `ro` option, but it's already in the
manpages (and Docker) so we might as well add support for it.

Fixes #6379

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-05-26 16:05:11 -04:00
OpenShift Merge Robot
d32d588504 Merge pull request #6363 from jwhonce/wip/attach
V2 Fix interface nil checks
2020-05-26 14:36:17 -04:00
Jhon Honce
1fb907198f V2 Fix interface nil checks
Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-05-26 10:00:15 -07:00
OpenShift Merge Robot
1077d2d0b7 Merge pull request #6321 from Luap99/podman-generate-systemd-unit-prefix
Allow to change the generated systemd unit name prefix
2020-05-25 06:46:17 -04:00