Commit Graph

12597 Commits

Author SHA1 Message Date
OpenShift Merge Robot fc2f9cc3e6
Merge pull request #10850 from baude/issue10824
Create podman temp dir on machine start
2021-07-02 20:10:04 -04:00
baude 0c9dc86dea Create podman temp dir on machine start
If the tempdir for the OS does not have a podman/, machine start will fail.  An example would be after a reboot.  We now create the podman dir if it does not exist.

Fixes #10824

[NO TESTS NEEDED]

Signed-off-by: baude <baude@baudes-Mac-mini.localdomain>
Signed-off-by: Brent Baude <bbaude@redhat.com>
2021-07-02 12:41:51 -05:00
OpenShift Merge Robot f93d60d018
Merge pull request #10842 from vrothberg/search-docs
[CI:DOCS] podman search: clarify that results depend on implementation
2021-07-02 13:09:04 -04:00
Paul Holzinger ed51e3f548
podman service reaper
Add a new service reaper package. Podman currently does not reap all
child processes. The slirp4netns and rootlesskit processes are not
reaped. The is not a problem for local podman since the podman process
dies before the other processes and then init will reap them for us.

However with podman system service it is possible that the podman
process is still alive after slirp died. In this case podman has to reap
it or the slirp process will be a zombie until the service is stopped.

The service reaper will listen in an extra goroutine on SIGCHLD. Once it
receives this signal it will try to reap all pids that were added with
`AddPID()`. While I would like to just reap all children this is not
possible because many parts of the code use `os/exec` with `cmd.Wait()`.
If we reap before `cmd.Wait()` things can break, so reaping everything
is not an option.

[NO TESTS NEEDED]

Fixes #9777

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2021-07-02 19:00:36 +02:00
Paul Holzinger 84da70a0f3
update shell completion scripts
The new cobra v1.2.0 release brings a number of bug fixes for shell
completion scripts. Regenerate the scripts with `make completions`
to sync them with the upstream version, currently we have some custom
ones to avoid some upstream bugs. Because the new cobra version has
all fixes we should use the upstream scripts.
Add a check to CI to ensure we always use the up to date scripts.

[NO TESTS NEEDED]

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2021-07-02 17:49:12 +02:00
Paul Holzinger 924cd37a37
Bump github.com/spf13/cobra to v1.2.1
Fixes #9730

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2021-07-02 17:36:30 +02:00
Paul Holzinger 8f6a0243f4
podman diff accept two images or containers
First, make podman diff accept optionally a second argument. This allows
the user to specify a second image/container to compare the first with.
If it is not set the parent layer will be used as before.

Second, podman container diff should only use containers and podman
image diff should only use images. Previously, podman container diff
would use the image when both an image and container with this name
exists.

To make this work two new parameters have been added to the api. If they
are not used the previous behaviour is used. The same applies to the
bindings.

Fixes #10649

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2021-07-02 17:11:56 +02:00
OpenShift Merge Robot 0420987356
Merge pull request #10844 from vrothberg/vendor-common
vendor containers/common@main
2021-07-02 08:33:02 -04:00
Valentin Rothberg 735be12481 force github.com/spf13/cobra@v1.1.3
v1.2.0 is breaking CI (see containers/podman/pull/10844).

Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2021-07-02 13:03:10 +02:00
Valentin Rothberg 7eb9ed9758 vendor containers/common@main
Pull in fixes for local image lookups.

Fixes: #10835
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2021-07-02 11:38:28 +02:00
Valentin Rothberg 8606ead912 [CI:DOCS] podman search: clarify that results depend on implementation
Clarify in the man page that podman-search is not generally realiable
way of determining the presence/existence of an image.  The results of
the v1 and the v2 endpoints depend on the implementation of each
registry; the semantics are not really specified.  Some registries may
not support search at all as it's not part of the OCI dist spec.

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1978556
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2021-07-02 11:14:01 +02:00
OpenShift Merge Robot 955c1d2bfe
Merge pull request #10804 from matejvasek/fix-cp-sub-cmd
Implement --archive flag for podman cp
2021-07-01 13:15:00 -04:00
OpenShift Merge Robot a855b30f81
Merge pull request #10837 from giuseppe/ignore-ESRCH
podman: ignore ESRCH from kill
2021-07-01 12:53:00 -04:00
Giuseppe Scrivano 493786fbae
podman: ignore ESRCH from kill
Closes: https://github.com/containers/podman/issues/10826

