summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* pod infra container is started before a container in a pod is run, started, ↵Peter Hunt2019-02-15
| | | | | | | | | | or attached. Prior, a pod would have to be started immediately when created, leading to confusion about what a pod state should be immediately after creation. The problem was podman run --pod ... would error out if the infra container wasn't started (as it is a dependency). Fix this by allowing for recursive start, where each of the container's dependencies are started prior to the new container. This is only applied to the case where a new container is attached to a pod. Also rework container_api Start, StartAndAttach, and Init functions, as there was some duplicated code, which made addressing the problem easier to fix. Signed-off-by: Peter Hunt <pehunt@redhat.com>
* Merge pull request #2335 from mheon/enable_detach_rmOpenShift Merge Robot2019-02-15
|\ | | | | Enable --rm with --detach
| * Fix error code retrieval for podman start --attachMatthew Heon2019-02-14
| | | | | | | | | | | | | | | | | | | | | | | | When we start a container with 'podman run' and it exits and is removed before we get the code, we grab its exit code from the Conmon exit file. Podman start --attach wants to do the same, but was missing the logic. Fix that here. Also, remove some --rm handling leftover in start. Don't need it anymore, we have the cleanup process now. Signed-off-by: Matthew Heon <mheon@redhat.com>
| * Enable --rm with --detachMatthew Heon2019-02-14
| | | | | | | | | | | | | | We can now safely remove detached containers as --rm handling has moved into the cleanup process. Signed-off-by: Matthew Heon <mheon@redhat.com>
* | Merge pull request #2353 from giuseppe/honor-storage-optOpenShift Merge Robot2019-02-15
|\ \ | | | | | | podman: honor --storage-opt again
| * | podman: honor --storage-opt againGiuseppe Scrivano2019-02-15
|/ / | | | | | | | | | | possibly a regression after we moved to Cobra Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | Merge pull request #2188 from TomSweeneyRedHat/dev/tsweeney/pullallOpenShift Merge Robot2019-02-15
|\ \ | | | | | | Add --all-tags to pull command
| * | Add --all-tags to pull commandTomSweeneyRedHat2019-02-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com> Add --all-tags for the `podman pull` command so all tags of an image will be pulled, not just ':latest'. Emulates the change in Buildah https://github.com/containers/buildah/pull/1263 Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com>
* | | Merge pull request #2346 from giuseppe/fix-runtime-lookupOpenShift Merge Robot2019-02-15
|\ \ \ | | | | | | | | libpod.conf: add backward compatibility for runtime_path
| * | | docs: mention the new OCI runtime configurationGiuseppe Scrivano2019-02-15
| | | | | | | | | | | | | | | | Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
| * | | libpod: honor runtime_path from libpod.confGiuseppe Scrivano2019-02-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add backward compatibility for `runtime_path` that was used by older versions of Podman. The issue was introduced with: 650cf122e1b33f4d8f4426ee1cc1a4bf00c14798 If `runtime_path` is specified, it overrides any other configuration and a warning is printed. It should be considered deprecated and will be removed in future. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
| * | | rootless: open the correct fileDaniel J Walsh2019-02-15
| | | | | | | | | | | | | | | | Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | | | Merge pull request #2305 from rhatdan/tlsverifyOpenShift Merge Robot2019-02-15
|\ \ \ \ | |/ / / |/| | | Add tlsVerify bool to SearchImage for varlink
| * | | Add tlsVerify bool to SearchImage for varlinkDaniel J Walsh2019-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cockpit wants to be able to search images on systems without tlsverify turned on. tlsverify should be an optional parameter, if not set then we default to the system defaults defined in /etc/containers/registries.conf. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* | | | Merge pull request #2333 from TomSweeneyRedHat/dev/tsweeney/helpexamplesOpenShift Merge Robot2019-02-15
|\ \ \ \ | | | | | | | | | | Add examples for Cobra
| * | | | Add examples for CobraTomSweeneyRedHat2019-02-14
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com> First pass of entries for the Examples listed in the Cobra Help. Will add others in following PR's.
* | | | Merge pull request #2332 from baude/remotevolumepruneOpenShift Merge Robot2019-02-14
|\ \ \ \ | | | | | | | | | | volume prune
| * | | | enable podman-remote volume prunebaude2019-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | allow users to remotely prune volumes. this is the last volume command for remote enablement. as such, the volume commands are being folded back into main because they are supported for both local and remote clients. also, enable all volume tests that do not use containers as containers are not enabled for the remote client yet. Signed-off-by: baude <bbaude@redhat.com>
* | | | | Merge pull request #2320 from QiWang19/stdinPWOpenShift Merge Robot2019-02-14
|\ \ \ \ \ | | | | | | | | | | | | --password-stdin flag in `podman login`
| * | | | | --password-stdin flag in `podman login`Qi Wang2019-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support --password-stdin flag, reads a password from STDIN and pass it to `podman login`. Signed-off-by: Qi Wang <qiwan@redhat.com>
* | | | | | Merge pull request #2151 from QiWang19/cpOpenShift Merge Robot2019-02-14
|\ \ \ \ \ \ | | | | | | | | | | | | | | 'podman cp' copy between host and container
| * | | | | | 'podman cp' copy between host and containerQi Wang2019-02-14
| |/ / / / / | | | | | | | | | | | | | | | | | | Signed-off-by: Qi Wang <qiwan@redhat.com>
* | | | | | Merge pull request #2298 from mtrmac/multiple-manifestsOpenShift Merge Robot2019-02-14
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | Vendor in latest c/storage and c/image
| * | | | | Vendor in latest c/storage and c/imageMiloslav Trmač2019-02-13
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Miloslav Trmač <mitr@redhat.com>
* | | | | | Merge pull request #2229 from rhatdan/volumesOpenShift Merge Robot2019-02-14
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | | Fix volume handling in podman
| * | | | | Fix volume handling in podmanDaniel J Walsh2019-02-14
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | iFix builtin volumes to work with podman volume Currently builtin volumes are not recored in podman volumes when they are created automatically. This patch fixes this. Remove container volumes when requested Currently the --volume option on podman remove does nothing. This will implement the changes needed to remove the volumes if the user requests it. When removing a volume make sure that no container uses the volume. Signed-off-by: Daniel J Walsh dwalsh@redhat.com Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* | | | | Merge pull request #2336 from baude/addbuildtomainOpenShift Merge Robot2019-02-14
|\ \ \ \ \ | |_|_|/ / |/| | | | add build to main and as subcommand to image
| * | | | add build to main and as subcommand to imagebaude2019-02-14
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | add build as a local and remote-client command in the main podman menu. also ensure it is added to the image subcommands as well. Signed-off-by: baude <bbaude@redhat.com>
* | | | Merge pull request #2321 from baude/remotebuildOpenShift Merge Robot2019-02-14
|\ \ \ \ | | | | | | | | | | podman-remote build
| * | | | podman-remote buildbaude2019-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | add the ability to build images using files local to the remote-client but over a varlink interface to a "remote" server. Signed-off-by: baude <bbaude@redhat.com>
* | | | | Merge pull request #2319 from mheon/unconditional_cleanupOpenShift Merge Robot2019-02-13
|\ \ \ \ \ | | | | | | | | | | | | Fix manual detach from containers to not wait for exit
| * | | | | Try disabling --rm on notify_socket testMatthew Heon2019-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have a consistent CI failure with the notify_socket test that I can't reproduce locally. There's no reason for the test to have --rm, so try removing it. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * | | | | Remove a lot of '--rm' options from unit testsMatthew Heon2019-02-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, 'podman create --rm' did not work - it wouldn't error but it did nothing. It is now fixed, but unfortunately the unit tests used it a lot, in ways that just do not work when it actually functions. Begin the process of fixing now-failing tests. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * | | | | Address review comments on #2319Matthew Heon2019-02-12
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Matthew Heon <mheon@redhat.com>
| * | | | | Retain a copy of container exit file on cleanupMatthew Heon2019-02-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When cleaning up containers, we presently remove the exit file created by Conmon, to ensure that if we restart the container, we won't have conflicts when Conmon tries writing a new exit file. Unfortunately, we need to retain that exit file (at least until we get a workable events system), so we can read it in cases where the container has been removed before 'podman run' can read its exit code. So instead of removing it, rename it, so there's no conflict with Conmon, and we can still read it later. Fixes: #1640 Signed-off-by: Matthew Heon <mheon@redhat.com>
| * | | | | Fix manual detach from containers to not wait for exitMatthew Heon2019-02-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present, when manually detaching from an attached container (using the detach hotkeys, default C-p C-q), Podman will still wait for the container to exit to obtain its exit code (so we can set Podman's exit code to match). This is correct in the case where attach finished because the container exited, but very wrong for the manual detach case. As a result of this, we can no longer guarantee that the cleanup and --rm functions will fire at the end of 'podman run' - we may be exiting before we get that far. Cleanup is easy enough - we swap to unconditionally using the cleanup processes we've used for detached and rootless containers all along. To duplicate --rm we need to also teach 'podman cleanup' to optionally remove containers instead of cleaning them up. (There is an argument for just using 'podman rm' instead of 'podman cleanup --rm', but cleanup does have different semantics given that we only ever expect it to run when the container has just exited. I think it might be useful to keep the two separate for things like 'podman events'...) Signed-off-by: Matthew Heon <mheon@redhat.com>
* | | | | | Merge pull request #2330 from baude/issue1842OpenShift Merge Robot2019-02-13
|\ \ \ \ \ \ | | | | | | | | | | | | | | build varlink without GOPATH
| * | | | | | build varlink without GOPATHbaude2019-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when gopath was not explicitly set, make would fail due to the varlink generator. this symlink in the makefile addresses that. fixes: #1842 Signed-off-by: baude <bbaude@redhat.com>
* | | | | | | Merge pull request #2329 from vrothberg/run-pod-completionOpenShift Merge Robot2019-02-13
|\ \ \ \ \ \ \ | |_|_|_|/ / / |/| | | | | | completions: add --pod to run/create
| * | | | | | completions: add --pod to run/createValentin Rothberg2019-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
* | | | | | | Merge pull request #2331 from baude/issue846OpenShift Merge Robot2019-02-13
|\ \ \ \ \ \ \ | |_|_|_|/ / / |/| | | | | | show container ports of network namespace
| * | | | | | show container ports of network namespacebaude2019-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in cases where a container is part of a network namespace, we should show the network namespace's ports when dealing with ports. this impacts ps, kube, and port. fixes: #846 Signed-off-by: baude <bbaude@redhat.com>
* | | | | | | Merge pull request #2316 from baude/remotevolumeinspectOpenShift Merge Robot2019-02-13
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | podman-remote volume inspect|ls
| * | | | | | podman-remote volume inspect|lsbaude2019-02-13
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | add the ability to list and inspect volumes using the remote client and varlink Signed-off-by: baude <bbaude@redhat.com>
* | | | | | Merge pull request #2327 from baude/issue2175OpenShift Merge Robot2019-02-13
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Parse fq name correctly for images
| * | | | | Parse fq name correctly for imagesbaude2019-02-13
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When parsing a string name for repo and tag (for images output), we should be using parsenormalizedname and reference.Canonical to get the proper output. Resolves: #2175 Signed-off-by: baude <bbaude@redhat.com>
* | | | | Merge pull request #2322 from baude/remotepushOpenShift Merge Robot2019-02-13
|\ \ \ \ \ | | | | | | | | | | | | podman-remote push
| * | | | | podman-remote pushbaude2019-02-13
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | enable podman-remote push so that users can push images from a remote client. change in push API to deal with the need to see output over the varlink connection. Signed-off-by: baude <bbaude@redhat.com>
* | | | | Merge pull request #2326 from edsantiago/esm/nosudoOpenShift Merge Robot2019-02-13
|\ \ \ \ \ | | | | | | | | | | | | get_ci_vm : allow running without sudo
| * | | | | get_ci_vm : allow running without sudoEd Santiago2019-02-13
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | More complicated than one would think. The first problem is that, on certain (but not all) Fedora systems, podman cannot mount volumes read-only (issue #2312). This is baffling, and since it's not easily reproducible it's likely that the dev team will not spend much effort on it. Workaround: instead of bind- mounting /tmp read-only, bind-mount a *tempdir* (subdirectory) read-write. This is actually cleaner in some ways but it leads to complications with the paths we use and with cleanup. Next, allow overriding the default image and allow asking for no sudo: export GCLOUD_IMAGE=quay.io/edsantiago/gcloud_centos:latest export GCLOUD_SUDO= (yes, that's an equal-sign and EOL. Just an empty string). The third part, unfortunately, requires a custom image because the as_dollar_user.sh script (the one that runs gcloud in a container) is hardwired in a cevich image and needs tweaks in order to detect rootless and avoid sudo. Signed-off-by: Ed Santiago <santiago@redhat.com>