Commit Graph

8429 Commits

Author SHA1 Message Date
Daniel J Walsh 1f8569f7d7
Fix environment handling from containers.conf
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-04-02 13:10:08 -04:00
Valentin Rothberg 44a515015c podmanV2: implement push
* Implement `podman-push` and `podman-image-push` for the podmanV2
  client.

* Tests for `pkg/bindings` are not possible at the time of writing as we
  don't have a local registry running.

* Implement `/images/{name}/push` compat endpoint. Tests are not
  implemented for this v2 endpoint.  It has been tested manually.

General note: The auth config extraction from the http header is not
implement for push.  Since it's not yet supported for other endpoints
either, I deferred it to future work.

Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-04-02 17:01:32 +02:00
Kir Kolyshkin e0614367ca pkg/spec.InitFSMounts: optimize
Instead of getting mount options from /proc/self/mountinfo, which is
very costly to read/parse (and can even be unreliable), let's use
statfs(2) to figure out the flags we need.

[v2: move getting default options to pkg/util, make it linux-specific]

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2020-04-02 07:52:34 -07:00
OpenShift Merge Robot c3c6a7c823
Merge pull request #5677 from giuseppe/avoid-lock-tty
exec: fix hang if control path is deleted
2020-04-02 16:43:11 +02:00
OpenShift Merge Robot ffd2d78391
Merge pull request #5516 from cevich/remove_dupe_gate_cross
Cirrus: Remove darwin/windows builds in gate-job
2020-04-02 15:07:03 +02:00
OpenShift Merge Robot 82610d657d
Merge pull request #5688 from baude/v2import
podmanv2 import
2020-04-02 14:20:57 +02:00
Giuseppe Scrivano d172c98714
utils: delete dead code
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-02 09:15:58 +02:00
Giuseppe Scrivano 41fc891173
attach: skip shutdown on errors
skip doing a socket shutdown on an error, since we are not sure the
socket was already closed and we end up using the wrong fd.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-02 09:15:57 +02:00
Giuseppe Scrivano 4c02aa46c2
attach: fix hang if control path is deleted
if the control path file is deleted, libpod hangs waiting for a reader
to open it.  Attempt to open it as non blocking until it returns an
error different than EINTR or EAGAIN.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2020-04-02 09:15:56 +02:00
OpenShift Merge Robot 88455fe704
Merge pull request #5687 from TomSweeneyRedHat/dev/tsweeney/fixmaillist
Touch up mailing list address in README.md
2020-04-02 02:27:06 +02:00
OpenShift Merge Robot a8cde905d5
Merge pull request #5699 from edsantiago/podmanv2-retry
podmanv2-retry - new helper for testing v2
2020-04-02 01:00:06 +02:00
Kir Kolyshkin f2c42a3958 pkg/spec.InitFSMounts: fix mount opts in place
... rather than create a new slice and then make the caller
replace the original with the new one.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2020-04-01 15:30:59 -07:00
OpenShift Merge Robot 79f191cb59
Merge pull request #5697 from baude/v2export
podmanv2 export
2020-04-02 00:13:21 +02:00
Brent Baude bb39051616 podmanv2 export
add ability to export a container to a tarball

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-04-01 16:02:53 -05:00
Brent Baude 0433081983 podmanv2 import
add the ability to import a container image from a container export

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-04-01 15:56:26 -05:00
OpenShift Merge Robot 0f357be5ae
Merge pull request #5686 from baude/v2load
podmanv2 load
2020-04-01 22:54:22 +02:00
Ed Santiago 108ab380f1 podmanv2-retry - new helper for testing v2
./hack/podmanv2-retry will first invoke $PODMAN_V2 with given
arguments. If that fails with any of the following errors:

    unrecognized command
    unknown flag
    unknown shorthand

...it will run $PODMAN_FALLBACK with the same arguments.
Output and exit code will be those of the final podman command,
although be aware that stderr and stdout are combined.

This is a quick-hack script intended for use in v2 testing, to
test implemented commands without noise from unimplemented ones.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-04-01 14:14:00 -06:00
Brent Baude 8500ce6b9a podmanv2 load
enable podman load for v2

add reexec into main

add systemd build flag to v2 makefile

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-04-01 14:10:57 -05:00
Sujil02 7cbc09971a podmanv2 pod inspect
Add the ability to inspect pod in podmanv2

