Commit Graph

1444 Commits

Author SHA1 Message Date
Alexander Larsson 098ad52ecb quadlet: Change default of ReadOnly to no
This matches the default podman run behaviour.

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-12-02 16:30:15 +01:00
Alexander Larsson 1c3fddfaf7 quadlet: Change RunInit default to no
This matches the default of podman run.

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-12-02 16:25:47 +01:00
Alexander Larsson d19ea6a60d quadlet: Change NoNewPrivileges default to false
This matches the default of podman run.

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-12-02 16:24:47 +01:00
OpenShift Merge Robot c00d8a27d9
Merge pull request #13909 from mheon/startup_probe
Add support for startup healthchecks
2022-11-30 15:23:15 -05:00
Matthew Heon d16129330d Add support for startup healthchecks
Startup healthchecks are similar to K8S startup probes, in that
they are a separate check from the regular healthcheck that runs
before it. If the startup healthcheck fails repeatedly, the
associated container is restarted.

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2022-11-28 13:30:29 -05:00
Matthew Heon 2df0d9da94 Add information on metrics to the `network create` docs
Add documentation on the new Netavark option, `metric`, used to
set default route preference for containers joined to multiple
networks.

[NO NEW TESTS NEEDED]

Signed-off-by: Matthew Heon <mheon@redhat.com>
2022-11-28 13:22:03 -05:00
OpenShift Merge Robot c1db4f85ae
Merge pull request #16329 from gupttaru/encryption-decryption-feature
Add encryption decryption feature
2022-11-28 06:33:59 -05:00
Ingo Becker ce7d4bbc75 Fix manpage emphasis
Signed-off-by: Ingo Becker <ingo@orgizm.net>
2022-11-25 12:19:06 +01:00
gupttaru 3bb9ed4f09 Adding encryption decryption feature
Signed-off-by: Tarun1 Gupta <gupttaru@deshaw.com>
2022-11-24 04:53:59 -05:00
Alexander Larsson 285d6c9ba0 quadlet: Rework uid/gid remapping
Quadlet was doing some custom handling of uid/gid remapping, originating
from pre --userns=auto support, including its own user for getting subuids
which kinda conflicts with the "container" user used for that.

This drops all the old support for id remapping in favour of a new set
of keys that more directly map to the podman run options.

We have essentially 3 modes now:

```
RemapUsers=manual
RemapUid=0:10000:10
RemapUid=10:20000:10
RemapGid=0:10000:10
RemapGid=10:20000:10
```

This maps to --uidmap and --gidmap options.

```
RemapUsers=auto
```

This maps to --userns=auto. But you can additionally specify RemapUid,
RemapGid and RemapUidSize which gets applied as options to the
--userns podman option.

```
RemapUsers=keep-id
```
This maps to --userns=keep-id and only works for user units.

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-11-21 18:02:19 +01:00
Erik Sjölund a1b32866cc Fix language. Mostly spelling a -> an
Signed-off-by: Erik Sjölund <erik.sjolund@gmail.com>
2022-11-20 19:41:06 +01:00
Daniel J Walsh fc07f9d4fc
Merge pull request #16546 from fj-tsubasa/pids-limit-man
[CI:DOCS] Modify man page of "--pids-limit" option to correct a default value.
2022-11-18 14:21:51 -05:00
OpenShift Merge Robot da6d57e13d
Merge pull request #14946 from shuaiyy/tcpclient_with_scok5proxy
podman-remote connect tcpURL with a 'CONTAINER_PROXY'
2022-11-18 11:50:08 +00:00
Tsubasa Watanabe ae8a5a8927 Modify man page of "--pids-limit" option to correct a default value.
Correct the documented default number of pids limit from 4096 to 2048.

Signed-off-by: Tsubasa Watanabe <w.tsubasa@fujitsu.com>
2022-11-18 10:48:18 +09:00
Daniel J Walsh f950b1511a
Update docs/source/markdown/podman-remote.1.md
Co-authored-by: Tom Sweeney <tsweeney@redhat.com>
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-11-17 19:45:11 -05:00
Daniel J Walsh b6850e772b
Add more documentation on UID/GID Mappings with --userns=keep-id
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-11-17 08:03:37 -05:00
shuai.yang 0d270ae380 support podman-remote to connect tcpURL with proxy
1. proxy value from env `CONTAINER_PROXY`
2. proxy socks5 && socks5h is supported
3. the proxy dial timeout is 3s

Signed-off-by: shuai.yang <shuai.yang@mihoyo.com>
2022-11-17 18:12:52 +08:00
OpenShift Merge Robot 7cd3baeb13
Merge pull request #16186 from ashley-cui/shh
Add --quiet and --no-info flags to podman machine start
2022-11-15 21:52:25 +00:00
OpenShift Merge Robot ee1c92108c
Merge pull request #16489 from Luap99/pasta-docs
[CI:DOCS] docs: deprecate pasta network name
2022-11-14 21:28:31 +00:00
Paul Holzinger dceaa7603f
docs: deprecate pasta network name
Since pasta is now considered a network mode using it as network name
causes a conflict. For now we will prefer the named network but in a
future major version bump we want to remove this and just use pasta(1).

The docs should reflect that this name is considered deprecated.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-11-14 16:14:47 +01:00
Ashley Cui dd98e3cc64 Add --quiet and --no-info flags to podman machine start
Add quiet and no-info flags to podman machine start.
No-info suppresses helpful informational tips
Quiet suppresses machine start progress output, as well as informational
tips.

