summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Fix swagger definitionsMatej Vasek2021-11-12
| | | | | | [NO TESTS NEEDED] Signed-off-by: Matej Vasek <mvasek@redhat.com>
* Cirrus: Authorize rootless user self-sshChris Evich2021-11-12
| | | | | | | | | | | Future testing needs dictate rootless (in addition to root) users are able to ssh to localhost. Add ssh-key generation commands for the rootless user, and authorize their public key. Minor: Also remove update of `/etc/sub{uid,gid}` files, since this is now done automatically by `{user,group}add` commands. Signed-off-by: Chris Evich <cevich@redhat.com>
* Add information on how podman machine is updatedAshley Cui2021-11-12
| | | | | | | Update documentation on how the default podman machine distribution, FCOS, is updated. Signed-off-by: Ashley Cui <acui@redhat.com>
* Fix help message case for `podman version`Praveen Kumar2021-11-12
| | | | | | | | | This is a cosmetic change. The help message for `podman version` is in title case whereas all other command help messages are not in title case. This stands out as inconsistent when looking at the output of `podman help`. Signed-off-by: Praveen Kumar <praveen+git@kumar.in>
* Fix pause usage exampleGiacomo Sanchietti2021-11-12
| | | | | | The page contains a wrong 'stop' command example. Signed-off-by: Giacomo Sanchietti <giacomo.sanchietti@nethesis.it>
* Set Checkpointed state to false after restoreAdrian Reber2021-11-12
| | | | | | | | | A restored container still had the state set to 'Checkpointed: true' which seems wrong if it running again. [NO NEW TESTS NEEDED] Signed-off-by: Adrian Reber <areber@redhat.com>
* runtime: change PID existence checkGiuseppe Scrivano2021-11-12
| | | | | | | | | | | | | | | commit 6b3b0a17c625bdf71b0ec8b783b288886d8e48d7 introduced a check for the PID file before attempting to move the PID to a new scope. This is still vulnerable to TOCTOU race condition though, since the PID file or the PID can be removed/killed after the check was successful but before it was used. Closes: https://github.com/containers/podman/issues/12065 [NO NEW TESTS NEEDED] it fixes a CI flake Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* Set DOCKER_HOST in the VMMatej Vasek2021-11-12
| | | | | | [NO TESTS NEEDED] Signed-off-by: Matej Vasek <mvasek@redhat.com>
* runtime: check for pause pid existenceGiuseppe Scrivano2021-11-12
| | | | | | | | | check that the pause pid exists before trying to move it to a separate scope. Closes: https://github.com/containers/podman/issues/12065 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* utils: do not overwrite the err variableGiuseppe Scrivano2021-11-12
| | | | Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* Fix systemd PID1 testChris Evich2021-11-12
| | | | | | | | | | | | | | | | | Previously this test used an ad-hoc timeout mechanism to synchronize with output of the container ID. However, depending on runtime conditions this may not correctly correspond with complete startup of the systemd process. Consequently this test fails under some conditions with an error like: `System has not been booted with systemd as init system (PID 1). Can't operate. Failed to connect to bus: Host is down` Fix this by using the more appropriate `WaitContainerReady()` against output from system startup, close to finalization. In this way, the test status command cannot run until systemd is fully operational. Signed-off-by: Chris Evich <cevich@redhat.com>
* cgroups: use SessionBusPrivateNoAutoStartupGiuseppe Scrivano2021-11-12
| | | | | | | | | | do not start up a dbus daemon if it is not already running. [NO NEW TESTS NEEDED] the fix is in a dependency. Closes: https://github.com/containers/podman/issues/9727 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* vendor: update godbus to v5.0.6Giuseppe Scrivano2021-11-12
| | | | Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* Slirp4netns with ipv6 set net.ipv6.conf.default.accept_dad=0Paul Holzinger2021-11-12
| | | | | | | | | | | | | | Duplicate Address Detection slows the ipv6 setup down for 1-2 seconds. Since slirp4netns is run it is own namespace and not directly routed we can skip this to make the ipv6 address immediately available. We change the default to make sure the slirp tap interface gets the correct value assigned so DAD is disabled for it. Also make sure to change this value back to the original after slirp4netns is ready in case users rely on this sysctl. Fixes #11062 Signed-off-by: Paul Holzinger <pholzing@redhat.com>
* Fix a few problems in 'podman logs --tail' with journald driverHironori Shiina2021-11-12
| | | | | | | | | | | | | | | | | The following problems regarding `logs --tail` with the journald log driver are fixed: - One more line than a specified value is displayed. - '--tail 0' displays all lines while the other log drivers displays nothing. - Partial lines are not considered. - If the journald events backend is used and a container has exited, nothing is displayed. Integration tests that should have detected the bugs are also fixed. The tests are executed with json-file log driver three times without this fix. Signed-off-by: Hironori Shiina <shiina.hironori@jp.fujitsu.com>
* If Dockerfile exists in same directory as service, we should not use it.Daniel J Walsh2021-11-12
| | | | | | | | | | | | We should only use the Containerfiles/Dockerfiles found in the context directory. Fixes: https://github.com/containers/podman/issues/12054 [NO NEW TESTS NEEDED] It is difficult to setup a test for this in the CI/CD system, but build tests should find if this PR broke anything. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* Document to not set K8S envars for CNIPaul Holzinger2021-11-12
| | | | | | | Setting these environment variables can cause issues with custom CNI plugins, see #12083. Signed-off-by: Paul Holzinger <pholzing@redhat.com>
* [NO NEW TESTS NEEDED] Fix off-by-one index comparision (reported by LGTM)Stefan Weil2021-11-12
| | | | | | | | LGTM alert: Off-by-one index comparison against length may lead to out-of-bounds read. Signed-off-by: Stefan Weil <sw@weilnetz.de>
* Fix some typos in documentation and comments (found by codespell)Stefan Weil2021-11-12
| | | | Signed-off-by: Stefan Weil <sw@weilnetz.de>
* [CI:DOCS] Fix typo keep_id -> keep-idErik Sjölund2021-11-12
| | | | Signed-off-by: Erik Sjölund <erik.sjolund@gmail.com>
* podman run --memory=0 ... should not set memory limitDaniel J Walsh2021-11-12
| | | | | | | | | On Docker this is ignored, and it should be on Podman as well. This is documented in the man page. Fixes: https://github.com/containers/podman/issues/12002 Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* systemd: compatible with rootless modeEaston Man2021-11-12
| | | | | | | - change the type to forking to allow fork. - add default.target for user systemd service Signed-off-by: Easton Man <manyang.me@outlook.com>
* Use exponential backoff when waiting for a journal entryNalin Dahyabhai2021-11-12
| | | | | | | | | When looking for a cursor that matches the first journal entry for a given container, wait and try to find it using exponential backoff. [NO NEW TESTS NEEDED] Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
* Pod Rm Infra Improvementscdoern2021-11-12
| | | | | | | | Made changes so that if the pod contains all exited containers and only infra is running, remove the pod. resolves #11713 Signed-off-by: cdoern <cdoern@redhat.com>
* System tests: confirm that -a and -l clashEd Santiago2021-11-12
| | | | | | ...and fix one instance where there was no check Signed-off-by: Ed Santiago <santiago@redhat.com>
* Remove infra ID from DB before removing containersMatthew Heon2021-11-12
| | | | | | | | | | | | | | | If we interrupt pod removal between removing containers and removing the whole pod, the infra ID was still in the DB, and most pod operations would try to retrieve the infra container (and would this fail). Clear the infra ID from the DB just before we remove all containers to prevent this. Fixes #12034 [NO NEW TESTS NEEDED] This is a very narrow race and I have no idea how to repro it. Signed-off-by: Matthew Heon <mheon@redhat.com>
* Generate Kube should not print default structsDaniel J Walsh2021-11-12
| | | | | | | | | | | | | | | | | | | | If podman uses Workdir="/" or the workdir specified in the image, it should not add it to the yaml. If Podman find environment variables in the image, they should not get added to the yaml. If the container or pod do not have changes to SELinux we should not print seLinuxOpt{} If the container or pod do not change any dns options the yaml should not have a dnsOption={} If the container is not privileged it should not have privileged=false in the yaml. Fixes: https://github.com/containers/podman/issues/11995 Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* fuse-overlay probably means fuse-overlayfs.Junichi Uekawa2021-11-12
| | | | | | fuse-overlayfs is usually the package name. Signed-off-by: Junichi Uekawa <dancer@debian.org>
* Replace 'an user' => 'a user'Stefan Weil2021-11-12
| | | | Signed-off-by: Stefan Weil <sw@weilnetz.de>
* Merge pull request #12269 from Luap99/backport3.4OpenShift Merge Robot2021-11-11
|\ | | | | [v3.4] backport networking fixes
| * network reload without ports should not reload portsPaul Holzinger2021-11-11
| | | | | | | | | | | | | | | | | | When run as rootless the podman network reload command tries to reload the rootlessport ports because the childIP could have changed. However if the containers has no ports we should skip this instead of printing a warning. Signed-off-by: Paul Holzinger <pholzing@redhat.com>
| * pod create: read network mode from configPaul Holzinger2021-11-11
|/ | | | | | | | | When we create a pod we have to parse the network mode form the config file. This is a regression in commit d28e85741f. Fixes #12207 Signed-off-by: Paul Holzinger <pholzing@redhat.com>
* Merge pull request #12211 from vrothberg/3.4-bz-2014149OpenShift Merge Robot2021-11-08
|\ | | | | [3.4] volumes: be more tolerant and fix infinite loop
| * volumes: be more tolerant and fix infinite loopValentin Rothberg2021-11-08
|/ | | | | | | | | | | | | | | | | | | | | | Make Podman more tolerant when parsing image volumes during container creation and further fix an infinite loop when checking them. Consider `VOLUME ['/etc/foo', '/etc/bar']` in a Containerfile. While it looks correct to the human eye, the single quotes are wrong and yield the two volumes to be `[/etc/foo,` and `/etc/bar]` in Podman and Docker. When running the container, it'll create a directory `bar]` in `/etc` and a directory `[` in `/` with two subdirectories `etc/foo,`. This behavior is surprising to me but how Docker behaves. We may improve on that in the future. Note that the correct way to syntax for volumes in a Containerfile is `VOLUME /A /B /C` or `VOLUME ["/A", "/B", "/C"]`; single quotes are not supported. This change restores this behavior without breaking container creation or ending up in an infinite loop. BZ: https://bugzilla.redhat.com/show_bug.cgi?id=2014149 Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
* Merge pull request #12153 from flouthoc/allow-tagging-manifest-list-3.4OpenShift Merge Robot2021-11-01
|\ | | | | [backport] tag: Support tagging manifest list instead of resolving to images.
| * [backport] tag: Support tagging manifest list instead of resolving to imagesAditya Rajan2021-11-01
|/ | | | | | | | | | Following commit makes sure when buildah tag is invoked on a manifest list, it tags the same manifest list instead of resolving to an image and tagging it. Backporting https://github.com/containers/podman/pull/12057 Signed-off-by: Aditya Rajan <arajan@redhat.com>
* Merge pull request #12040 from mheon/341_releaseOpenShift Merge Robot2021-10-20
|\ | | | | Bump to v3.4.1
| * Bump to v3.4.2-devMatthew Heon2021-10-19
| | | | | | | | Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * Bump to v3.4.1v3.4.1Matthew Heon2021-10-19
| | | | | | | | Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * Update release notes for v3.4.1Matthew Heon2021-10-19
| | | | | | | | Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * Fix test failures from backportsMatthew Heon2021-10-19
| | | | | | | | | | | | | | Timeouts for `podman rm` aren't in until 4.0, so we need to remove them. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * system tests: socket activation: clean upEd Santiago2021-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Multiarch folks are seeing flakes in this test. I can't reproduce them, but I did notice that the test isn't doing the best possible job of reporting failures nor of confirming what it purports to test. Major fix here is to check the exit status of each curl: if we see the flake again, that will help us track down the failure. Other fixes are just refactoring, cleanup, and disambiguation (using the random service name consistently) Signed-off-by: Ed Santiago <santiago@redhat.com>
| * Checkpoint/Restore test fixesAdrian Reber2021-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Moving to Fedora 35 showed test failures (time outs) in the test "podman checkpoint and restore container with different port mappings" The test starts a container and maps the internal port 6379 to the local port 1234 ('-p 1234:6379') and then tries to connect to localhost:1234 On Fedora 35 this failed and blocked the test because the container was not yet ready. The test was trying to connect to localhost:1234 but nothing was running there. So the error was not checkpointing related. Before trying to connect to the container the test is now waiting for the container to be ready. Another problem with this test and running ginkgo in parallel was that it was possible that the port was already in use. Now for each run a random port is selected to decrease the chance of collisions. Signed-off-by: Adrian Reber <areber@redhat.com>
| * Set targetPort to the port value in the kube yamlUrvashi Mohnani2021-10-19
| | | | | | | | | | | | | | | | | | | | When the targetPort is not defined, it is supposed to be set to the port value according to the k8s docs. Add tests for targetPort. Update tests to be able to check the Service yaml that is generated. Signed-off-by: Urvashi Mohnani <umohnani@redhat.com>
| * Test-hang fix: Wait for ready + timeout on connect.Chris Evich2021-10-19
| | | | | | | | | | | | | | | | | | | | | | | | It was observed during initial F35 testing, this test can cause Ginkgo to "hang" by attempting to connect before the redis is up/listening. Fix this by confirming the ready-state before attempting to connect. Also, force IPv4 and timeout on any connection fault - to allow other tests to run. Thanks to Adrian Reber for help on this and related fixes. Signed-off-by: Chris Evich <cevich@redhat.com>
| * Don't include ctr.log if not using file loggingDaniel J Walsh2021-10-19
| | | | | | | | | | | | | | | | | | | | Checkpoint is blowing up when you use --log-driver=none [NO NEW TESTS NEEDED] No way currently to test checkpoint restore. Fixes: https://github.com/containers/podman/issues/11974 Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
| * Do not add TCP to protocol in generated kube yamlUrvashi Mohnani2021-10-19
| | | | | | | | | | | | | | | | | | | | As the default protocol in k8s is TCP, don't add it to the generate yaml when using protocol. Add UDP to the protocol of the generated yaml when udp is being used. Add tests for this as well. Signed-off-by: Urvashi Mohnani <umohnani@redhat.com>
| * Don't use docker/pkg/archive, use containers/storage/pkg/archiveDaniel J Walsh2021-10-19
| | | | | | | | | | | | [NO NEW TESTS NEEDED] Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
| * Fix panic in container create compat apiPaul Holzinger2021-10-19
| | | | | | | | | | | | | | | | | | The bind and tmpfs options can be nil, we have to check that before we try to use it. Fixes #11961 Signed-off-by: Paul Holzinger <pholzing@redhat.com>
| * Don't add image entrypoint to the generate kube yamlUrvashi Mohnani2021-10-19
| | | | | | | | | | | | | | | | | | | | | | | | If no entrypoint or command is set in the podman create command, and the image command or entrypoint is being used as the default, then do not add the image command or entrypoint to the generated kube yaml. Kubernetes knows to default to the image command and/or entrypoint settings when not defined in the kube yaml. Add and modify tests for this case. Signed-off-by: Urvashi Mohnani <umohnani@redhat.com>