Commit graph

14612 commits

Author SHA1 Message Date
Giuseppe Scrivano 640c2d53a8
test: fix podman run test as rootless
aafa80918a introduced the regression.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-03-25 15:50:31 +01:00
Daniel J Walsh 37bb6aa346
Merge pull request #13657 from Akasurde/misc_spell
Misc typo fixes
2022-03-25 08:01:43 -04:00
Abhijeet Kasurde 4f73cf3fc7 Misc typo fixes
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2022-03-25 16:22:42 +05:30
Daniel J Walsh 206dcd48e9
Merge pull request #13656 from giuseppe/drop-rhel-7-doc
[CI:DOCS] docs: drop note about upcoming RHEL 7.7
2022-03-25 06:16:13 -04:00
Giuseppe Scrivano c01d1f8e37
[CI:DOCS] docs: drop note about upcoming RHEL 7.7
it was released more than two years ago.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-03-25 11:08:52 +01:00
OpenShift Merge Robot 7934b77dd5
Merge pull request #13531 from cdoern/build
Add Context Directory to tar
2022-03-24 19:15:46 +01:00
OpenShift Merge Robot e657c7a170
Merge pull request #13622 from rhatdan/systemd1
When running systemd in a container set container_uuid
2022-03-24 19:05:44 +01:00
Daniel J Walsh b6c713f4d7
Merge pull request #13636 from Luap99/machine-port-proxy
podman machine: fix port forwarding with proxy
2022-03-24 13:53:57 -04:00
Daniel J Walsh 38e89f39d6
Merge pull request #13647 from lsm5/main-cve-2022-21698
Bump github.com/prometheus/client_golang to v1.11.1
2022-03-24 13:53:21 -04:00
OpenShift Merge Robot cd10432b09
Merge pull request #13637 from Luap99/conmon-err
readConmonPipeData: try to improve error
2022-03-24 18:52:44 +01:00
OpenShift Merge Robot 3b1d7a7d24
Merge pull request #13621 from Luap99/doc-libpod
[CI:DOCS] document that using libpod package directly is not supported
2022-03-24 18:49:43 +01:00
OpenShift Merge Robot 4d271912e8
Merge pull request #13602 from edsantiago/size_check_part2
Binary growth check, part 2 of 2
2022-03-24 18:47:51 +01:00
OpenShift Merge Robot 712777e0aa
Merge pull request #13274 from jwhonce/wip/manifest_4_main
Fix manifest 4.0 endpoints
2022-03-24 18:25:45 +01:00
OpenShift Merge Robot c61b06c46c
Merge pull request #13620 from Luap99/qemu-path
podman machine start: lookup qemu path again if not found
2022-03-24 18:11:45 +01:00
OpenShift Merge Robot caaaf07c1e
Merge pull request #13587 from giuseppe/clone-to-pod
container: allow clone to an existing pod
2022-03-24 18:09:43 +01:00
OpenShift Merge Robot 32748492e9
Merge pull request #13635 from Luap99/rpm-remote
[CI:DOCS] Remove experimental warning from podman-remote rpm
2022-03-24 18:05:48 +01:00
OpenShift Merge Robot 5e893765bc
Merge pull request #13638 from Luap99/machine-set-doc
[CI:DOCS] podman machine set: clarify --rootful option
2022-03-24 17:59:46 +01:00
Giuseppe Scrivano ab8e15f6ac
Merge pull request from GHSA-qvf8-p83w-v58j
do not set the inheritable capabilities
2022-03-24 17:02:20 +01:00
Lokesh Mandvekar 61b2d8844f
Bump github.com/prometheus/client_golang to v1.11.1
Resolves: CVE-2022-21698

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2022-03-24 11:15:03 -04:00
Giuseppe Scrivano b469bf5c05
container: allow clone to an existing pod
Closes: https://github.com/containers/podman/issues/3979

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-03-24 14:24:50 +01:00
OpenShift Merge Robot a416fd6de4
Merge pull request #13624 from rhatdan/nix
Remove nix packages, since no one is supporting this
2022-03-24 14:15:25 +01:00
OpenShift Merge Robot 2d46165799
Merge pull request #13606 from paralin/play-kube-inmem
play: kube: support io.reader body arg and remove tempfiles
2022-03-24 12:41:28 +01:00
Paul Holzinger 7189b6f269
podman machine set: clarify --rootful option
It is not quite clear what the difference between `podman machine set
--rootful` and `podman system connection default` is.
Add a small note with the difference, the --rootful option will also
affect the socket forwarding.