Signed-off-by: Ashley Cui <acui@redhat.com>
2022-11-11 16:14:20 -05:00
Daniel J Walsh 836ca6c008
Add podman volume create -d short option for driver
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-11-11 14:43:07 -05:00
Daniel J Walsh bc77c034f8
Add podman system events alias to podman events
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-11-11 12:57:49 -05:00
OpenShift Merge Robot c46df21e7b
Merge pull request #16388 from edsantiago/docs_dedup_secopt
[CI:DOCS] Man pages: refactor common options: --security-opt
2022-11-11 15:46:26 +00:00
OpenShift Merge Robot aaa88f4554
Merge pull request #16141 from sbrivio-rh/pasta
Add pasta networking mode
2022-11-10 17:44:38 +00:00
Ygal Blum 1c8196a9ac kube play: update the handling of PersistentVolumeClaim
Up - do not fail if volume already exists, use the existing one
Down - allow the user to remove the volume by passing --force
Add tests
Update the documentation

Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
2022-11-08 11:08:50 +02:00
Stefano Brivio aa47e05ae4 libpod: Add pasta networking mode
Conceptually equivalent to networking by means of slirp4netns(1),
with a few practical differences:

- pasta(1) forks to background once networking is configured in the
  namespace and quits on its own once the namespace is deleted:
  file descriptor synchronisation and PID tracking are not needed

- port forwarding is configured via command line options at start-up,
  instead of an API socket: this is taken care of right away as we're
  about to start pasta

- there's no need for further selection of port forwarding modes:
  pasta behaves similarly to containers-rootlessport for local binds
  (splice() instead of read()/write() pairs, without L2-L4
  translation), and keeps the original source address for non-local
  connections like slirp4netns does

- IPv6 is not an experimental feature, and enabled by default. IPv6
  port forwarding is supported

- by default, addresses and routes are copied from the host, that is,
  container users will see the same IP address and routes as if they
  were in the init namespace context. The interface name is also
  sourced from the host upstream interface with the first default
  route in the routing table. This is also configurable as documented

- sandboxing and seccomp(2) policies cannot be disabled

- only rootless mode is supported.

See https://passt.top for more details about pasta.

Also add a link to the maintained build of pasta(1) manual as valid
in the man page cross-reference checks: that's where the man page
for the latest build actually is -- it's not on Github and it doesn't
match any existing pattern, so add it explicitly.

Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
2022-11-08 00:16:35 +01:00
OpenShift Merge Robot 013bd81417
Merge pull request #16394 from vrothberg/fix-16387
remove container/pod id file along with container/pod
2022-11-04 05:22:57 -04:00
OpenShift Merge Robot 0702b4cf4c
Merge pull request #15359 from rhatdan/manifest
Add --insecure flag to podman manifest inspect for Docker compatibility
2022-11-04 05:14:46 -04:00
Valentin Rothberg 3fee351c35 remove container/pod id file along with container/pod
Remove the container/pod ID file along with the container/pod.  It's
primarily used in the context of systemd and are not useful nor needed
once a container/pod has ceased to exist.

Fixes: #16387
Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2022-11-03 17:07:09 +01:00
OpenShift Merge Robot a1fe0cd662
Merge pull request #16374 from rhatdan/man
[CI:DOCS] Fix documentation on read-only-tmpfs
2022-11-03 08:02:16 -04:00
Daniel J Walsh 274d0f4956
Add --insecure,--tls-verify,--verbose flags to podman manifest inspect
--insecure and --verbose flags for docker compatibility

--tls-verify for syntax compatibility and allow users to inspect
manifests at remote Container Registiries without requiring tls.

Helps fix: https://github.com/containers/podman/issues/14917

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-11-03 08:00:15 -04:00
Ed Santiago f95ff4f460 Man pages: refactor common options: --security-opt
This was a horrible one. I basically went with the podman-run
version, with a few minor changes. See PR for discussion of
diff review.

podman-build is not included here, it is too different.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-11-02 13:44:36 -06:00
Urvashi Mohnani f6c74324bc Add podman kube apply command
Add the abilitiy to deploy the generated kube yaml to a
kubernetes cluster with the podman kube apply command.
Add support to directly apply containers, pods, or volumes
by passing in their names or ids to the command.
Use the kubernetes API endpoints and http requests to connect
to the cluster and deploy the various kubernetes object kinds.

Signed-off-by: Urvashi Mohnani <umohnani@redhat.com>
2022-11-01 15:30:17 -04:00
Daniel J Walsh 8e55abafde
Fix documentation on read-only-tmpfs
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-11-01 14:45:06 -04:00
Ed Santiago d76bf4cb5e man pages: assorted underscore fixes
Underscore is special in markdown. We usually escape them
properly, but these are a few that we missed. Found using:

   $ ack '[A-Z]\\fI[A-Z]' docs/build/man

(plus one that I found by accident).

If anyone has ideas on how to add a commit check for these,
please speak up. I'm at a complete loss to automate this.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-31 06:43:57 -06:00
Erik Sjölund b20ef9c348 [CI:DOCS] fix --tmpdir typos
Signed-off-by: Erik Sjölund <erik.sjolund@gmail.com>
2022-10-30 09:57:43 +01:00
OpenShift Merge Robot 26e5661c27
Merge pull request #15862 from edsantiago/docs_format_images
[CI:DOCS] man pages: document some --format options: images
2022-10-28 06:02:29 -04:00
OpenShift Merge Robot 47bcd10f61
Merge pull request #16243 from alexlarsson/volume-create-ignore
Add podman volume create --ignore
2022-10-26 15:00:51 -04:00
OpenShift Merge Robot ac8b401c48
Merge pull request #16237 from alexlarsson/quadlet-updates
Various quadlet updates
2022-10-26 04:05:40 -04:00
OpenShift Merge Robot 1c9c321d3c
Merge pull request #15979 from ygalblum/play_kube_volume_import
play kube: Allow the user to import the contents of a tar file into a volume
2022-10-25 10:05:45 -04:00
Ygal Blum 0ce234425a play kube: Allow the user to import the contents of a tar file into a volume
Add a new annotation to allow the user to point to a local tar file
If the annotation is present, import the file's content into the volume
Add a flag to PlayKubeOptions to note remote requests
Fail when trying to import volume content in remote requests
Add the annotation to the documentation
Add an E2E test to the new annotation

Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
2022-10-25 15:11:25 +03:00
Alexander Larsson bac907abf8 Clarify the docs on DropCapability
It was a bit unclear what setting it to empty means.