[NO TESTS NEEDED] Fixes a race condition

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2021-07-01 17:01:54 +02:00
Matej Vasek 86c6014145 Implement --archive flag for podman cp
Signed-off-by: Matej Vasek <mvasek@redhat.com>
2021-07-01 12:01:46 +02:00
OpenShift Merge Robot fd1715568b
Merge pull request #10816 from rhatdan/network
Handle advanced --network options in podman play kube
2021-06-30 17:13:28 -04:00
Daniel J Walsh 092902b455
Handle advanced --network options in podman play kube
Since Podman create/run can support this, so should play.

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

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2021-06-30 13:32:27 -04:00
OpenShift Merge Robot 61b7beaf8e
Merge pull request #10827 from cevich/master_to_main
Cirrus: Fixes due to master->main rename
2021-06-30 13:21:23 -04:00
Chris Evich 40ef17ac28
Cirrus: Fixes due to master->main rename
Signed-off-by: Chris Evich <cevich@redhat.com>
2021-06-30 11:39:19 -04:00
OpenShift Merge Robot 056f492f59
Merge pull request #10823 from vrothberg/vendor-common
vendor containers/common@7482cf851d
2021-06-30 10:57:21 -04:00
Valentin Rothberg 8b52204baa vendor containers/common@7482cf851d
Make sure that image events are written *after* execution.

Fixes: #10812
Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2021-06-30 13:08:42 +02:00
OpenShift Merge Robot 5ebd277aa8
Merge pull request #10749 from TomSweeneyRedHat/dev/tsweeney/cni2.2.1_doc
Add CNI rootless networking troubleshooting for v2.2.1
2021-06-30 05:34:22 -04:00
OpenShift Merge Robot 78a3605018
Merge pull request #10789 from flouthoc/system-reset-prune-external
reset: remove external containers on podman system reset
2021-06-30 05:33:21 -04:00
OpenShift Merge Robot 0d8d805a76
Merge pull request #10761 from containers/dependabot/go_modules/github.com/containers/storage-1.32.4
Bump github.com/containers/storage from 1.32.3 to 1.32.4
2021-06-30 05:30:22 -04:00
OpenShift Merge Robot 4dc87c2a3a
Merge pull request #10821 from jwhonce/wip/connection
Enhance system connection add URL input
2021-06-30 05:29:20 -04:00
flouthoc 2243b60203 reset: remove external containers on podman system reset
[NO TESTS NEEDED]

