Commit Graph

9294 Commits

Author SHA1 Message Date
Daniel J Walsh 1b610e93d2
Fix handling of podman-remote stop --ignore
This patch simplifies the hanlding of rhe --ignore flag, for podman stop, rm

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-09-19 06:21:18 -04:00
Jhon Honce c4b49afad3 Refactor version handling in cmd tree
* Move from simple string to semver objects
* Change client API Version from '1' to 2.0.0

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-09-18 15:13:58 -07:00
Matthew Heon 2f605dcc1c Preserve groups in exec sessions in ctrs with --user
Podman wants to guarantee that exec sessions retain the groups of
the container they are started in, unless explicitly overridden
by the user. This guarantee was broken for containers where the
`--user` flag was specified; this patch resolves that.

Somewhere in the Exec rewrite for APIv2, I changed the location
where the container's User is passed into the exec session
(similar to groups, we also want to preserve user unless
overridden). The lower-level Exec APIs already handled setting
user and group appropriately if not specified when the exec
session was created, but I added duplicate code to handle this
higher in the stack - and that code only handled setting user,
not supplemental groups, breaking support in that specific case.

Two things conspired to make this one hard to track down: first,
things were only broken if the container explicitly set a user;
otherwise, the container user would still appear to be unset to
the lower-level code, which would properly set supplemental
groups (this tricked our existing test into passing). Also, the
`crun` OCI runtime will add the groups without prompting, which
further masked the problem there. I debated making `runc` do the
same, but in the end it's better to fix this in Podman - it's
better to be explicit about what we want done so we will work
with all OCI runtimes.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2020-09-18 13:54:25 -04:00
Jordan Christiansen d20a37bf10 Install bats as root
Installing bats to /usr/local requires root privileges. Without this,
`make install.tools` fails. However, if I do `sudo make install.tools`,
then all of the other dependencies and git clones in the current
directory end up owned by root. This limits root privileges to the part
that needs it.

Signed-off-by: Jordan Christiansen <xordspar0@gmail.com>
2020-09-18 12:50:25 -05:00
Chris Evich 3b3770588b
Makefile: Fix broken libpodimage targets
The configuration for this container has moved to the
`containers/automation_images` repository.  Leverage the
image built from the new location to guarantee synchronization
with images used in CI.

Also, remove several other targets that haven't worked for a really
long time.  Upon discussion, they seem to apply to a minority of
users.  Remove them to clean up the `Makefile` and reduce
maintenance burden.

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-09-18 11:09:01 -04:00
OpenShift Merge Robot 5b7509c562
Merge pull request #7660 from ashley-cui/logs
Fix remote logs
2020-09-18 09:46:41 -04:00
OpenShift Merge Robot fc3daaef83
Merge pull request #7594 from alvistack/master-linux-amd64
Update nix pin with `make nixpkgs`
2020-09-18 08:38:49 -04:00
Valentin Rothberg ae0e4dfd75 stats: detect closed client connection
Detect closed client connections and stop streaming.

Fixes: #7521
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-09-18 14:07:18 +02:00
Valentin Rothberg c6410076b0 stats endpoint: write OK header once
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-09-18 13:33:32 +02:00
OpenShift Merge Robot 273b9545bb
Merge pull request #7679 from baude/remoteiidfile
enable --iidfile for podman-remote build
2020-09-18 06:26:18 -04:00
OpenShift Merge Robot 562d0ca003
Merge pull request #7676 from xordspar0/go-build
Make Go builds more consistent
2020-09-18 06:22:39 -04:00
OpenShift Merge Robot fc131a207e
Merge pull request #7671 from zhangguanzhang/play-kube-handle-restartPolicy
handle the restartPolicy for play kube and generate kube
2020-09-18 06:19:19 -04:00
OpenShift Merge Robot 4b037d2acc
Merge pull request #7675 from zhangguanzhang/set-process-path-and-arg-with-infra-command
fix the .Path and .Args when use the infra-command
2020-09-18 06:15:52 -04:00
OpenShift Merge Robot 6c628b0557
Merge pull request #7681 from QiWang19/login.md-typo
[CI:DOCS] fix a typo of login.1.md
2020-09-18 06:12:11 -04:00
zhangguanzhang f0ccac199b handle the play kube and generate kube for with restartPolicy
Signed-off-by: zhangguanzhang <zhangguanzhang@qq.com>
2020-09-18 13:28:22 +08:00
zhangguanzhang 5f6fff0899 fix the .Path and .Args when use the infra-command
Signed-off-by: zhangguanzhang <zhangguanzhang@qq.com>
2020-09-18 09:57:54 +08:00
Wong Hoi Sing Edison 6ad67cd6c1
Update nix pin with `make nixpkgs`
Also backport changes from https://github.com/cri-o/cri-o/pull/4065/files#diff-1d37e48f9ceff6d8030570cd36286a61R189-R197