Also, add to the tests verification that this works.

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-10-25 13:10:18 +02:00
Alexander Larsson b07ba24419 quadlet: Support multiple Network=
This is supported by podman run with --network, so makes sense.

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-10-25 13:09:51 +02:00
Alexander Larsson 8716de2ac3 quadlet: Add support for Network=...
This just gets translated to --network=...

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-10-25 13:09:51 +02:00
Alexander Larsson 721922fa7e Fix manpage for podman run --network option
This just fixes the indentation which was previously breaking the
list such that the various network modes were just mixed into one large
paragraph instead of a list.

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-10-25 13:09:51 +02:00
Alexander Larsson 6042ca7fd0 quadlet: Add support for AddDevice=
This lets you add custom device nodes into the container

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-10-25 13:09:51 +02:00
Alexander Larsson f6f65f49db quadlet: Add support for setting seccomp profile
Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-10-25 13:09:48 +02:00
Alexander Larsson a9f0957c24 quadlet: Allow multiple elements on each Add/DropCaps line
You can still use multiple lines, but this is not necessary.

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-10-25 13:09:22 +02:00
Alexander Larsson 998f834b04 quadlet: Change ReadOnly to default to enabled
This makees much more sense for typical service loads, and can
easily be reverted by `ReadOnly=no`.

Also updates and adds various tests for this.

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-10-25 13:08:21 +02:00
OpenShift Merge Robot fdc8dac699
Merge pull request #16240 from edsantiago/preprocessor_xref
[CI:DOCS] markdown-preprocess: cross-reference where opts are used
2022-10-24 18:58:35 -04:00
OpenShift Merge Robot 51a9bc8205
Merge pull request #16191 from odra/fix-16180_ancestor-filter-regex
adding regex support to the ancestor ps filter function
2022-10-24 18:55:56 -04:00
OpenShift Merge Robot 63a8f9aeaa
Merge pull request #16234 from jakecorrenti/system-df-verbose-format-usability
Fix `system df` issues with `-f` and `-v`
2022-10-24 11:44:09 -04:00
Alexander Larsson 734c435e01 Add podman volume create --ignore
This ignores the create request if the named volume already exists.
It is very useful when scripting stuff.

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-10-24 17:30:31 +02:00
Valentin Rothberg 622638b72b docs: generate systemd: point to kube template
Point to the kube template in the notes of `--new`.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2022-10-24 10:14:34 +02:00
Valentin Rothberg c1de4d3ce2 docs: kube play: mention restart policy
Mention the default restart policy in the `kube play` docs.

Fixes: #16252
Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2022-10-24 10:08:55 +02:00
Leonardo Rossetti 6c7ae378c3
adding regex support to the ancestor ps filter function
Signed-off-by: Leonardo Rossetti <lrossett@redhat.com>
2022-10-21 08:33:51 -03:00
Jake Correnti e5032a8dea Fix `system df` issues with `-f` and `-v`
Fixed the issue of `--format` and `--verbose` flags being allowed in
combination with one another.

Implemented functionality for `--format json` or `--format '{{ json }}' `.

Implemented command-completion help for `--format`.

Fixes: #16204

Signed-off-by: Jake Correnti <jcorrenti13@gmail.com>
2022-10-20 23:12:09 -04:00
Ed Santiago c9c2f644da markdown-preprocess: cross-reference where opts are used
In each options/foo.md, keep a list of where the option is used.
This will be valuable to anyone making future edits, and to
those reviewing those edits.

This may be a controversial commit, because those crossref lists
are autogenerated as a side effect of the script that reads them.
It definitely violates POLA. And one day, some kind person will
reconcile (e.g.) --label, using it in more man pages, and maybe
forget to git-commit the rewritten file, and CI will fail.

I think this is a tough tradeoff, but worth doing. Without this,
it's much too easy for someone to change an option file in a way
that renders it inapplicable/misleading for some podman commands.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-20 10:57:51 -06:00
Alexander Larsson 34ee37b91e Add man page for quadlet
This adds the "podman-systemd.unit(5)" manpage that describes
the podman generators from a high level, and all the supported
options.

Signed-off-by: Alexander Larsson <alexl@redhat.com>
2022-10-19 10:30:31 +02:00
OpenShift Merge Robot 8fef5eb12c
Merge pull request #16170 from edsantiago/manpage_generic_include
[CI:DOCS] markdown-preprocess: add generic include mechanism
2022-10-17 09:53:06 -04:00
Ed Santiago bd4ee2d578 markdown-preprocess: add generic include mechanism
This is what was supposed to be an easy two-or-three-line
change to enable a more general-purpose include mechanism
than '@@option'; one that could include an arbitrary file.

This is commit 2 of 2, the "easy" part. Unfortunately, it's
not looking good. The source .md file has UTF8 checkmarks,
and nroff is not happy with those: the generated man pages
are gross.

Another problem: the source .md might need tweaking, because
we don't want a level 1 header in the man page. Obvious solution
is to make kubernetes_support.md a .md.in file as well, and
move the tables to a separate file (or files). Deferred for later.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-13 15:57:43 -06:00
Ed Santiago 8c76738571 Man pages: refactor common options (misc)
Accumulated cleanup from the man-page deduplication effort.
Various minor things that slipped.

 --publish-all : remove duplicate "default is false" (toth @dilyanpalauzov)

 --shm-size    : rephrase 'you' and 'y'all'

 --tls-verify  : make narrower, add asterisks to true/false,
                 and linkify containers-registries.conf

  --volume     : incorporate feedback from @mheon

  rename pid.md to pid.container.md, because there's a pid.pod.md
  for the --pid option used in pod-related man pages.

  ...and some whitespace, comma, other minor edits

