summaryrefslogtreecommitdiff
path: root/test
Commit message (Collapse)AuthorAge
* Move the HostConfig portion of Inspect inside libpodMatthew Heon2019-07-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we first began writing Podman, we ran into a major issue when implementing Inspect. Libpod deliberately does not tie its internal data structures to Docker, and stores most information about containers encoded within the OCI spec. However, Podman must present a CLI compatible with Docker, which means it must expose all the information in 'docker inspect' - most of which is not contained in the OCI spec or libpod's Config struct. Our solution at the time was the create artifact. We JSON'd the complete CreateConfig (a parsed form of the CLI arguments to 'podman run') and stored it with the container, restoring it when we needed to run commands that required the extra info. Over the past month, I've been looking more at Inspect, and refactored large portions of it into Libpod - generating them from what we know about the OCI config and libpod's (now much expanded, versus previously) container configuration. This path comes close to completing the process, moving the last part of inspect into libpod and removing the need for the create artifact. This improves libpod's compatability with non-Podman containers. We no longer require an arbitrarily-formatted JSON blob to be present to run inspect. Fixes: #3500 Signed-off-by: Matthew Heon <matthew.heon@pm.me>
* Make the healthcheck flags compatible with Docker CLIHunor Csomortáni2019-07-16
| | | | | | | | | | | | Docker CLI calls the healthcheck flags "--health-*", instead of "--healthcheck-*". Introduce the former, in order to keep compatibility, and alias the later, in order to avoid breaking current usage. Change "--healthcheck-*" to "--health-*" in the docs and tests. Signed-off-by: Hunor Csomortáni <csomh@redhat.com>
* create: improve parser for --healthcheck-commandStefan Becker2019-07-14
| | | | | | | | | | | | | | | | Fix Docker CLI compatibility issue: the "--healthcheck-command" option value should not be split but instead be passed as single string to "CMD-SHELL", i.e. "/bin/sh -c <opt>". On the other hand implement the same extension as is already available for "--entrypoint", i.e. allow the option value to be a JSON array of strings. This will make life easier for tools like podman-compose. Updated "--healthcheck-command" option values in tests accordingly. Continuation of #3455 & #3507 Signed-off-by: Stefan Becker <chemobejk@gmail.com>
* Merge pull request #3557 from rhatdan/envOpenShift Merge Robot2019-07-12
|\ | | | | Add support for --env-host
| * Add support for -env-hostDaniel J Walsh2019-07-11
| | | | | | | | | | | | | | | | | | | | This flag passes the host environment into the container. The basic idea is to leak all environment variables from the host into the container. Environment variables from the image, and passed in via --env and --env-file will override the host environment. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* | Merge pull request #3491 from giuseppe/rlimit-hostOpenShift Merge Robot2019-07-11
|\ \ | | | | | | podman: add --ulimit host
| * | podman: add --ulimit hostGiuseppe Scrivano2019-07-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | add a simple way to copy ulimit values from the host. if --ulimit host is used then the current ulimits in place are copied to the container. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | | Merge pull request #3470 from QazerLab/docs/system-testsOpenShift Merge Robot2019-07-11
|\ \ \ | | | | | | | | Update the testing documentation with system tests.
| * | | Update the testing documentation with system tests.Danila Kiver2019-07-02
| | | | | | | | | | | | | | | | | | | | | | | | Add Bats installation procedure. Signed-off-by: Danila Kiver <danila.kiver@mail.ru>
* | | | cgroups: fix a leak when using cgroupfsGiuseppe Scrivano2019-07-11
| |_|/ |/| | | | | | | | | | | | | | | | | be sure to load all the existing handlers, so that they can also be freed in addition to the handlers we treat differently. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | | first pass of corrections for golangci-lintbaude2019-07-10
| | | | | | | | | | | | Signed-off-by: baude <bbaude@redhat.com>
* | | Merge pull request #3501 from adrianreber/randomOpenShift Merge Robot2019-07-09
|\ \ \ | | | | | | | | Randomize IP addresses during checkpoint/restore tests
| * | | Use random IP addresses during checkpoint/restore testsAdrian Reber2019-07-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This tries to reduce CI errors which might happen due to parallel CI runs which all are using the same IP addresses. Using random addresses should reduce the possibility of parallel tests using the same IP address. Signed-off-by: Adrian Reber <areber@redhat.com>
* | | | Merge pull request #3480 from mheon/potential_ps_test_fixOpenShift Merge Robot2019-07-09
|\ \ \ \ | | | | | | | | | | Restart failed containers in tests
| * | | | Restart failed containers in testsMatthew Heon2019-07-02
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we're waiting for a container to come up with healthchecks, and it's not even running, there's no point to waiting further. Instead, let's restart the container and continue waiting. This may fix some flakes we're seeing with 'podman port' tests. Then again, all the tests there seem to fail, not just a single test flaking - so I bet there's some other underlying cause. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
* | | | Merge pull request #3497 from QazerLab/bugfix/systemd-generate-pidfileOpenShift Merge Robot2019-07-08
|\ \ \ \ | | | | | | | | | | Use conmon pidfile in generated systemd unit as PIDFile.
| * | | | Move skipping systemd tests to early setup.Danila Kiver2019-07-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is no meaning of performing setup/teardown for these tests when we even can not work with systemd. Signed-off-by: Danila Kiver <danila.kiver@mail.ru>
| * | | | Reload systemd daemon on creation of units location dir in tests.Danila Kiver2019-07-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Systemd manager drops non-existent directories from the units search path during initialization, thus, creation of UNIT_DIR, if it did not exist before, requres reloading the daemon. Signed-off-by: Danila Kiver <danila.kiver@mail.ru>
| * | | | Add debug information to "generate systemd" test.Danila Kiver2019-07-06
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danila Kiver <danila.kiver@mail.ru>
| * | | | Use conmon pidfile in generated systemd unit as PIDFile.Danila Kiver2019-07-04
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By default, podman points PIDFile in generated unit file to non-existent location. As a result, the unit file, generated by podman, is broken: an attempt to start this unit without prior modification results in a crash, because systemd can not find the pidfile of service's main process. Fix the value of "PIDFile" and add a system test for this case. Signed-off-by: Danila Kiver <danila.kiver@mail.ru>
* | | | Merge pull request #3515 from baude/rootlessintegrationtestsOpenShift Merge Robot2019-07-08
|\ \ \ \ | |_|/ / |/| | | speed up rootless tests
| * | | speed up rootless testsbaude2019-07-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | when running integrations tests as rootless, several tests still unnecessarily pull images which is costly in terms of time. Signed-off-by: baude <bbaude@redhat.com>
* | | | Merge pull request #3425 from adrianreber/restore-mount-labelOpenShift Merge Robot2019-07-08
|\ \ \ \ | |/ / / |/| | | Set correct SELinux label on restored containers
| * | | Add exec after checkpoint/restore testAdrian Reber2019-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A container restored from a checkpoint archive used to have the root file-system mounted with a wrong (new) SELinux label. This made it, for example, impossible to use 'podman exec' on a restored container. This test tests exactly this. 'podman exec' after 'podman container restore'. Unfortunately this test does not fail, even without the patch that fixes it as the test seems to run in an environment where the SELinux label of the container root file-system is not relevant. Somehow. Signed-off-by: Adrian Reber <areber@redhat.com>
* | | | Merge pull request #3377 from TomSweeneyRedHat/dev/tsweeney/gateOpenShift Merge Robot2019-07-08
|\ \ \ \ | |_|_|/ |/| | | Add RUN priv'd test for build
| * | | Add RUN priv'd test for buildTomSweeneyRedHat2019-06-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Podman 1.4.1 had problems with builds with a RUN command that tried to to a privliged command. This adds a gating test for that situation. Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com>
* | | | fix integration flake testsbaude2019-07-08
| | | | | | | | | | | | | | | | | | | | | | | | attempts to correct three of our flakey integration tests Signed-off-by: baude <bbaude@redhat.com>
* | | | Add test for generate kube with volumesPeter Hunt2019-07-02
| |_|/ |/| | | | | | | | Signed-off-by: Peter Hunt <pehunt@redhat.com>
* | | Merge pull request #3422 from nalind/no-layer-imagesOpenShift Merge Robot2019-06-28
|\ \ \ | |/ / |/| | Handle images which contain no layers
| * | Add tests that we don't hit errors with layerless imagesNalin Dahyabhai2019-06-26
| | | | | | | | | | | | Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
* | | Merge pull request #3429 from cevich/strip_crio_conmonOpenShift Merge Robot2019-06-27
|\ \ \ | |/ / |/| | Remove refs to crio/conmon
| * | Remove refs to crio/conmonChris Evich2019-06-26
| |/ | | | | | | | | | | | | | | Conmon has moved out of cri-o and into it's own dedicated repository. This commit updates configuration and definitions which referenced the old cri-o based paths. Signed-off-by: Chris Evich <cevich@redhat.com>
* | Merge pull request #3417 from mheon/fix_play_kube_portsOpenShift Merge Robot2019-06-25
|\ \ | |/ |/| Only include ports in one container in Kube YAML
| * Update 'generate kube' tests to verify YAMLMatthew Heon2019-06-25
| | | | | | | | Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * Use a different method to retrieve YAML output in testsMatthew Heon2019-06-25
| | | | | | | | | | | | | | | | | | OutputToString() was mangling newlines, which made YAML parsers very, very angry. But not angry enough to actually error, that would be too easy. Just angry enough to silently not decode anything. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * Fix testsMatthew Heon2019-06-24
| | | | | | | | Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * Change Marshal -> Unmarshal in generate kube testsMatthew Heon2019-06-24
| | | | | | | | | | | | | | We need to verify that valid YAML was produced - Marshal will just pack the generated YAML even further. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * Add test for generate kube on a pod with portsMatthew Heon2019-06-24
| | | | | | | | Signed-off-by: Matthew Heon <matthew.heon@pm.me>
* | Merge pull request #3401 from mheon/templating_is_dumbOpenShift Merge Robot2019-06-25
|\ \ | | | | | | Fix inspect --format '{{.Mounts}}.
| * | Support aliases for .Src and .Dst in inspect .MountsMatthew Heon2019-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | Merge pull request #3391 from QiWang19/cp_fileOpenShift Merge Robot2019-06-24
|\ \ \ | |_|/ |/| | fix bug creats directory copying file
| * | fix bug creats directory copying fileQi Wang2019-06-20
| | | | | | | | | | | | | | | | | | close #3384 Signed-off-by: Qi Wang <qiwan@redhat.com>
* | | Merge pull request #3412 from mheon/fix_ps_sync_segfaultOpenShift Merge Robot2019-06-24
|\ \ \ | | | | | | | | Fix a segfault in 'podman ps --sync'
| * | | Fix a segfault in 'podman ps --sync'Matthew Heon2019-06-24
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | We weren't properly populating the container's OCI Runtime in Batch(), causing segfaults on attempting to access it. Add a test to make sure we actually catch cases like this in the future. Fixes #3411 Signed-off-by: Matthew Heon <matthew.heon@pm.me>
* / | rootless: add an entry to /etc/hosts when using slirp4netnsGiuseppe Scrivano2019-06-24
|/ / | | | | | | | | | | Closes: https://github.com/containers/libpod/issues/3405 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* / Add --latest, -l to 'podman diff'Adrian Reber2019-06-21
|/ | | | | | | | 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>
* Merge pull request #3369 from mheon/add_cached_delegatedOpenShift Merge Robot2019-06-19
|\ | | | | Add support for cached, delegated mounts
| * Add tests for cached and delegated mountsMatthew Heon2019-06-19
| | | | | | | | Signed-off-by: Matthew Heon <matthew.heon@pm.me>
* | Merge pull request #3366 from edsantiago/test_typo_fixesOpenShift Merge Robot2019-06-19
|\ \ | | | | | | fix broken healthcheck tests
| * | fix broken healthcheck testsEd Santiago2019-06-18
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>