Fixes #13515

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-03-24 12:24:52 +01:00
Paul Holzinger c0bbca8c44
podman machine: fix port forwarding with proxy
When a user has a http proxy configured the VM will use it. However
since gvproxy can only be reached internally from within the VM the port
forwarding HTTP API call should not be redirected to the proxy.

[NO NEW TESTS NEEDED]

Fixes #13628

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-03-24 12:07:13 +01:00
Paul Holzinger 7ae52e86ff
readConmonPipeData: try to improve error
Issue #10927 reports `container create failed (no logs from conmon): EOF`
errors. Since we do not know the root cause it would be helpful to try
to get as much info as possible out of the error.
(buffer).ReadBytes() will return the bytes read even when an error
occurs. So when we get an EOF we could still have some valuable
information in the buffer. Lets try to unmarshal them and if this fails
we add the bytes to the error message.

This does not fix the issue but it might help us getting a better error.

[NO NEW TESTS NEEDED]

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-03-24 12:06:48 +01:00
OpenShift Merge Robot 72660e377f
Merge pull request #13634 from flouthoc/fix-podman-set-docs
machine-set: fix example for setting `rootful` flag
2022-03-24 11:47:21 +01:00
Giuseppe Scrivano 809f82bdbd
specgen: fix typo
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-03-24 11:02:41 +01:00
Paul Holzinger bf6430d18c
Remove experimental warning from podman-remote rpm
podman-remote is considered stable and follows the same semver as
podman.

Fixes a question on the podman mailing list.
https://lists.podman.io/archives/list/podman@lists.podman.io/thread/2DVCU5Z54U4PI5ROTBQXHDBLQSAXAHFU/

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-03-24 10:56:16 +01:00
Aditya R e90b35438c
machine-set: fix example for setting rootful flag
Flag is actually named `rootful` however documented as `root`, fix the
documented example as actual flag.

Both `podman machine init` and `podman machine set` uses flag `rootfull`

[NO TESTS NEEDED]
[NO NEW TESTS NEEDED]

Signed-off-by: Aditya R <arajan@redhat.com>
2022-03-24 14:35:58 +05:30
Christian Stewart 752680366c play: kube: use in-memory kubefile and remove tempfile
The PlayKube and PlayKubeDown commands accepted a "path" argument to a YAML file
to play. This requires the caller to write the YAML to a file path. The downside
of this is apparent in the HTTP handlers which have to use a temporary file on
disk to store the YAML file.

The file is opened & used as the body of the HTTP request. It's possible to
instead pass a io.Reader and use a fully in-memory request body.

Add backwards-compatible changes to bindings to allow passing either a filepath
or a io.Reader body.

Refactor the podman bindings to use a io.Reader instead of a filepath.

Simplify the HTTP handlers for PlayKube by removing the now unneeded tempfile.

[NO NEW TESTS NEEDED]

Signed-off-by: Christian Stewart <christian@paral.in>
2022-03-24 00:57:01 -07:00
OpenShift Merge Robot 80123ca505
Merge pull request #13625 from edsantiago/cdo
[CI:DOCS] man pages: sort flags, and keep them that way
2022-03-23 23:19:15 +01:00
Ed Santiago 9b0c8d23bd man pages: sort flags, and keep them that way
Command flags (OPTIONS) in man pages have to date been in
haphazard order. Sometimes that order is sensible, e.g.,
most-important options first, but more often they're
just in arbitrary places. This makes life hard for users.

Here, I update the man-page-check Makefile script so it
checks and enforces alphabetical order in OPTIONS sections.
Then -- the hard part -- update all existing man pages to
conform to this requirement.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-03-23 13:49:42 -06:00
OpenShift Merge Robot 7371306280
Merge pull request #13597 from Luap99/stats
podman stats: calc CPU percentage correctly
2022-03-23 20:37:25 +01:00
OpenShift Merge Robot 1092247173
Merge pull request #13617 from holzman/volume-mount-ipv4
Explicitly use IPv4 to check if podman-machine VM is listening
2022-03-23 20:27:31 +01:00
Daniel J Walsh 346beec35a
Remove nix packages, since no one is supporting this
[NO NEW TESTS NEEDED]

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-03-23 15:17:12 -04:00
Daniel J Walsh 5e28cbc5fc
When running systemd in a container set container_uuid
systemd expects the container_uuid environment variable be set
when it is running in a container.