Signed-off-by: flouthoc <flouthoc.git@gmail.com>
2021-06-30 09:04:08 +05:30
Jhon Honce 2ce78aace6 Enhance system connection add URL input
* Add support for the tcp and unix schemes in connection URLs.

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2021-06-29 16:24:03 -07:00
OpenShift Merge Robot 1846070f05
Merge pull request #10819 from ashley-cui/connls
[NO TESTS NEEDED] Make system connection ls deterministic
2021-06-29 17:07:44 -04:00
TomSweeneyRedHat 6d37e03485 Add CNI rootless networking troubleshooting for v2.2.1
A CNI container image is required for rootless networking
in V2.2.1 (RHEL 8.3.1) and through v3.0.1.  Add a note in the
troubleshooting guide with a pointer to the documenation
for that.

Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com>
2021-06-29 16:54:12 -04:00
Daniel J Walsh 05f39af5bd
Bump github.com/containers/storage from 1.32.3 to 1.32.5
Bumps [github.com/containers/storage](https://github.com/containers/storage) from 1.32.3 to 1.32.5.
- [Release notes](https://github.com/containers/storage/releases)
- [Changelog](https://github.com/containers/storage/blob/main/docs/containers-storage-changes.md)
- [Commits](https://github.com/containers/storage/compare/v1.32.3...v1.32.5)

---
updated-dependencies:
- dependency-name: github.com/containers/storage
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2021-06-29 15:58:32 -04:00
Ashley Cui 3e8c0e00de Make system connection ls deterministic
Sort system connection ls by name, making the output deterministic. Previously, we were just iterating through a map, which caused CI flakes.

Signed-off-by: Ashley Cui <acui@redhat.com>
2021-06-29 14:57:11 -04:00
OpenShift Merge Robot 793063e086
Merge pull request #10811 from containers/dependabot/go_modules/github.com/containers/ocicrypt-1.1.2
Bump github.com/containers/ocicrypt from 1.1.1 to 1.1.2
2021-06-29 14:51:10 -04:00
OpenShift Merge Robot 599b7d746a
Merge pull request #10803 from lsm5/remove-cni-conflist
Makefile: remove install.cni
2021-06-29 10:40:08 -04:00
dependabot[bot] fb5f70296b
Bump github.com/containers/ocicrypt from 1.1.1 to 1.1.2
Bumps [github.com/containers/ocicrypt](https://github.com/containers/ocicrypt) from 1.1.1 to 1.1.2.
- [Release notes](https://github.com/containers/ocicrypt/releases)
- [Commits](https://github.com/containers/ocicrypt/compare/v1.1.1...v1.1.2)

---
updated-dependencies:
- dependency-name: github.com/containers/ocicrypt
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-29 12:30:56 +00:00
OpenShift Merge Robot c260cbd29d
Merge pull request #10786 from tobwen/tobwen-ETCDIR
[NO TEST NEEDED] prefix `ETCDIR` with `${PREFIX}/`
2021-06-28 15:00:40 -04:00
Lokesh Mandvekar 1edada477d Makefile: remove install.cni
We no longer need to install /etc/cni/net.d/87-podman-bridge.conflist
so install.cni isn't needed either.

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2021-06-28 14:52:23 -04:00
tobwen 3d0e08f04e prefix `ETCDIR` with `${PREFIX}/`
`ETCDIR` isn't prefixed and led to dangling files in `DESTDIR/etc`

Signed-off-by: Tobias Wendorff <1864057+tobwen@users.noreply.github.com>
2021-06-26 09:41:59 +00:00
OpenShift Merge Robot 0a0ade3cc0
Merge pull request #10736 from trusch/feature-use-secret-config
read secret config from config file if no user data.
2021-06-25 12:45:53 -04:00
OpenShift Merge Robot b476781701
Merge pull request #10774 from vrothberg/registries
remove `pkg/registries`
2021-06-25 08:20:38 -04:00
Valentin Rothberg f95b0995e5 remove `pkg/registries`
Pull the trigger on the `pkg/registries` package which acted as a proxy
for `c/image/pkg/sysregistriesv2`.  Callers should be using the packages
from c/image directly, if needed at all.

Also make use of libimage's SystemContext() method which returns a copy
of a system context, further reducing the risk of unintentionally
altering global data.

[NO TESTS NEEDED]

Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2021-06-25 09:56:21 +02:00
OpenShift Merge Robot 2d191968b5
Merge pull request #10416 from tych0/activation-drop-FDNAMES
pkg/systemd: don't require LISTEN_FDNAMES for socket activation
2021-06-25 03:27:44 -04:00
OpenShift Merge Robot 8c7ce94b81
Merge pull request #10768 from xabinapal/issue-10767
[NO TESTS NEEDED] Swap private and shared mount relabel options
2021-06-25 03:25:43 -04:00
Tino Rusch e7507fe7cf
make DriverOpts name consistent.
Signed-off-by: Tino Rusch <tino.rusch@gmail.com>
2021-06-25 08:33:15 +02:00
Xabier Napal a7a7011961
fix: swapped volume relabel option values
Signed-off-by: Xabier Napal <xabiernapal@pm.me>
2021-06-24 22:18:25 +02:00
OpenShift Merge Robot d1f57a07c2
Merge pull request #10771 from infiniteregrets/cli
[NO TESTS NEEDED]  Suggestions for typos/ incorrect commands for Podman CLI
2021-06-24 11:58:10 -04:00
Tycho Andersen 364e8a26da pkg/systemd: don't require LISTEN_FDNAMES for socket activation
LISTEN_FDNAMES is optional, the docs for sd_listen_fds() says:

    This information is read from the $LISTEN_FDNAMES variable, which
    **may** contain a colon-separated list of names.

emphasis mine (indeed, the cited coreos code also suggests it is optional).

This actually results in bug, since the default
/contrib/systemd/system/podman.socket file doesn't set a
FileDescriptorName=. podman when run with this systemd configuration
*always* starts in unix socket mode since SocketActivated() will return
false because the name is missing.

The bug is a race with a very small window: between when podman does the
unlink() and when it re-binds the socket later in the code, requests made
during this time will fail since nothing is listening. There's another
small race when the service stops and systemd realizes it and starts
listening again.

However, small this window we managed to hit it :).

Let's fix this by ignoring LISTEN_FDNAMES. Since the code in
cmd/podman/system/service_abi.go:restService() ignores this value anyway
when setting up the socket activated stuff, there's no real loss here.

Signed-off-by: Tycho Andersen <tycho@tycho.pizza>
2021-06-24 09:01:39 -06:00
OpenShift Merge Robot 21d80faa0b
Merge pull request #10760 from vrothberg/save-docs
[CI:DOCS] podman save: clarify formats and transports
2021-06-24 09:54:14 -04:00
OpenShift Merge Robot 8459592030
Merge pull request #10773 from vrothberg/mtrmac
[CI:DOCS] add @mtrmac to OWNERS
2021-06-24 09:53:11 -04:00
OpenShift Merge Robot f29f6aafa1
Merge pull request #10772 from vrothberg/fix-cp
cp: do not allow dir->file copying
2021-06-24 09:52:11 -04:00
Valentin Rothberg b39aacf329 add @mtrmac to OWNERS
With great power comes great `/lgtm`.

Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2021-06-24 14:04:15 +02:00