summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Make 'podman rm' exit with 125 if it had a bogus & a running containerDebarshi Ray2019-03-15
| | | | | | | | | | | | | | | | | | | Getting a list of containers, and then deleting them are two separate fallible steps that can run into different sets of errors. eg., in the case of a bogus missing container and a container that's running or paused, the first step will only trigger libpod.ErrNoSuchCtr. At this point it might appear that the exit code ought to be 1. However, when attempting the deletion, it will fail once more due to the status of the running or paused container. Since libpod.ErrNoSuchCtr is no longer the only error encountered, the exit code should be reset to 125. This problem is currently masked for rootless usage due to commit 35432ecaae4a8372 ("rootless: fix rm when uid in the container != 0"). Fixes: 85db895012bead6b ("rm: set exit code to 1 if a specified ...") e41279b902a334e5 ("Change exit code to 1 on podman rm ...") Signed-off-by: Debarshi Ray <rishi@fedoraproject.org>
* Merge pull request #2655 from giuseppe/tmp-userOpenShift Merge Robot2019-03-15
|\ | | | | rootless: use /tmp/libpod-rundir-$EUID for fallback
| * rootless: use Geteuid instead of GetuidGiuseppe Scrivano2019-03-15
| | | | | | | | Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
| * rootless: use /tmp/libpod-rundir-$EUID for fallbackGiuseppe Scrivano2019-03-15
| | | | | | | | | | | | | | | | | | | | | | | | when the fallback is in place, the first user creating /tmp/user/$EUID prevents other users for creating other directories since /tmp/user is created with mode 0700. Since there is no way for an unprivileged user to initialize the /tmp/user directory correctly (we would need it to be owned by root with the sticky bit set), let's just use /tmp/libpod-rundir-$EUID. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | Merge pull request #2646 from giuseppe/fix-build-orderOpenShift Merge Robot2019-03-15
|\ \ | | | | | | build: fix build DIR -t TAG
| * | build: fix build DIR -t TAGGiuseppe Scrivano2019-03-15
| |/ | | | | | | | | | | | | | | accept also the order "build DIR -t TAG" Closes: https://github.com/containers/libpod/issues/2636 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | Merge pull request #2637 from edsantiago/zsh_completionOpenShift Merge Robot2019-03-15
|\ \ | | | | | | zsh completion
| * | zsh completionEd Santiago2019-03-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Weekend hack by someone who doesn't grok zsh completion but who finds it deeply offensive that most completion files have an unmaintainable duplication of options and arguments. The idea behind this one is to discover the command line using --help, with a few hardcoded helpers for discovering containers, images, pods, and figuring out which args take files/dirs as args. Working remarkably well. I am using this in my daily routine and wondering how I ever managed without it. It's not perfect -- a future version can perhaps show only stopped containers for podman rm, only running ones for podman stop -- but ROI seems low on that given my limited zsh completion skills. Sadly, I can't figure out how to write a regression test suite for this. It would be lovely to have a list if partial command lines and expected completions, because the history of this change is that (seemingly) minor tweaks in one place cause breakage in another. Does anyone know of such a framework? Still... working well enough to ship, IMO. Signed-off-by: Ed Santiago <santiago@redhat.com>
* | | Merge pull request #2633 from edsantiago/default_defaultOpenShift Merge Robot2019-03-15
|\ \ \ | | | | | | | | Usage messages: deduplicate '(default true)' et al
| * | | save-load-export: clear cli-parsing defaultEd Santiago2019-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ...in order to silence Cobra's usually-helpful "(default xxx)" message. Initialization is now done in code, by testing for empty string and setting that to /dev/std{in,out} as appropriate; make special note of load.go where there's mild duplication between a local variable and cliconfig. Signed-off-by: Ed Santiago <santiago@redhat.com>
| * | | Usage messages: deduplicate '(default true)' et alEd Santiago2019-03-13
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove hardcoded '(default: true)' strings from bool flags, and '(default this-or-that)' from string flags. First because it's unmaintainable duplication that would cause confusion should someone ever change the default and not notice the message. Second, because cobra[1] already prints '(default XXXX)' for all options with non-false non-nil default. So in each of these cases, current podman help behavior is: $ podman login --help ... --tls-verify Require HTTPS ... (default: true) (default true) This PR eliminates that duplication. [1] actually spf13/pflag/flag.go The only nontrivial one of these is start.go, where the default for sigProxy depends on the --attach flag. Solution: change the command-line default to false, and implement the new conditional default in logic. Bonus: removed unnecessary check, because now if sigProxy is set without --attach, we can guarantee that it was done by the user. But please pay close scrutiny to this particular section in case there's something I missed. Signed-off-by: Ed Santiago <santiago@redhat.com>
* | | Merge pull request #2617 from giuseppe/fix-with-configOpenShift Merge Robot2019-03-15
|\ \ \ | | | | | | | | runtime: fill the runtime config with sane defaults
| * | | rootless: do not override user settingsGiuseppe Scrivano2019-03-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | if the settings are available in the user config file, do not override them with the global configuration. Closes: https://github.com/containers/libpod/issues/2614 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
| * | | runtime: refactor NewRuntime and NewRuntimeFromConfigGiuseppe Scrivano2019-03-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | we had two functions NewRuntimeFromConfig and NewRuntime that differed only for the config file they use. Move comon logic to newRuntimeFromConfig and let it lookup the configuration file to use when one is not specified. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
| * | | events: use os.SEEK_END instead of its valueGiuseppe Scrivano2019-03-15
| | |/ | |/| | | | | | | Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | | Merge pull request #2656 from giuseppe/fix-rootfs-segfaultOpenShift Merge Robot2019-03-15
|\ \ \ | |/ / |/| | container: check containerInfo.Config before accessing it
| * | container: check containerInfo.Config before accessing itGiuseppe Scrivano2019-03-15
|/ / | | | | | | | | | | | | | | | | check that containerInfo.Config is not nil before trying to access it. Closes: https://github.com/containers/libpod/issues/2654 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | Merge pull request #2645 from mheon/fix_some_flakesOpenShift Merge Robot2019-03-15
|\ \ | | | | | | Fix a few flakes
| * | Bump timeout on a podman info test to defaultMatthew Heon2019-03-14
| |/ | | | | | | | | | | Saw this flake a few times because of a timeout issue. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
* | Merge pull request #2660 from giuseppe/upgrade-slirp4netnsOpenShift Merge Robot2019-03-15
|\ \ | | | | | | cirrus: upgrade slirp4netns
| * | cirrus: upgrade slirp4netnsGiuseppe Scrivano2019-03-14
| | | | | | | | | | | | Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | | Merge pull request #2653 from giuseppe/fix-slirp4netns-checkOpenShift Merge Robot2019-03-14
|\ \ \ | |/ / |/| | rootless: fix CI regression when using slirp4netns
| * | rootless: fix CI regression when using slirp4netnsGiuseppe Scrivano2019-03-14
|/ / | | | | | | | | | | | | | | | | | | Older versions of slirp4netns do not have the --disable-host-loopback flag. Remove the check once we are sure the updated version is available everywhere. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | Merge pull request #1642 from kunalkushwaha/image-treeOpenShift Merge Robot2019-03-14
|\ \ | | | | | | Tree implementation for podman images
| * | Tree implementation for podman imagesKunal Kushwaha2019-03-14
| | | | | | | | | | | | Signed-off-by: Kunal Kushwaha <kushwaha_kunal_v7@lab.ntt.co.jp>
* | | Merge pull request #2644 from giuseppe/slirp-disable-loOpenShift Merge Robot2019-03-14
|\ \ \ | | | | | | | | slirp4netns: use --disable-host-loopback
| * | | slirp4netns: use --disable-host-loopbackGiuseppe Scrivano2019-03-14
| | | | | | | | | | | | | | | | | | | | | | | | Closes: https://github.com/containers/libpod/issues/2642 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | | | Merge pull request #2546 from TomSweeneyRedHat/dev/tsweeney/commoncontainersOpenShift Merge Robot2019-03-14
|\ \ \ \ | | | | | | | | | | Replace skopeo-containers with containers-common
| * | | | Replace skopeo-containers with containers-commonTomSweeneyRedHat2019-03-14
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com> Replaces 'skopeo-containers' with 'containers-common' in the files that I feel comfortable changing it in. There are a number of rpm building related files that still have it, but I was hesitant to do so. Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com>
* | | | Merge pull request #2638 from jwhonce/issue/1959OpenShift Merge Robot2019-03-14
|\ \ \ \ | |/ / / |/| | | Corrected detach man pages and code comments
| * | | Corrected detach man pages and code commentsJhon Honce2019-03-13
| | | | | | | | | | | | | | | | | | | | | | | | * Updated documentation to match code Signed-off-by: Jhon Honce <jhonce@redhat.com>
* | | | Merge pull request #2626 from giuseppe/slirp-set-mtuOpenShift Merge Robot2019-03-14
|\ \ \ \ | | | | | | | | | | slirp4netns: set mtu to 65520
| * | | | slirp4netns: set mtu to 65520Giuseppe Scrivano2019-03-14
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | it improves significantly the performance of the slirp4netns network: https://github.com/rootless-containers/slirp4netns/tree/777bdccceffa5bee38dbfd9eefc06628cc160ff6#iperf3-netns---host Closes: https://github.com/containers/libpod/issues/1732 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | | | Merge pull request #2640 from TomSweeneyRedHat/dev/tsweeney/builddocfix2OpenShift Merge Robot2019-03-14
|\ \ \ \ | | | | | | | | | | Replace buildah with podman in build doc
| * | | | Replace buildah with podman in build docTomSweeneyRedHat2019-03-13
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com> Remove the word buildah from the man page and replace it with podman. Cut and paste job gone bad apparently. Fixes: #2639
* | | | Merge pull request #2624 from edsantiago/inspect_usabilityOpenShift Merge Robot2019-03-14
|\ \ \ \ | |/ / / |/| | | Usability cleanup for 'inspect'
| * | | Usability cleanup for 'inspect'Ed Santiago2019-03-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make the usage messages (and options) different between podman inspect, podman image inspect, and podman container inspect. Disable inapplicable options (-l, -s) for podman image inspect Disable -t (type) when the type is implicit through the subcommand. Update man page to reflect differences in usage. Fix broken test. Uglier than desirable due to Go and Cobra limitations Signed-off-by: Ed Santiago <santiago@redhat.com>
* | | | Merge pull request #2631 from giuseppe/fix-race-rmOpenShift Merge Robot2019-03-13
|\ \ \ \ | |_|/ / |/| | | rm: fix cleanup race
| * | | rm: fix cleanup raceGiuseppe Scrivano2019-03-13
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | we fire the cleanup process asynchronously so we might race with a command like: podman run --rm --name foo ... && podman run --rm --name foo Fix it by ensuring the container is deleted before we exit. This will race with the "cleanup" process, but it is fine as one of the two commands will fail with ErrNoSuchCtr while the other succeeds. Closes: https://github.com/containers/libpod/issues/2619 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | | Merge pull request #2621 from mheon/event_on_deathOpenShift Merge Robot2019-03-13
|\ \ \ | | | | | | | | Add event on container death
| * | | Add event on container deathMatthew Heon2019-03-13
| |/ / | | | | | | | | | Signed-off-by: Matthew Heon <matthew.heon@pm.me>
* | | Merge pull request #2622 from baude/protectdarwinOpenShift Merge Robot2019-03-13
|\ \ \ | | | | | | | | Add gating tasks
| * | | Add gating tasksbaude2019-03-13
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to protect against regressions, we need to add a few gating tasks: * build with varlink * build podman-remote * build podman-remote-darwin we already have a gating task for building without varlink Signed-off-by: baude <bbaude@redhat.com>
* | | Merge pull request #2629 from edsantiago/add-events-to-podman-1OpenShift Merge Robot2019-03-13
|\ \ \ | | | | | | | | Add 'podman events' to podman(1)
| * | | Add 'podman events' to podman(1)Ed Santiago2019-03-13
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | Also: enforce noSubArgs for podman events Also: remove unnecessary '[flags]' from Use message (Cobra adds it automatically) Signed-off-by: Ed Santiago <santiago@redhat.com>
* | | Merge pull request #2628 from TomSweeneyRedHat/dev/tsweeney/bigvendorbuildah2OpenShift Merge Robot2019-03-13
|\ \ \ | |/ / |/| | Vendor docker/docker, fsouza and more #2
| * | Vendor docker/docker, fsouza and more #2TomSweeneyRedHat2019-03-13
|/ / | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com> Vendors in fsouza/docker-client, docker/docker and a few more related. Of particular note, changes to the TweakCapabilities() function from docker/docker along with the parse.IDMappingOptions() function from Buildah. Please pay particular attention to the related changes in the call from libpod to those functions during the review. Passes baseline tests.
* | Merge pull request #2625 from rhatdan/vendorOpenShift Merge Robot2019-03-13
|\ \ | | | | | | Update vendor of Buildah and imagebuilder
| * | Update vendor of Buildah and imagebuilderDaniel J Walsh2019-03-13
|/ / | | | | | | | | | | Fixes the testing issues we are hitting. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* | Merge pull request #2623 from edsantiago/podman_top_typoOpenShift Merge Robot2019-03-13
|\ \ | |/ |/| minor typo fix in 'podman top' usage