Signed-off-by: Sujil02 <sushah@redhat.com>
2020-04-01 15:10:49 -04:00
OpenShift Merge Robot 0a16372035
Merge pull request #5678 from sshnaidm/buildrpm
Fix repos for CentOS 7 RPM build
2020-04-01 20:18:48 +02:00
OpenShift Merge Robot d534e52427
Merge pull request #5645 from jwhonce/wip/inspect
V2 podman inspect
2020-04-01 19:08:08 +02:00
Jhon Honce 46e3b2efb8 V2 podman inspect
* Expose podman container inspect
* Expose podman image inspect

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2020-04-01 08:07:43 -07:00
OpenShift Merge Robot 82cbebcbea
Merge pull request #5656 from baude/v2imagetag
podman v2 image tag and untag
2020-04-01 16:10:10 +02:00
OpenShift Merge Robot 394f1c26d6
Merge pull request #5684 from baude/v2podps
podmanv2 pod ps
2020-04-01 15:39:35 +02:00
Sagi Shnaidman 19aa4b4c0b Fix repos for CentOS 7 RPM build
CBS repos are gone, so we need a new repos to configure for RPM.

Signed-off-by: Sagi Shnaidman <sshnaidm@redhat.com>
2020-04-01 14:01:46 +03:00
Brent Baude 26644d7cb8 podman v2 image tag and untag
add the ability to tag and untag images in podmanv2

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-03-31 19:36:26 -05:00
Brent Baude 7def91910c podmanv2 pod ps
add the ability to list pods in podmanv2

Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-03-31 19:32:37 -05:00
OpenShift Merge Robot 6d36d05447
Merge pull request #5670 from cevich/new_images
Cirrus: Update VM Images
2020-04-01 00:01:10 +02:00
OpenShift Merge Robot 9f5fcc3565
Merge pull request #5655 from baude/v2hcrun
podmanv2 enable healthcheck run
2020-03-31 23:01:19 +02:00
OpenShift Merge Robot 4d66704211
Merge pull request #5683 from larsks/bug/rpm-systemd-tag
add systemd build tag to podman builds
2020-03-31 22:37:15 +02:00
OpenShift Merge Robot 6e8f6cab60
Merge pull request #5675 from vrothberg/v2-pull
podmanV2: implement pull
2020-03-31 21:12:49 +02:00
TomSweeneyRedHat 688e858740 Touch up mailing list address in README.md
Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com>
2020-03-31 15:02:39 -04:00
OpenShift Merge Robot 56ab9e4cc8
Merge pull request #5649 from jwhonce/wip/varlink
V2 Move varlink home
2020-03-31 20:34:36 +02:00
OpenShift Merge Robot 4e3010d4e7
Merge pull request #5681 from rhatdan/timeout
Switch to using --time as opposed to --timeout to better match Docker.
2020-03-31 16:32:59 +02:00
OpenShift Merge Robot 7d4ab3fd8f
Merge pull request #5518 from containers/dependabot/go_modules/github.com/containers/conmon-2.0.12incompatible
Bump github.com/containers/conmon from 2.0.10+incompatible to 2.0.14
2020-03-31 16:30:34 +02:00
OpenShift Merge Robot 9b86835c39
Merge pull request #5674 from containers/dependabot/go_modules/github.com/rootless-containers/rootlesskit-0.9.3
Bump github.com/rootless-containers/rootlesskit from 0.9.2 to 0.9.3
2020-03-31 16:28:09 +02:00
Lars Kellogg-Stedman 2753df2973 add systemd build tag to podman builds
Without the systemd build tag, podman will fail with the error "No
support for journald logging".