Fixes: #15356

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-13 12:14:28 -06:00
Ed Santiago 617a2de3a4 Man pages: Refactor common options: --detach-keys
Refactored among all files that mentioned it.

DANGER WILL ROBINSON! REVIEW CAREFULLY! Here are two major
decisions I made:

  1) Look at the text for podman-run, in particular the "" text.
     It currently says "will use the default". As best I can
     tell this is not true, so I changed it to "will disable"
     which matches all the other commands.

  2) The "containers.conf" text, I decided, applies to all
     commands, not just podman-run (it was only present in
     podman-run). If this is not the case, please yell.

Other changes are cosmetic formatting stuff, asterisks end newlines.
Hard to review with hack/markdown-preprocess-review, because all
the text is one horrible long line instead of 80-char breaks.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-13 10:42:50 -06:00
Ed Santiago a584bb4e74 Man pages: refactor common options: --attach
Only between podman-create and -run; podman-start was too
different. (But please look into it, maybe there's a way
to reconcile the diffs).

Very minor formatting changes made to reconcile the two.
Easy to review using hack/markdown-preprocess-review

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-13 08:35:48 -06:00
OpenShift Merge Robot 687b5a2298
Merge pull request #16134 from edsantiago/docs_dedup_annotation
[CI:DOCS] Man pages: refactor common options: --annotation (manifest)
2022-10-13 10:34:45 -04:00
Daniel J Walsh 8356621249
Merge pull request #16125 from containers/dependabot/go_modules/github.com/spf13/cobra-1.6.0
build(deps): bump github.com/spf13/cobra from 1.5.0 to 1.6.0
2022-10-12 16:13:56 -04:00
Paul Holzinger 5da54e1834
docs: add missing options
The new cobra update fixed a bug which caused some options to not be
included in --help when there was already a option with the same name
on a parent command.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-10-12 17:00:27 +02:00
Ed Santiago 57ddeffd0f Man pages: refactor common options: --annotation (manifest)
[Note: I already refactored --annotation for container-related
 commands; this one is for manifest-related commands]

This one needed reconciling: one man page said "newly added image",
the other said "specified image", I just reduced that to "image".
If that's not cool, any suggestions on how to make it better? Or,
just reject this PR, we can live with this duplication.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-12 08:54:04 -06:00
OpenShift Merge Robot 6e6280d233
Merge pull request #16071 from edsantiago/docs_dedup_os_version
[CI:DOCS] Man pages: refactor common options: --os-version
2022-10-12 10:39:52 -04:00
OpenShift Merge Robot 695a848968
Merge pull request #16078 from rhatdan/main
Revert "cmd/podman: add support for checkpoint images"
2022-10-12 10:12:41 -04:00
Daniel J Walsh b47b48fd03
Revert "Add checkpoint image tests"
This reverts commit bbe1063a5a.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-10-11 10:04:55 -04:00
Naoaki Ueda d4052c1aa9
Man pages: Add mention of behavior due to XDG_CONFIG_HOME
When the `XDG_CONFIG_HOME` environment variable is changed, for example,
to switch development contexts, the behavior of the podman-machine can
be confusing. The documentation had not mentioned this, and this commit
adds these mentions.

Closes: https://github.com/containers/podman/issues/15577

Reviewed-by: Daniel J Walsh <dwalsh@redhat.com>
Signed-off-by: Naoaki Ueda <nao@uedder.com>
2022-10-10 22:24:09 +09:00
Ed Santiago f8b659d095 Man pages: refactor common options: --os-version
Only between the two podman-manifest-* commands. podman-build
is too different.

Easy one, text was already identical

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-06 08:37:48 -06:00
Ed Santiago 51c3578415 Man pages: refactor common options: --time
Only in container/pod stop/rm/restart man pages; the others
(volume-rm, network-rm, system-service) are too different to refactor.