Signed-off-by: Wong Hoi Sing Edison <hswong3i@gmail.com>
2020-09-18 09:42:04 +08:00
Qi Wang 9258dfca79 fix a typo of login.1.md
fix a typo of login.1.md and link containers-registries.conf(5).

Signed-off-by: Qi Wang <qiwan@redhat.com>
2020-09-17 16:45:13 -04:00
Daniel J Walsh 8d3c7b4202
Bump github.com/rootless-containers/rootlesskit from 0.10.0 to 0.10.1
Bumps [github.com/rootless-containers/rootlesskit](https://github.com/rootless-containers/rootlesskit) from 0.10.0 to 0.10.1.
- [Release notes](https://github.com/rootless-containers/rootlesskit/releases)
- [Commits](https://github.com/rootless-containers/rootlesskit/compare/v0.10.0...v0.10.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-09-17 16:20:10 -04:00
OpenShift Merge Robot f84f441bec
Merge pull request #7680 from mheon/bump-2.1.0-rc2
Bump to v2.1.0-RC2
2020-09-17 16:14:38 -04:00
OpenShift Merge Robot 99015f8230
Merge pull request #7465 from edsantiago/dependabot_dance
dependabot-dance: new tool for managing revendor PRs
2020-09-17 16:10:55 -04:00
OpenShift Merge Robot 175d7b19dd
Merge pull request #7677 from AkihiroSuda/update-moby-20200918
update github.com/docker/docker and relevant deps
2020-09-17 15:18:17 -04:00
Matthew Heon 45a441e93b Bump to v2.1.0-dev
Signed-off-by: Matthew Heon <mheon@redhat.com>
2020-09-17 14:23:07 -04:00
Matthew Heon 9a614bb1c9 Bump to v2.1.0-rc2
Signed-off-by: Matthew Heon <mheon@redhat.com>
2020-09-17 14:23:07 -04:00
OpenShift Merge Robot dc23ef1cbf
Merge pull request #7678 from mheon/release_notes_210_rc2
[CI:DOCS] Update release notes for Podman v2.1.0-RC2
2020-09-17 14:21:22 -04:00
OpenShift Merge Robot 0ee332a9bf
Merge pull request #7672 from xordspar0/fix-template
Fix play_kube_test deployment template
2020-09-17 14:17:59 -04:00
OpenShift Merge Robot cedbb057a1
Merge pull request #7669 from zhangguanzhang/missing-completion
fix missing completion in podman run
2020-09-17 14:14:42 -04:00
baude ec58650939 enable --iidfile for podman-remote build
for podman-remote build operations, the iidfile, when used, needs to write the file to the client's local filesystem.

Signed-off-by: baude <bbaude@redhat.com>
2020-09-17 12:55:48 -05:00
Matthew Heon 2731d4bdfb Update release notes for Podman v2.1.0-RC2
Signed-off-by: Matthew Heon <mheon@redhat.com>
2020-09-17 13:54:40 -04:00
Akihiro Suda 661786808c
update github.com/docker/docker and relevant deps
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2020-09-18 02:22:25 +09:00
Jordan Christiansen 36318e5cab Make Go builds more consistent
* Use the BUILDFLAGS variable for all Go builds
* Use `go install` instead of manually specifying the GOBIN path

Signed-off-by: Jordan Christiansen <xordspar0@gmail.com>
2020-09-17 11:22:12 -05:00
Jordan Christiansen 7837afe165 Fix play_kube_test deployment template
Annotations were at the wrong indentation, making them a part of the
labels map.

Signed-off-by: Jordan Christiansen <xordspar0@gmail.com>
2020-09-17 10:04:56 -05:00
OpenShift Merge Robot 031ddf9c84
Merge pull request #7655 from vrothberg/fix-7628
--mount: support arbitrary mount-argument order
2020-09-17 10:15:32 -04:00
OpenShift Merge Robot 9f745d591d
Merge pull request #7647 from jwhonce/issues/7543
Refactor remote pull to provide progress
2020-09-17 09:43:38 -04:00
OpenShift Merge Robot c8d90d00c3
Merge pull request #7646 from edsantiago/version_options
podman version and --version: fix format, exit
2020-09-17 09:40:10 -04:00
zhangguanzhang e18e4f4327 fix missing completion in podman run
Signed-off-by: zhangguanzhang <zhangguanzhang@qq.com>
2020-09-17 21:40:03 +08:00
OpenShift Merge Robot d8414add00
Merge pull request #7654 from vrothberg/fix-7651
image list: return all associated names
2020-09-17 09:36:49 -04:00
OpenShift Merge Robot 98aa458c7a
Merge pull request #7666 from containers/dependabot/go_modules/k8s.io/apimachinery-0.19.2
Bump k8s.io/apimachinery from 0.19.1 to 0.19.2
2020-09-17 09:23:28 -04:00
Ed Santiago 5095a34135 dependabot-dance: new tool for managing revendor PRs
dependabot seems to submit PRs without running 'make vendor'.
This script automates (with some safety checks) the manual
process for pulling the PR, running 'make vendor-in-container',
and force-pushing the PR.

Usage: ./contrib/dependabot-dance

It should take care of identifying your github repo, finding
all active dependabot branches, running the make, git-add,
and commit, then git-pushing.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-09-17 05:22:49 -06:00
Chris Evich a748a887ab
Cirrus: Add gpg2 to Ubuntu images
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-09-17 06:32:33 -04:00
dependabot-preview[bot] 257874ae0a
Bump k8s.io/apimachinery from 0.19.1 to 0.19.2
Bumps [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) from 0.19.1 to 0.19.2.
- [Release notes](https://github.com/kubernetes/apimachinery/releases)
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.19.1...v0.19.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-09-17 06:26:20 -04:00
OpenShift Merge Robot 1a929c7236
Merge pull request #7648 from xordspar0/kube-play-labels
Add labels to a pod created via play kube
2020-09-17 06:24:14 -04:00
Valentin Rothberg ecae5f7ade image list: return all associated names
Always return all associated names / repo tags of an image and fix a bug
with malformed repo tags.

Previously, Podman returned all names only with `--all` but this flag
only instructs to list intermediate images and should not alter
associated names.  With `--all` Podman queried the repo tags of an image
which splits all *tagged* names into repository and tag which is then
reassembled to eventually be parsed again in the frontend.  Lot's of
redundant CPU heat and buggy as the reassembly didn't consider digests
which ultimately broke parsing in the frontend.

Fixes: #7651
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-09-17 12:23:58 +02:00
Jordan Christiansen 55dfa7fad2 Add labels to a pod created via play kube
When using `podman play kube` with a YAML file that has pod labels,
apply those labels to the pods that podman makes.

For example, this Deployment spec has labels on a pod:

	apiVersion: apps/v1
	kind: Deployment
	metadata:
	  name: myapp
	  labels:
	    app: myapp
	spec:
	  selector:
	    matchLabels:
	      app: myapp
	  template:
	    metadata:
	      labels:
		app: myapp
	    spec:
	      containers:
	      - name: web
		image: nginx
		ports:
		- containerPort: 80

The pods that podman creates will have the label "app" set to "myapp" so
that these pods can be found with `podman pods ps --filter label=app`.

Signed-off-by: Jordan Christiansen <xordspar0@gmail.com>
2020-09-16 15:46:08 -05:00
OpenShift Merge Robot 8d7e795454
Merge pull request #7621 from rhatdan/pods
Fix podman pod create --infra-command and --infra-image
2020-09-16 16:40:44 -04:00
Ashley Cui e1ac8d9aa2 WIP: Fix remote logs
Docker compatibility  - logs endpoint does not write stream headers if container has a tty

Signed-off-by: Ashley Cui <acui@redhat.com>
2020-09-16 13:53:15 -04:00
Jhon Honce 222cf74412 Refactor remote pull to provide progress
podman and podman-remote do not exactly match as the lower layer code
checks if the output is destined for a  TTY before creating the progress
bars.  A future PR for containers/images could change this behavior.

Fixes #7543

Tested with:

$ (echo '# start'; podman-remote pull nginx ) 2>&1 | ts '[%Y-%m-%d %H:%M:%.S]'
$ (echo '# start'; podman pull nginx ) 2>&1 | ts '[%Y-%m-%d %H:%M:%.S]'

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-09-16 10:44:26 -07:00
OpenShift Merge Robot acf86ef5ab
Merge pull request #7653 from AkihiroSuda/fix-7652
Fix "rootless-cni-infra + runc fails with ENODEV"
2020-09-16 15:47:43 +02:00
Valentin Rothberg 067c13b384 --mount: support arbitrary mount-argument order
Support an arbitrary order in which arguments are specified to the
`--mount` flag.  Previously, Podman expected `type=...` to come
first which was breaking compatibility with Docker.

Note that this is the ground work to default to "volume" (again Docker
compat).  However, this will require some further massaging as we have
to assign a name.

Fixes: #7628
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-09-16 14:18:40 +02:00
Daniel J Walsh b3d6383f25
Fix podman pod create --infra-command and --infra-image
Currently infr-command and --infra-image commands are ignored
from the user.  This PR instruments them and adds tests for
each combination.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-09-16 07:42:19 -04:00