This commit adds the `systemd` build tag explicitly, rather than
relying on `hack/systemd_tag.sh` (because we're building an rpm and
we've explicitly included systemd-devel as a dependency).

Signed-off-by: Lars Kellogg-Stedman <lars@redhat.com>
2020-03-31 09:42:42 -04:00
dependabot-preview[bot] 4841cd1630
Bump github.com/rootless-containers/rootlesskit from 0.9.2 to 0.9.3
Bumps [github.com/rootless-containers/rootlesskit](https://github.com/rootless-containers/rootlesskit) from 0.9.2 to 0.9.3.
- [Release notes](https://github.com/rootless-containers/rootlesskit/releases)
- [Commits](https://github.com/rootless-containers/rootlesskit/compare/v0.9.2...v0.9.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-03-31 09:05:15 -04:00
Daniel J Walsh 3449b27cd1
Switch to using --time as opposed to --timeout to better match Docker.
We need to consistently use --time rather then --timeout throughout the code.
Fix locations where timeout defaults are not set correctly as well.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-03-31 08:50:32 -04:00
Valentin Rothberg 3bdad6fa2a podmanV2: implement pull
Implement pulling images for the v2 client.  What I _really_ don't like
is the fact that we are now having a near identical code clone among
`pkg/domain/infra/abi` and `pkg/api/handlers/libpod`.  Partly because we
don't yet have a higher-level pull function and partly because we have
redudancy among `pkg/domain` and `pkg/api`.  Pull might be a high
outlier but I am concerned already by the potential of introducing more
redundancy.  I'd love to `infra/abi` and `pkg/abi` to really use the
same code in the future.

Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-03-31 13:01:27 +02:00
Kir Kolyshkin c11c5e180a pkg/spec/initFSMounts: fix
> $ ./bin/podman run -v /tmp:/tmp alpine true; echo $?
> 0
> $ ./bin/podman run -v /tmp:/tmp:ro alpine true; echo $?
> 0
> $ ./bin/podman run -v /tmp:/w0w:ro alpine true; echo $?
> Error: container_linux.go:349: starting container process caused "process_linux.go:449: container init caused \"rootfs_linux.go:58: mounting \\\"/tmp\\\" to rootfs \\\"/home/kir/.local/share/containers/storage/overlay/7636ef3650fc91ee4996ccc026532bb3cff7182c0430db662fffb933e0bcadc9/merged\\\" at \\\"/home/kir/.local/share/containers/storage/overlay/7636ef3650fc91ee4996ccc026532bb3cff7182c0430db662fffb933e0bcadc9/merged/w0w\\\" caused \\\"operation not permitted\\\"\"": OCI runtime permission denied error
> 126

The last command is not working because in-container mount point
is used to search for a parent mount in /proc/self/mountinfo.

And yet the following

> $ ./bin/podman run -v /tmp:/run/test:ro alpine true; echo $?
> 0

still works fine! Here's why:

> $ mount | grep -E '/run |/tmp '
> tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
> tmpfs on /tmp type tmpfs (rw,nosuid,nodev,seclabel)

This is the reason why previous commit modified in-container mount
point.

Fixes: 0f5ae3c5af
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2020-03-31 01:56:10 -07:00
Chris Evich 0dfa163a64
Cirrus: Remove darwin/windows builds in gate-job
It's advisable to have the initial gating job execute as quickly as
possible, weeding out simple mistakes early on, when possible.  However,
over time it has bloated to duplicate some more specific testing which
occurs in other tasks.  In this specific case the
`special_testing_cross` task.  Remove these duplicate items from the gate
job to speed things up for everyone.

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-03-30 17:08:48 -04:00
Chris Evich 5884225cb0
Cirrus: Update VM Images
Fedora release 31 (Thirty One)
```
Kernel:  5.5.11-200.fc31.x86_64
Cgroups:  cgroup2fs
conmon-2.0.14-1.fc31-x86_64
containernetworking-plugins-0.8.5-1.fc31-x86_64
containers-common-0.1.41-1.fc31-x86_64
container-selinux-2.129.0-1.fc31-noarch
criu-3.13-5.fc31-x86_64
crun-0.13-1.fc31-x86_64
golang-1.13.6-1.fc31-x86_64
libseccomp-2.4.2-2.fc31-x86_64
package runc is not installed
podman-1.8.2-2.fc31-x86_64
skopeo-0.1.41-1.fc31-x86_64
slirp4netns-0.4.0-20.1.dev.gitbbd6f25.fc31-x86_64
```

Ubuntu 18.04.4 LTS
```
Kernel:  5.0.0-1031-gcp
Cgroups:  tmpfs
conmon-2.0.14~1-amd64
containernetworking-plugins-0.8.5~1-amd64
containers-common-0.1.41~1-all
cri-o-runc-1.0.0-3~dev2-amd64
criu-3.13-2ppa1.18.04-amd64
golang-2:1.14-1longsleep1+bionic-all
libseccomp2-2.4.1-0ubuntu0.18.04.2-amd64
podman-1.8.2~1-amd64
skopeo-0.1.41~1-amd64
slirp4netns-0.4.3~1-amd64
```

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-03-30 17:07:33 -04:00
OpenShift Merge Robot 9c7410d331
Merge pull request #5669 from sshnaidm/cpushare
Revert "Default CPUShares in Inspect are 1024"
2020-03-30 22:01:16 +02:00
Chris Evich 19c3b5462f
Cirrus: Minor docs update
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-03-30 16:00:01 -04:00
Sagi Shnaidman f7241b24e6 Revert "Default CPUShares in Inspect are 1024"
cpu-share is 0 in docker inspect, see
https://github.com/moby/moby/issues/35452

This reverts commit eb229d526c.

Signed-off-by: Sagi Shnaidman <sshnaidm@redhat.com>
2020-03-30 21:38:19 +03:00
OpenShift Merge Robot edd623c419
Merge pull request #5667 from edsantiago/apiv2_fixes
fix more swagger inconsistencies
2020-03-30 19:29:10 +02:00
OpenShift Merge Robot 95d9a1e667
Merge pull request #5664 from giuseppe/rootless-make-error-not-fatal
rootless: make cgroup ownership detection not fatal
2020-03-30 17:50:06 +02:00
OpenShift Merge Robot c77a57ff2c
Merge pull request #5662 from containers/dependabot/go_modules/github.com/spf13/cobra-0.0.7
Bump github.com/spf13/cobra from 0.0.6 to 0.0.7
2020-03-30 17:47:28 +02:00
Ed Santiago 11e79bcd95 fix more swagger inconsistencies
I'm getting really tired of doing this manually.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2020-03-30 09:45:34 -06:00