Files
Ed Santiago 46f31361f8 Man pages: refactor common options: --cidfile
There are two meanings: one writes a cidfile, the other reads.
Split into two .md files.

This can be reviewed with hack/markdown-preprocess-review .
The main differences you'll see are all in cidfile.read:

  1) I use the <<subcommand>> feature. This works nicely for
     kill, pause/unpause, and stop. It works less nicely for
     rm, because the man page will show "...and rm the container"
     (a human might prefer to see "REMOVE the container"). Given
     the benefit of this cleanup, I think this is a fine tradeoff.

  2) I choose to include the "multiple times" text even on man pages
     where it wasn't present before. I tested to make sure it works.

  3) The #### line I choose is IMHO the best one.

Minor differences:

  * I believe the "remove the container" text in podman-kill
    and podman-stop is a copy/paste error. This PR fixes it.

  * The only differences between the cidfile.write texts is
    the #### line (my version is best) and a final period.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2022-08-22 12:17:20 -06:00
..
2022-08-09 16:18:53 -06:00
2022-08-09 16:18:53 -06:00
2022-08-09 16:18:53 -06:00
2022-08-03 06:53:33 -06:00
2022-08-03 06:53:33 -06:00
2022-08-09 16:18:53 -06:00
2022-08-03 06:53:33 -06:00
2022-08-03 06:53:33 -06:00

Common Man Page Options

This subdirectory contains option (flag) names and descriptions common to multiple podman man pages. Each file is one option. The filename does not necessarily need to be identical to the option name: for instance, hostname.container.md and hostname.pod.md exist because the --hostname option is sufficiently different between podman-{create,run} and podman-pod-{create,run} to warrant living separately.

How

The files here are included in podman-*.md.in files using the @@option mechanism:

@@option foo           ! will include options/foo.md

The tool that does this is hack/markdown-preprocess. It is a python script because it needs to run on readthedocs.io. From a given .md.in file, this script will create a .md file that can then be read by go-md2man, sphinx, anything that groks markdown. This runs as part of make docs.

Special Substitutions

Some options are almost identical except for 'pod' vs 'container' differences. For those, use <<text for pods|text for containers>>. Order is immaterial: the important thing is the presence of the string "pod" in one half but not the other. The correct string will be chosen based on the filename: if the file contains -pod, such as podman-pod-create, the string with pod (case-insensitive) in it will be chosen.

The string <<subcommand>> will be replaced with the podman subcommand as determined from the filename, e.g., create for podman-create.1.md.in. This allows the shared use of examples in the option file:

    Example: podman <<subcommand>> --foo --bar

As a special case, podman-pod-X becomes just X (the "pod" is removed). This makes the pod-id-file man page more useful.