summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Merge pull request #4748 from NevilleC/nc-podnameOpenShift Merge Robot2019-12-29
|\ | | | | [Issue #4703] Add the pod name when we use `podman ps -p`
| * Add the pod name when we use `podman ps -p`Neville Cain2019-12-28
| | | | | | | | | | | | | | | | | | | | | | | | The pod name does not appear when doing `podman ps -p`. It is missing as the documentation says: -p, --pod Print the ID and name of the pod the containers are associated with The pod name is added in the ps output and checked in unit tests. Closes #4703 Signed-off-by: NevilleC <neville.cain@qonto.eu>
* | Merge pull request #4756 from edsantiago/fix_kill_test_hang_safelyOpenShift Merge Robot2019-12-29
|\ \ | | | | | | Fix race condition in kill test leading to hang
| * | Fix race condition in kill test leading to hangEd Santiago2019-12-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When you open a FIFO for reading, but there's no writer, you hang. This is just one of those obscure UNIXisms we all know but just forget all too often. My last PR was guilty of introducing such a condition; I caught it by accident while testing other stuff. In short, the signal container was doing 'echo DONE' as its last step, and we (BATS) were reading the FIFO to check for it; but if the container exited before we opened the FIFO for read, the open would hang. This is not a hang that we can catch in the test: it would hang the entire job forever. CI would presumably time out eventually, but with no useful indication of the cause of the error. Solution: use 'exec' to open the FIFO early and keep it open, and use 'read -u FD' instead of 'read <$fifo': the former reads from an open FD, the latter forces a new open() each time. There is a shorter, more maintainable solution -- see #4755 -- but that suffers from the same hanging problem in the (unlikely) case where the signal-handling container exits, e.g. if signal handling is broken in podman. The test would hang, with no helpful indicator. Although this PR is a little more advanced scripting, I have commented the relevant code well and believe the maintenance cost is worth the risk of undebuggable hangs. There is still a hang risk: if 'podman logs -f' fails and exits immediately, the 'exec' will hang. I can't think of a non-racy way to prevent that, and choose to live with that risk. Tested by temporarily including 9 (SIGKILL) in the signals list. The read timeout triggers, and the end user has a fair chance of tracking down the root cause. Signed-off-by: Ed Santiago <santiago@redhat.com>
* | | Merge pull request #4754 from NevilleC/nc-improvemakeuninstallOpenShift Merge Robot2019-12-28
|\ \ \ | |/ / |/| | Ensure 'make uninstall' removes bin and conf files.
| * | Ensure 'make uninstall' remove bin and conf files.Neville Cain2019-12-28
| |/ | | | | | | | | | | | | | | | | | | | | | | I updated the 'make uninstall' command to remove: 1. podman and remote bin 2. cni/net.d/87-podman-bridge.conflist 3. podman.conf 4. systemd conf files: io.podman.socket.* Closes #4572 Signed-off-by: Neville Cain <neville.cain@qonto.eu>
* | Merge pull request #4753 from NevilleC/nc-missingsizeOpenShift Merge Robot2019-12-28
|\ \ | | | | | | Ensure SizeRw is shown when a user does 'inspect --size -t container'.
| * | Ensure SizeRw is shown when a user does 'inspect --size -t container'.Neville Cain2019-12-27
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, if a user requests the size on a container (inspect --size -t container), the SizeRw does not show up if the value is 0. It's because InspectContainerData is defined as int64 and there is an omit when empty. We do want to display it even if the value is empty. I have changed the type of SizeRw to be a pointer to an int64 instead of an int64. It will allow us todistinguish the empty value to the missing value. I updated the test "podman inspect container with size" to ensure we check thatSizeRw is displayed correctly. Closes #4744 Signed-off-by: NevilleC <neville.cain@qonto.eu>
* | Merge pull request #4749 from edsantiago/parse_and_validate_signalOpenShift Merge Robot2019-12-27
|\ \ | | | | | | signal parsing - better input validation
| * | signal parsing - better input validationEd Santiago2019-12-26
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The helper function we use for signal name mapping does not check for negative numbers nor invalid (too-high) ones. This can yield unexpected error messages: # podman kill -s -1 foo ERRO[0000] unknown signal "18446744073709551615" This PR introduces a small wrapper for it that: 1) Strips off a leading dash, allowing '-1' or '-HUP' as valid inputs; and 2) Rejects numbers <1 or >64 (SIGRTMAX) Also adds a test suite checking signal handling as well as ensuring that invalid signals are rejected by the command line. Fixes: #4746 Signed-off-by: Ed Santiago <santiago@redhat.com>
* | Merge pull request #4751 from mheon/quiet_template_noconflictOpenShift Merge Robot2019-12-27
|\ \ | |/ |/| The --quiet flag does not conflict with templates in ps
| * The --quiet flag does not conflict with templates in psMatthew Heon2019-12-26
|/ | | | | | | | To match Docker behavior, make `--quiet` and `--format` with a Go template not conflict. Instead, just turn off `--quiet` in such cases, as we'll be using Go template output instead. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
* Merge pull request #4742 from rhatdan/vendorOpenShift Merge Robot2019-12-23
|\ | | | | Update containers/storage to v1.15.4
| * Update containers/storage to v1.15.4Daniel J Walsh2019-12-23
| | | | | | | | Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* | Merge pull request #4743 from baude/imageresponseOpenShift Merge Robot2019-12-23
|\ \ | | | | | | add struct response for removal of images
| * | add struct response for removal of imagesbaude2019-12-23
| |/ | | | | | | | | | | | | | | when removing an image from storage, we should return a struct that details what was untagged vs deleted. this replaces the simple println's used previously and assists in API development. Signed-off-by: baude <bbaude@redhat.com>
* | Merge pull request #4740 from edsantiago/zsh_completion_flagfixOpenShift Merge Robot2019-12-23
|\ \ | | | | | | zsh completion: ignore multi-line output in Flags
| * | zsh completion: ignore multi-line output in FlagsEd Santiago2019-12-23
| |/ | | | | | | | | | | | | | | | | | | | | | | | | PR #4475 introduced an interesting twist on --help: a help string that spans multiple lines. This broke zsh completion. I'm not keen on that multi-line output, but it shouldn't break completion. Fix is simple: look only for flag lines beginning with '-', filter out anything else. Fixes: #4738 Signed-off-by: Ed Santiago <santiago@redhat.com>
* | Merge pull request #4697 from rhatdan/contextOpenShift Merge Robot2019-12-23
|\ \ | |/ |/| Set contextdir to current PWD if user did not specify a context dir.
| * Update containers/storage to v1.15.4Daniel J Walsh2019-12-23
|/ | | | Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* Merge pull request #4708 from ↵OpenShift Merge Robot2019-12-20
|\ | | | | | | | | containers/dependabot/go_modules/github.com/containers/image/v5-5.1.0 build(deps): bump github.com/containers/image/v5 from 5.0.0 to 5.1.0
| * build(deps): bump github.com/containers/image/v5 from 5.0.0 to 5.1.0Daniel J Walsh2019-12-20
| | | | | | | | | | | | | | | | | | Bumps [github.com/containers/image/v5](https://github.com/containers/image) from 5.0.0 to 5.1.0. - [Release notes](https://github.com/containers/image/releases) - [Commits](https://github.com/containers/image/compare/v5.0.0...v5.1.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com> Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* | Merge pull request #4727 from rhatdan/pidnsOpenShift Merge Robot2019-12-20
|\ \ | | | | | | if container is not in a pid namespace, stop all processes
| * | if container is not in a pid namespace, stop all processesDaniel J Walsh2019-12-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | When a container is in a PID namespace, it is enought to send the stop signal to the PID 1 of the namespace, only send signals to all processes in the container when the container is not in a pid namespace. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* | | Merge pull request #4722 from giuseppe/drop-arbitrary-limitOpenShift Merge Robot2019-12-19
|\ \ \ | |_|/ |/| | libpod: drop arbitrary memory limit of 4M
| * | libpod: drop arbitrary memory limit of 4MGiuseppe Scrivano2019-12-17
| | | | | | | | | | | | | | | | | | drop the arbitrary limit of 4M for creating a container. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | | Merge pull request #4723 from mheon/pod_volume_postremoveOpenShift Merge Robot2019-12-19
|\ \ \ | | | | | | | | Remove volumes after containers in pod remove
| * | | Remove volumes after containers in pod removeMatthew Heon2019-12-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When trying to reproduce #4704 I noticed that the named volumes from the Postgres containers in the reproducer weren't being removed by `podman pod rm -f` saying that the container they were attached to was still in use. This was rather odd, considering they were only in use by one container, and that container was in the process of being removed with the pod. After a bit of tracing, I realized that the cause is the ordering of container removal when we remove a pod. Normally, it's done in removeContainer() before volume removal (which is the last thing in that function). However, when we are removing a pod, we remove containers all at once, after removeContainer has already finished - meaning the container still exists when we try to remove its volumes, and thus the volume can't be removed. Solution: collect a list of all named volumes in use by the pod, and remove them all at once after every container in the pod is gone. This ensures that there are no dependency issues. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
* | | | Merge pull request #4684 from vrothberg/systemd-improvementsOpenShift Merge Robot2019-12-19
|\ \ \ \ | |_|_|/ |/| | | container config: add CreateCommand
| * | | container config: add CreateCommandValentin Rothberg2019-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Store the full command plus arguments of the process the container has been created with. Expose this data as a `Config.CreateCommand` field in the container-inspect data as well. This information can be useful for debugging, as we can find out which command has created the container, and, if being created via the Podman CLI, we know exactly with which flags the container has been created with. The immediate motivation for this change is to use this information for `podman-generate-systemd` to generate systemd-service files that allow for creating new containers (in contrast to only starting existing ones). Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
* | | | Merge pull request #4730 from vrothberg/update-buildahOpenShift Merge Robot2019-12-19
|\ \ \ \ | | | | | | | | | | update c/buildah to v1.12.0
| * | | | update c/buildah to v1.12.0dependabot-preview[bot]2019-12-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also bump docker/docker. Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
* | | | | Merge pull request #4689 from edsantiago/batsOpenShift Merge Robot2019-12-19
|\ \ \ \ \ | | | | | | | | | | | | podman images history test - clean up
| * | | | | podman images history test - clean upEd Santiago2019-12-12
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As initially written the test does not work other than in a CI environment because it relies on an empty tag history. Rewrite so we can guarantee that, by creating a new image. Also add slightly more helpful tests: the initial tests would just show "expected 0, got 1" which is unhelpful. Tweak so we test on actual history contents, which will show more informative messages on failure. And, finally, clean up after ourselves. Signed-off-by: Ed Santiago <santiago@redhat.com>
* | | | | Merge pull request #4643 from adrianreber/masterOpenShift Merge Robot2019-12-17
|\ \ \ \ \ | | | | | | | | | | | | Correctly export the root file-system changes
| * | | | | Correctly export the root file-system changesAdrian Reber2019-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When doing a checkpoint with --export the root file-system diff was not working as expected. Instead of getting the changes from the running container to the highest storage layer it got the changes from the highest layer to that parent's layer. For a one layer container this could mean that the complete root file-system is part of the checkpoint. With this commit this changes to use the same functionality as 'podman diff'. This actually enables to correctly diff the root file-system including tracking deleted files. This also removes the non-working helper functions from libpod/diff.go. Signed-off-by: Adrian Reber <areber@redhat.com>
* | | | | | Merge pull request #4487 from stefanb2/topic-pr-4477OpenShift Merge Robot2019-12-17
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | docs: add workaround for --device with rootless containers
| * | | | | docs: add workaround for --device with rootless containersStefan Becker2019-12-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #4477 Signed-off-by: Stefan Becker <chemobejk@gmail.com>
* | | | | | Merge pull request #4681 from jvanz/issue4553OpenShift Merge Robot2019-12-17
|\ \ \ \ \ \ | | | | | | | | | | | | | | podman: mirror information
| * | | | | | runtime.go: show registries data and search tableJosé Guilherme Vanz2019-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update podman info command to show the registries data and the search table. Signed-off-by: José Guilherme Vanz <jvanz@jvanz.com>
| * | | | | | runtime.go: show search table in podman infoJosé Guilherme Vanz2019-12-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Updates the podman info command to show registries from v1 config file in the search table format. Signed-off-by: José Guilherme Vanz <jvanz@jvanz.com>
| * | | | | | podman info man: example updateJosé Guilherme Vanz2019-12-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Updates the command output example to show information about registries and their mirrors Signed-off-by: José Guilherme Vanz <jvanz@jvanz.com>
| * | | | | | podman: mirror informationJosé Guilherme Vanz2019-12-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Updates the podman info command to show the mirror information Issue https://github.com/containers/libpod/issues/4553 Signed-off-by: José Guilherme Vanz <jvanz@jvanz.com>
* | | | | | | Merge pull request #4701 from jvanz/opensuse-depOpenShift Merge Robot2019-12-17
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | install.md: openSUSE dependencies
| * | | | | | install.md: openSUSE dependenciesJosé Guilherme Vanz2019-12-16
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds documentation about how to install dependencies on openSUSE Signed-off-by: José Guilherme Vanz <jvanz@jvanz.com>
* | | | | | Merge pull request #4714 from openSUSE/testflagsOpenShift Merge Robot2019-12-16
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | Allow the injection of TESTFLAGS
| * | | | | Allow the injection of TESTFLAGSSascha Grunert2019-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows to specify the tests to be run, for example when setting `--focus='my-test-regex'`. Signed-off-by: Sascha Grunert <sgrunert@suse.com>
* | | | | | Merge pull request #4710 from raukadah/systemdfixOpenShift Merge Robot2019-12-16
|\ \ \ \ \ \ | | | | | | | | | | | | | | Use systemd/sd-daemon.h headers for systemd presence
| * | | | | | Use systemd/sd-daemon.h headers for systemd presenceChandan Kumar (raukadah)2019-12-16
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Finding systemd devel packages using libsystemd does not work as in RHEL based distro the package name is systemd-devel and for deb/ubunutu it is libsystemd. It is also giving false result when podman rpm is built with systemd but hack/systemd_tag.sh does not return anything. Install systemd-devel package in build_rpm.sh script Moving to systemd/sd-daemon.h header files which comes from devel packages fixes the issue. Signed-off-by: Chandan Kumar (raukadah) <raukadah@gmail.com>
* | | | | | Merge pull request #4713 from openSUSE/remove-coverprofileOpenShift Merge Robot2019-12-16
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Remove coverprofile from the repository