Mostly an easy one, no manual reconciliation needed apart from
the pod-vs-container difference.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-05 09:59:01 -06:00
OpenShift Merge Robot cc609e52bd
Merge pull request #16055 from edsantiago/docs_dedup_pod
[CI:DOCS] Man pages: refactor common options: --pod
2022-10-05 16:13:48 +02:00
OpenShift Merge Robot ab2f3cf54d
Merge pull request #16029 from andrei-n-cosma/kube-default-network
Add pods created by play kube to a default network
2022-10-05 16:08:37 +02:00
Ed Santiago 0e4eeb52ec man pages: document some --format options: images
Baby steps toward merging #14046: document Go format options
for podman images.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-05 08:05:25 -06:00
Ed Santiago 3451aac35e Man pages: refactor common options: --pod
Only between podman-create and -run; the other meanings
of --pod are too different. This almost didn't feel worth
refactoring, except the podman-run version fixed a word
and added a possibly important note about infra containers.
I went with the podman-run version.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-05 04:27:47 -06:00
Andrei Natanael Cosma f250560a80
Add pods created by kube play to a default network
In order to allow pods to reach other pods (as in Kubernetes) they all
need to be added to the same network. A network is created (if it
doesn't exist) and pods created by play-kube are added to that network.
When network options are passed to kube command the pods are not
attached to the default kube network.

Signed-off-by: Andrei Natanael Cosma <andrei@intersect.ro>
2022-10-04 21:59:57 +02:00
Ed Santiago 26468c2274 Man pages: refactor common options: --features
Easy one: text was already identical between both files.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-04 11:14:53 -06:00
Ed Santiago eaa3892623 Man pages: refactor common options: --variant
Two different texts, split into two .md files. Nontrivial, but
still easy to review because the text is unchanged.

I was unable to reconcile either version with podman-build,
so that file remains with a separate version.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-03 05:07:45 -06:00
Ed Santiago 9bafd9c462 Man pages: refactor common options: --compression-format
Easy one: text was already identical across both files.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-10-02 11:18:54 -06:00
OpenShift Merge Robot 304dfe80fe
Merge pull request #15999 from edsantiago/docs_dedup_sign-passphrase-file
[CI:DOCS] Man pages: Refactor common options: --sign-passphrase-file
2022-09-30 17:13:51 +02:00
OpenShift Merge Robot 0513349355
Merge pull request #15998 from Luap99/play-kube-hostnet
podman kube play allow --network host
2022-09-29 20:26:03 +02:00
Ed Santiago e7328cb97c
Man pages: refactor common options: --network
Tricky one. In particular: podman-kube-play did not enumerate
the "host" option; here I take the liberty of using it in the
common network.md, so it will appear in podman-kube-play.1.
If that is wrong, please tell me ASAP: I will need to un-refactor
podman-kube-play.

Other decisions:
 * move the "invalid if" text to the bottom, because it can't
   be shared between pod and container man pages.
 * ditto for "together with --pod"
 * kube-play said "Change the network mode of"; all the others
   said ">SET< the network mode >FOR< ...". I chose the latter,
   so that's what kube-play will have also. Again, if that's
   wrong, please lmk.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-29 18:08:19 +02:00
Ed Santiago e4c0c8994a Man pages: Refactor common options: --sign-passphrase-file
Trivial one: no human intervention needed, the man page text
was already identical between both files.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-29 09:37:51 -06:00
Ed Santiago 309f4fb543 Man pages: refactor common options: --log-opt
Simple in reality, but hard to review due to lots of little diffs:

 - "Logging driver specific options" was only in podman-run; I added it
   to create and kube-play.
 - whitespace changes, the 'e.g.'s got consistent 4-space indentation
 - the "same keys" and "supported only" sentences, I moved up to be
   closer to **tag** and without intervening whitespace, because they
   were unclear as they were: I believe the intent is to apply those
   sentences only to **tag**, not to the **--log-opt** option itself.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-29 08:44:00 -06:00
Daniel J Walsh c1ae7f1934
Add SELinux information about boolean for using random devices
Fixes: https://github.com/containers/podman/issues/15930

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-09-26 15:07:17 -04:00
Ed Santiago f6724116ab Man pages: refactor common options: --env-file
Another easy one. Option is only present in these three man pages.

I took the liberty of changing the "See note" text, making it
the same as --env. I also took the liberty of hyphenating
"line-delimited" because that's the correct thing to do.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-26 09:17:55 -06:00
Ed Santiago fa18d35e89 Man pages: refactor common options: --env
Only among podman create, exec, run. The same option in
podman build, generate-systemd, and secret-create is too
different.

Should be a trivial one to review, the only difference is
a period at the end of one sentence. And, of course, the
"See Environment note" applies only to podman-create and
run, not exec, so it can't be deduplicated.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-26 08:27:54 -06:00
OpenShift Merge Robot a399e58cfb
Merge pull request #15936 from edsantiago/docs_dedup_sigproxy
[CI:DOCS] Man pages: Refactor common options: --sig-proxy
2022-09-26 16:27:21 +02:00
Ed Santiago 911ceb823a Man pages: Refactor common options: --sig-proxy
Unusually, I discarded the podman-run version and went with
the one common to attach and start. (The defaults are left
out of the common file, because 'start' is different by
necessity). Please review extra-carefully to make sure
the new wording applies to podman-run, in particular
the "non-TTY mode" words.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-26 07:25:10 -06:00
Ed Santiago fde4d21be5 man page xref: verify page title
Issue #15923 should have never happened: the problem should've
been autodetected. Make it so henceforth (and fix another
existing discrepancy)

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-26 06:19:15 -06:00
Erik Sjölund 337f1f5869 [CI:DOCS] man pages: fix incorrect title
Fixes: https://github.com/containers/podman/issues/15923

Signed-off-by: Erik Sjölund <erik.sjolund@gmail.com>
2022-09-24 08:33:14 +02:00
OpenShift Merge Robot 40e8bcb848
Merge pull request #15900 from rhatdan/VENDOR
Update vendor of containers(image, common, buildah, storage)
2022-09-23 22:00:37 +02:00
OpenShift Merge Robot 4d475ae87b
Merge pull request #15873 from ashley-cui/prettysecrets
Add --pretty to podman secret inspect
2022-09-23 20:57:51 +02:00
Ed Santiago f5e83f6849
Fixup Buildah merge
Changes since 2022-09-09:
 - man page: add --skip-unused-stages (buildah 4249)
 - man page: bring in new Note for --cache-ttl (4248)
 - system tests: de-stutter (4205)

 - (internal): in skip() applier: escape asterisk, otherwise
   the "bud with --dns* flags" sed expression never applies.

Signed-off-by: Ed Santiago <santiago@redhat.com>
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-09-23 14:13:12 -04:00
Ashley Cui dc05d1212c Add --pretty to podman secret inspect
Pretty-print podman secret inspect output in a human-readable format

Signed-off-by: Ashley Cui <acui@redhat.com>
2022-09-22 14:07:11 -04:00
Matthew Heon fc6dcd12b3 Add support for 'image' volume driver
We added the concept of image volumes in 2.2.0, to support
inspecting an image from within a container. However, this is a
strictly read-only mount, with no modification allowed.

By contrast, the new `image` volume driver creates a c/storage
container as its underlying storage, so we have a read/write
layer. This, in and of itself, is not especially interesting, but
what it will enable in the future is. If we add a new command to
allow these image volumes to be committed, we can now distribute
volumes - and changes to them - via a standard OCI image registry
(which is rather new and quite exciting).

Future work in this area:
- Add support for `podman volume push` (commit volume changes and
  push resulting image to OCI registry).
- Add support for `podman volume pull` (currently, we require
  that the image a volume is created from be already pulled; it
  would be simpler if we had a dedicated command that did the
  pull and made a volume from it)
- Add support for scratch images (make an empty image on demand
  to use as the base of the volume)
- Add UOR support to `podman volume push` and
  `podman volume pull` to enable both with non-image volume
  drivers

Signed-off-by: Matthew Heon <matthew.heon@pm.me>
2022-09-22 13:07:40 -04:00
OpenShift Merge Robot a4399ef813
Merge pull request #15837 from rhatdan/format
Improve generate systemd format
2022-09-21 15:08:36 +02:00
OpenShift Merge Robot ffa73c58a5
Merge pull request #15842 from ashley-cui/seclabels
Add labels to secrets
2022-09-21 13:15:28 +02:00
Daniel J Walsh fb3d55006f
Improve generate systemd format
Fixes: https://github.com/containers/podman/issues/14897

Followup to #13814

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-09-21 05:10:55 -04:00
Ashley Cui 9bb51e8e96 Add labels to secrets
Add --label/-l label flag to secret create, and show labels when
inspecting secrets. Also allow labeling secrets via libpod/compat API.

Signed-off-by: Ashley Cui <acui@redhat.com>
2022-09-20 16:28:00 -04:00
OpenShift Merge Robot 30231d0da7
Merge pull request #15859 from edsantiago/docs_format_events
[CI:DOCS] man pages: document some --format options
2022-09-19 20:03:27 +02:00
OpenShift Merge Robot 5f5d40084c
Merge pull request #15072 from rhatdan/context
Add support for podman context as alias to podman system connection
2022-09-19 17:35:43 +02:00
Ed Santiago 6790deb1b1 man pages: document some --format options
Baby steps toward merging #14046: document Go format options
for podman events.

This is deliberately imperfect. I am not the right person
to document these. I am simply the person who is getting
a skeleton framework in place.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-19 08:34:38 -06:00
OpenShift Merge Robot a9a1345cb0
Merge pull request #15823 from rhatdan/dns-opt
Default to --dns-option to match Docker and Buildah
2022-09-16 17:24:34 +02:00
OpenShift Merge Robot 924079f8a1
Merge pull request #15755 from edsantiago/docs_for_formats
[CI:DOCS] man pages: document some --format options
2022-09-16 16:20:40 +02:00
Daniel J Walsh 21841dc381
Default to --dns-option to match Docker and Buildah
[NO NEW TESTS NEEDED] Existing tests cover this.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-09-16 06:14:35 -04:00
Ed Santiago 62d1c487d9 Man pages: Refactor common options: --dns
Only between podman-build, create, and run. podman-pod-create
is too different.

As usual I went with the podman-run version. This means
keeping the word "flag" (which should be "option"), for
ease of review. I will fix in my in-progress cleanup PR.

For podman-build, I removed "during the build" and changed
it to a note for that man page only.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-15 10:12:34 -06:00
Ed Santiago 7d1f688ff9 [CI:DOCS] man pages: document some --format options
Baby steps toward merging #14046: document a few of the Go format
command-line options.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-15 09:59:32 -06:00
Daniel J Walsh 3508bd22fe
Add support for podman context as alias to podman system connection
Alias
podman --context -> podman --connection
podman context use -> podman system connection default
podman context rm -> podman system connection rm
podman context create -> podman system connection add
podman context ls ->podman system connection ls
podman context inspect ->podman system connection ls --json (For
specified connections)

Podman context is a hidden command, but can be used for existing scripts
that assume Docker under the covers.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2022-09-15 08:17:15 -04:00
Ed Santiago 9ba034293d Man pages: refactor common options: 2 stats opts
--no-reset and --no-stream, in podman-stats and pod-stats.

Very minor tweak to --no-stream to account for pods.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-15 05:17:25 -06:00
Ed Santiago 3f8591c2fc Man pages: refactor common options: --shm-size
Mostly went with the podman-run version. For ease of review, I
kept the "you" word -- I will fix that in my in-progress
cleanup PR.

This affects lots of files, each of which had slightly different
wording, but this actually isn't as bad as it looks. The diffs
were minor, and I'm pretty sure the new refactored text applies
equally well to all the man pages.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-14 14:31:32 -06:00
Ed Santiago f76390d5e6 Man pages: refactor common options: --user
In podman-create, exec, and run. Went with the podman-run version.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-14 12:32:30 -06:00
Ed Santiago b6c75a3cc5 Man pages: refactor common options: --preserve-fds, -it
Three simple options shared among podman-create, exec, run.

I mostly went with the podman-run versions. For --tty, this
means that create and exec get the long stdout/stderr note.
(The example, though, remains only in podman-run). For -i,
mostly boldspace changes.

For --preserve-fds, podman-exec now has the "not with remote"
note (which it didn't until now)

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-14 08:15:46 -06:00
OpenShift Merge Robot e1b3d9811a
Merge pull request #15795 from edsantiago/docs_dedup_ip6
[CI:DOCS] Man pages: refactor common options: --ip6
2022-09-14 16:09:51 +02:00
Ed Santiago 4df460836c Man pages: refactor common options: --ip6
Similar to yesterday's --ip. No changes to content, all I did
was variableize the instances of 'container'/'pod'.

Did not touch podman-network-connect file, but if someone
wants to look at that one and tell me whether all this long
text is applicable to it (or not), I'd appreciate it.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-14 05:46:14 -06:00
Paul Holzinger 47fff4b007
improve slirp4netns allow_host_loopback docs
The default ip is 10.0.2.2 but is always the second ip from the
slirp4netns subnet, which can be changed via the cidr option.

Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2090166

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-09-14 10:55:02 +02:00
Ed Santiago 76eb06330f Man pages: refactor common options: --tls-verify
Ugh. This had about five different variations among twelve files.
I went with the version from podman-create, kube play, login, pull,
push, run. The others:

 - manifest-add and create did not include the "true, false, missing"
   text. Now they do. (If this text is N/A to these two, please yell).
   Also, these two were written with "talking" instead of "contacting"
   the registry.

 - podman-build had "does not work with remote", but this
   does not seem to be true, so I removed it. None of the
   other files had that.

 - the wording in podman-search is just weird, with "if needed"
   and "is listed" and unclear "insecure registries". I just
   nuked it all. If that wording was deliberate, for some reason
   that applies only to podman-search, please yell.

 - podman-container-runlabel has one diff that I like, actually
   spelling out containers-registries.conf(5), but incorporating
   that would make this even harder to review. I will add that
   to my in-progress doc-cleanup PR.

Review recommendation: run hack/markdown-preprocess-review but
just quit out of it immediately (on both popups). Ignore it completely.
Then cd /tmp/markdown-preprocess-review.diffs/tls-verify and run

    $ clear;for i in podman-*;do echo;echo $i;wdiff -t $i zzz-chosen.md;done

This will show the major diffs between each version and the chosen one.
Assumes you have wdiff installed. If you have another colorize-actual-
individual-word-diffs tool installed, use that. I like cdif[1].

 [1] https://github.com/kaz-utashiro/sdif-tools

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-13 11:15:23 -06:00
Ed Santiago d4a0003122 Man pages: Refactor common options: --publish
Almost identical between podman-create, run, and pod-create.
The "Notes" are different, so I left those duplicated between
podman-create and run, and left the different one in pod-create.

podman-container-restore also has --publish but it's unrelated.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-13 09:02:34 -06:00
Ed Santiago dacd594247 Man pages: refactor common options: --publish-all
Only shared between podman-create and run. The latter was
updated in #5192, and that is the text I chose.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-13 07:51:39 -06:00
Ed Santiago 74e0511c96 Man pages: refactor common options: --os (pull)
Only shared by podman-create, -pull, -run. No changes
made other than whitespace, so this should be a gimme.

podman-build, import, and manifest-* also have --os options,
but those are unrelated and I can't find a way to combine
any two of them.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-13 06:35:15 -06:00
Ed Santiago f30d4852ef Man pages: refactor common options: --ip
Between podman-create, run, and pod-create. The big difference
is that I changed 'IP' to 'IPv4' in podman-pod-create, I believe
that was an oversight in #12611.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-13 05:14:25 -06:00
OpenShift Merge Robot c0dd0d696e
Merge pull request #15766 from vrothberg/fix-15284
generate systemd: warn on --restart without --new
2022-09-13 13:00:23 +02:00
Valentin Rothberg 0ea5080c91 generate systemd: warn on --restart without --new
Emit a warning to the user when generating a unit with --new on a
container that was created with a custom --restart policy. As shown
in #15284, a custom --restart policy in that case can lead to issues
on system shutdown where systemd attempts to nuke the unit but Podman
keeps on restarting the container.

Fixes: #15284
Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2022-09-13 10:59:57 +02:00
Ed Santiago 09ba2e0b9e Man pages: refactor common options: --rootfs
podman-create and -run only. The SELinux text was added
to podman-run (but not -create) in #3631, and reformatted
in #5192. I assume here that it also applies to podman-create.

Per feedback from Dan, added :s0 to SELinux context

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-12 17:56:57 -06:00
OpenShift Merge Robot 6e545945a5
Merge pull request #15717 from Luap99/events
fix several podman events issues
2022-09-12 19:55:15 +02:00
OpenShift Merge Robot 8432ed7488
Merge pull request #15751 from edsantiago/docs_dedup_volumes_from
[CI:DOCS] Man pages: refactor common options: --volumes-from
2022-09-12 19:48:49 +02:00
Paul Holzinger 12a1483e7f
Improve --tmpdir and --events-backend docs
List the default paths to the event log file and the tmpdir option.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-09-12 18:05:17 +02:00
Ed Santiago 43da39d317 Man pages: refactor common options: --volumes-from
Removed a spurious right-bracket; went with upper-case for options;
removed 'you's; added some <<container|pod>>s.

Hard to review because none of the existing man pages had it
quite right.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-12 06:59:19 -06:00
Valentin Rothberg 050ae61817 [CI:DOCS] --volume: consistent wording
Make sure that the wording of mounting something _from_ the source
_into_ the destination is consistent.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2022-09-12 10:04:29 +02:00
Ed Santiago 3a9a7dcdcd Man pages: refactor common options: --volume
This one is a nightmare, because --volume has been edited
in four different files throughout the years (five if you
count podman-build, which I am not including in this PR).
Those edits have not always been done in sync.

The list of options was reordered 2022-06-28 by Giuseppe in #14734,
but only in podman-create and -run (not in podman-pod-*). No
explanation of why, but I'll assume he knew what he was doing,
and have accepted that for the reference copy.

There was also a big edit in #8519.

The "Propagation property...bind mounted" sentence first appeared
in pod-clone, in #14299 by cdoern, with no obvious source of where
it came from. I choose to include it in the reference copy.

The "**copy**" option seems to work in pod-create, so I'm including
it in the reference copy. Someone please yell loudly if this is
not the case.

The "disables SELinux separation for containers used in the build",
no idea, changed that to just "for the container/pod"

The "advanced users / overlay / upperdir / workdir" paragraph
makes zero sense to me, but hey, I assume it applies to all
the commands, so I put it in the reference copy.

Finally, there's still a mishmash of backticks, asterisks, underscores,
and even quotation marks. Someone is gonna have to perform major
cleanup on this one day, but at least it'll be in only one place.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-09 08:20:31 -06:00
OpenShift Merge Robot 7e7db23dbf
Merge pull request #15687 from vrothberg/RUN-1639
health check: add on-failure actions
2022-09-09 15:17:19 +02:00
Valentin Rothberg aad29e759c health check: add on-failure actions
For systems that have extreme robustness requirements (edge devices,
particularly those in difficult to access environments), it is important
that applications continue running in all circumstances. When the
application fails, Podman must restart it automatically to provide this
robustness. Otherwise, these devices may require customer IT to
physically gain access to restart, which can be prohibitively difficult.

Add a new `--on-failure` flag that supports four actions:

- **none**: Take no action.

- **kill**: Kill the container.

- **restart**: Restart the container.  Do not combine the `restart`
               action with the `--restart` flag.  When running inside of
               a systemd unit, consider using the `kill` or `stop`
               action instead to make use of systemd's restart policy.

- **stop**: Stop the container.

To remain backwards compatible, **none** is the default action.

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2022-09-09 13:02:05 +02:00
Ed Santiago 8e1aa7af3a
Fixes for vendoring Buildah
This commit was automatically cherry-picked
by buildah-vendor-treadmill v0.3
from the buildah vendor treadmill PR, #13808

Changes since 2022-08-16:

 - buildah 4139: minor line-number changes to the diff
   file because helpers.bash got edited

 - buildah 4190: skip the new test if remote

 - buildah 4195: add --retry / --retry-delay

 - changes to deal with vendoring gomega, units

 - changes to the podman login error message in system test

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2022-09-09 11:59:27 +02:00
Ed Santiago 3f0b5cd40c Man pages: refactor common options: --userns (pod)
Another easy one. Difference is that pod-create was fixed
in #14532 (s/ignore/not allowed/) but pod-clone was not.
I went with the fixed version.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-07 07:31:10 -06:00
Ed Santiago 4fbc4b8f79 Man pages: refactor common options: --privileged
An easy one. Went with the version from podman-run.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-07 06:41:44 -06:00
OpenShift Merge Robot 7946628734
Merge pull request #15653 from edsantiago/docs_dedup_sysctl
[CI:DOCS] Man pages: refactor common options: --sysctl
2022-09-07 14:36:56 +02:00
OpenShift Merge Robot 6254d38720
Merge pull request #15634 from bbalp/update-system-reset-warning-message
Update system reset warning message regarding deletion of volumes
2022-09-07 12:04:12 +02:00
OpenShift Merge Robot db5ec4dcdc
Merge pull request #15547 from vrothberg/RUN-1606
Support auto updates for Kubernetes workloads
2022-09-06 21:38:54 +02:00
OpenShift Merge Robot 2f555c0c74
Merge pull request #15621 from ventifus/fix-manpage-header
[CI:DOCS] Fix manpage header formatting
2022-09-06 19:26:53 +02:00
Andrew Denton 63c779a857 Fix manpage headers
Signed-off-by: Andrew Denton <adenton@redhat.com>
2022-09-06 09:37:13 -07:00
Ed Santiago 4675103c22 Man pages: refactor common options: --sysctl
As promised, harder and harder to review. Please take your time
with this one.

For IPC, I went with the list form. For net, I used the single-
sentence form instead of a one-element list.

The container/pod diffs are clumsy, sorry. Maybe it's time to
start thinking of a more flexible conditional mechanism, but
I'd really like to avoid that so I hope this is acceptable.

In the first sentence I went with 'namespaced' (final 'd') in
all instances. I also got rid of the 'new' in 'new pod' in
pod-clone.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-06 09:59:14 -06:00
Ed Santiago 40cd1c0ff5 Man pages: refactor common options: --device
The refactors are starting to get harder to review - sorry.

Here the differences are pretty small, mostly changes to the
"it is a combination" wording and some asteriskization.

The more significant diffs are that there are some Notes that
are pod- or container- or build-specific; I needed to move those
from the middle to the end, then keep them in the source files
themselves. I don't think this affects readability of the
resulting man pages, but your opinion may differ.

Last important thing: I included the /dev/fuse text in the
common option, which means it will now show up in podman-build
(it was not previously there). If this text is not applicable
to podman-build, please LMK ASAP so I can just move it back
to individual source files.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-09-06 08:20:32 -06:00
Barnabé BALP 4462305fe8
Update the displayed warning in documentation regarding the system reset
[NO NEW TESTS NEEDED]

Signed-off-by: Barnabé BALP <contact@barnabebalp.fr>
2022-09-06 16:04:51 +02:00
OpenShift Merge Robot 4e06aa3771
Merge pull request #15584 from sstosh/generate-systemd-env
Add generate systemd -e/--env option
2022-09-06 15:40:55 +02:00
Toshiki Sonoda a9a411f8a8 Add generate systemd -e/--env option
-e/--env option sets environment variables to the systemd unit files.

Fixes: #15523

Signed-off-by: Toshiki Sonoda <sonoda.toshiki@fujitsu.com>
2022-09-06 20:17:11 +09:00
Valentin Rothberg 274d34a25a kube play: support auto updates and rollbacks
Add auto-update support to `podman kube play`.  Auto-update policies can
be configured for:
 * the entire pod via the `io.containers.autoupdate` annotation
 * a specific container via the `io.containers.autoupdate/$name` annotation

To make use of rollbacks, the `io.containers.sdnotify` policy should be
set to `container` such that the workload running _inside_ the container
can send the READY message via the NOTIFY_SOCKET once ready.  For
further details on auto updates and rollbacks, please refer to the
specific article [1].

Since auto updates and rollbacks bases on Podman's systemd integration,
the k8s YAML must be executed in the `podman-kube@` systemd template.
For further details on how to run k8s YAML in systemd via Podman, please
refer to the specific article [2].

An examplary k8s YAML may look as follows:
```YAML
apiVersion: v1
kind: Pod
metadata:
  annotations:
      io.containers.autoupdate: "local"
      io.containers.autoupdate/b: "registry"
  labels:
    app: test
  name: test_pod
spec:
  containers:
  - command:
    - top
    image: alpine
    name: a
  - command:
    - top
    image: alpine
    name: b
```

[1] https://www.redhat.com/sysadmin/podman-auto-updates-rollbacks
[2] https://www.redhat.com/sysadmin/kubernetes-workloads-podman-systemd

Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
2022-09-06 08:56:55 +02:00