mirror of
https://github.com/docker/cli.git
synced 2026-09-27 09:46:01 -04:00
While the "-modfile=vendor.mod" is slightly more correct, using a symlink allows for most of the go tools to work "as usual", just without an acual `go.mod` being committed in the repository. Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
39 lines
801 B
Bash
Executable File
39 lines
801 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -eu
|
|
|
|
: "${GO_MD2MAN:=go-md2man}"
|
|
|
|
if ! command -v "$GO_MD2MAN" > /dev/null; then
|
|
(
|
|
set -x
|
|
# note: this installs all tools defined in go.mod/vendor.mod
|
|
GOBIN="$(pwd)/build/tools" go install -mod=vendor tool
|
|
)
|
|
GO_MD2MAN="$(pwd)/build/tools/go-md2man"
|
|
fi
|
|
|
|
mkdir -p man/man1
|
|
(
|
|
set -x
|
|
go run -mod=vendor -tags manpages ./man/generate.go --source "./man/src" --target "./man/man1"
|
|
)
|
|
|
|
(
|
|
cd man
|
|
for FILE in *.md; do
|
|
base="$(basename "$FILE")"
|
|
name="${base%.md}"
|
|
num="${name##*.}"
|
|
if [ -z "$num" ] || [ "$name" = "$num" ]; then
|
|
# skip files that aren't of the format xxxx.N.md (like README.md)
|
|
continue
|
|
fi
|
|
mkdir -p "./man${num}"
|
|
(
|
|
set -x ;
|
|
"$GO_MD2MAN" -in "$FILE" -out "./man${num}/${name}"
|
|
)
|
|
done
|
|
)
|