summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2021-02-01 20:45:15 -0500
committerGitHub <noreply@github.com>2021-02-01 20:45:15 -0500
commit52575db9b40ad141dc5521d7646e8ed636651b54 (patch)
treec10a47324a03ca838d9e89fdf02cabd3da7a3a3e
parent48a0e002d5303a36e35de1237e952de749c2b7ee (diff)
parentee8ee651d523bd853ce0075ebd2bc02a02c4ed95 (diff)
downloadpodman-52575db9b40ad141dc5521d7646e8ed636651b54.tar.gz
podman-52575db9b40ad141dc5521d7646e8ed636651b54.tar.bz2
podman-52575db9b40ad141dc5521d7646e8ed636651b54.zip
Merge pull request #9190 from edsantiago/make_completions
New 'make completions' target
-rw-r--r--Makefile12
-rw-r--r--completions/Readme.md2
2 files changed, 13 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index dfa36e3ef..a5e126176 100644
--- a/Makefile
+++ b/Makefile
@@ -639,6 +639,18 @@ install.libseccomp.sudo:
cd ../../seccomp/libseccomp && git checkout --detach $(LIBSECCOMP_COMMIT) && ./autogen.sh && ./configure --prefix=/usr && make all && make install
+.PHONY: completions
+completions: podman podman-remote
+ # key = shell, value = completion filename
+ declare -A outfiles=([bash]=%s [zsh]=_%s [fish]=%s.fish);\
+ for shell in $${!outfiles[*]}; do \
+ for remote in "" "-remote"; do \
+ podman="podman$$remote"; \
+ outfile=$$(printf "completions/$$shell/$${outfiles[$$shell]}" $$podman); \
+ ./bin/$$podman completion $$shell >| $$outfile; \
+ done;\
+ done
+
.PHONY: validate.completions
validate.completions: SHELL:=/usr/bin/env bash # Set shell to bash for this target
validate.completions:
diff --git a/completions/Readme.md b/completions/Readme.md
index 5c9d16f3c..132a38bbf 100644
--- a/completions/Readme.md
+++ b/completions/Readme.md
@@ -2,6 +2,6 @@
Podman offers shell completion scripts for bash, zsh and fish. The completion scripts are available for both `podman` and `podman-remote`.
-The shell completion scripts are generated by `make completion`, do not edit these files directly. To install them you can run `sudo make install.completions`.
+The shell completion scripts are generated by `make completions`; do not edit these files directly. To install them you can run `sudo make install.completions`.
For information about these scripts see [`man podman-completion`](../docs/source/markdown/podman-completion.1.md)