podman

Форк
0
/
xref-docker-options 
73 строки · 2.6 Кб
1
#!/bin/bash
2
#
3
# Compare against docker options, see what (if anything) podman is missing.
4
#
5

6
# Hardcoded list of options we don't want to show. Some of these are
7
# implemented in podman but hidden (so of course not in man pages);
8
# some are not implemented and never will be (swarm).
9
declare -a hidden=(
10
    "docker --config"                    # Hidden
11
    "docker --context"                   # Hidden
12
    "docker --debug"                     # Hidden
13
    "docker --host"                      # Hidden
14
    "docker -D"                          # Hidden
15
    "docker -H"                          # Hidden
16

17
    "docker .* --gpus"                   # Not likely to be implemented
18
    "docker .* --isolation"              # Only for Windows containers
19
    "docker .* --kernel-memory"          # CGroupsV1 only, present but hidden
20
    "docker .* --link"                   # Deprecated in docker
21
    "docker .* --runtime"                # Global option under podman
22
    "docker .* --storage-opt"            # Global option under podman
23

24
    "docker (container|image) ls"        # Hidden alias to list
25
    "docker context"                     # Hidden
26

27
    # Hidden
28
    "docker (container |)logs --details"
29
    "docker manifest (create|inspect|push) --insecure"
30
    "docker manifest inspect --verbose"
31
    "docker manifest push --purge"
32
    "docker run --dns-option"
33

34
    # None of these will ever be implemented
35
    "docker (node|plugin|service|stack|swarm)"
36
)
37
IFS='|' hidden_re="${hidden[*]}"
38

39
XREF_SCRIPT=hack/xref-helpmsgs-manpages
40
TMP_SCRIPT=${XREF_SCRIPT}-docker
41

42
cp $XREF_SCRIPT $TMP_SCRIPT
43

44
# docker --help differs from podman --help
45
DIFF="diff --git a/$TMP_SCRIPT b/hack/$TMP_SCRIPT
46
index de9ef8630..b9e4bd0ef 100755
47
--- a/$TMP_SCRIPT
48
+++ b/$TMP_SCRIPT
49
@@ -230,8 +230,8 @@ sub podman_help {
50
         #       ....
51
         #
52
         # Start by identifying the section we're in...
53
-        if (\$line =~ /^Available\\s+(Commands):/) {
54
-            \$section = lc \$1;
55
+        if (\$line =~ /^(Available|Management\\s+)?(Commands):/) {
56
+            \$section = lc \$2;
57
         }
58
         elsif (\$line =~ /^(Options):/) {
59
             \$section = lc \$1;
60
"
61

62
patch --quiet -p1 <<<"$DIFF"
63

64
# Sometimes this produces no output at all. Likely cause is that you
65
# have inconsistent .md files, solution is 'make docs'. If that doesn't
66
# work, remove the '2>&1 \' from the line below and rerun. I don't feel
67
# it's worth the time to improve the error handling here.
68
PODMAN=/usr/bin/docker $TMP_SCRIPT 2>&1 \
69
    | sed -ne 's/^.*podman \+\(.*\) --help. lists .\(.*\)., which is not.*/- [ ] docker \1 \2/p' \
70
    | sed -e 's/ \+/ /g' \
71
    | grep -vE "($hidden_re)\$"
72

73
rm -f $TMP_SCRIPT
74

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.