Fixes: https://github.com/containers/podman/issues/13187

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-03-23 15:05:30 -04:00
OpenShift Merge Robot a1e2897e92
Merge pull request #13600 from mheon/exec_cleanup_race
Fix a potential race around the exec cleanup process
2022-03-23 19:38:31 +01:00
Paul Holzinger da58911306
fix podman machine start log level detection
Use logrus.IsLevelEnabled because this will cover all levels below it as
well. Currently this condition would fail for the trace log level.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-03-23 19:10:58 +01:00
Paul Holzinger 59dc70bb42
podman machine start: lookup qemu path again if not found
We store the full path to qemu in the machine config. When the path
changes on the host the machine can longer be started. To fix it we get
the path again when we fail to start the machine due the missing binary.

We want to store and use the full path first because otherwise existing
machines can break when the qemu version changed.

[NO NEW TESTS NEEDED] We still have no machine tests.

Fixes #13394

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-03-23 19:10:51 +01:00
Paul Holzinger 5669ffb354
document that using libpod package directly is not supported
We do not support using the libpod package outside of podman. There is
no stable interface which can be used. Instead point users to the API
and go bindings.

Fixes #13086

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-03-23 19:05:29 +01:00
Burt Holzman cdda1924a0 Explicitly use IPv4 to check if podman-machine VM is listening
When starting a VM that has been configured with volume mounts, the
podman client attempts to connect via TCP to localhost, which runs
gvproxy to proxy an ephemeral port to the VM's ssh port.  Previously,
gvproxy was listening on all interfaces and IP addresses, but this
behavior has changed to listening only on the IPv4 loopback address.

Without this change, if a newer build of gvproxy is used, a podman
machine configured with volume mounts will hang forever after "podman
machine start" with "Waiting for VM ...".

[NO NEW TESTS NEEDED]

Signed-off-by: Burt Holzman <burt@fnal.gov>
2022-03-23 12:48:17 -05:00
Jhon Honce a6504963b3 Fix manifest 4.0 endpoints
[NO NEW TESTS NEEDED]

* Branch forced 4.0 only endpoints, which broke bindings
* Fix lint error, in new code

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2022-03-23 10:19:36 -07:00
Matthew Heon 5b2597d523 Fix a potential race around the exec cleanup process
Every exec session run attached will, on exit, do two things: it
will signal the associated `podman exec` that it is finished (to
allow Podman to collect the exit code and exit), and spawn a
cleanup process to clean up the exec session (in case the `podman
exec` process died, we still need to clean up). If an exec
session is created that exits almost instantly, but generates a
large amount of output (e.g. prints thousands of lines), the
cleanup process can potentially execute before `podman exec` has
a chance to read the exit code, resulting in errors. Handle this
by detecting if the cleanup process has already removed the exec
session before handling the error from reading the exec exit
code.

[NO NEW TESTS NEEDED] I have no idea how to test this in CI.

Fixes #13227

Signed-off-by: Matthew Heon <mheon@redhat.com>
2022-03-23 09:33:40 -04:00
OpenShift Merge Robot f049cba47c
Merge pull request #13559 from cevich/success_artifacts
[CI:BUILD] Cirrus: Publish binary artifacts on success
2022-03-23 14:03:46 +01:00
OpenShift Merge Robot a8743d3327
Merge pull request #13588 from flouthoc/import-os-arch
import: allow users to set `--os`, `--arch` and `--variant` of image imports
2022-03-23 13:15:47 +01:00
Giuseppe Scrivano aafa80918a
do not set the inheritable capabilities
The kernel never sets the inheritable capabilities for a process, they
are only set by userspace.  Emulate the same behavior.

Closes: CVE-2022-27649

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2022-03-23 09:05:18 +01:00
Aditya R eedce31eb4
import: allow users to set os, arch and variant of imports
Allows users to set `--os` , `--arch` and `--variant` of the image
created from the custom import.

Following is useful when user is already aware of the values which are
correct for their generated rootfs

Signed-off-by: Aditya R <arajan@redhat.com>
2022-03-23 11:22:55 +05:30
OpenShift Merge Robot 9d8972e0ee
Merge pull request #13576 from containers/dependabot/go_modules/github.com/containers/ocicrypt-1.1.3
build(deps): bump github.com/containers/ocicrypt from 1.1.2 to 1.1.3
2022-03-23 01:37:14 +01:00
OpenShift Merge Robot ad123687d0
Merge pull request #13567 from n1hility/upgrades
Add Windows installer support for upgrades
2022-03-23 01:35:15 +01:00
OpenShift Merge Robot 3404da3afb
Merge pull request #13605 from jerrykan/docs
[CI:DOCS] docs: Fix links to Containerfile and containerignore
2022-03-23 01:31:14 +01:00