generate-yaml.sh 801 B

12345678910111213141516171819202122232425262728293031323334
  1. #!/usr/bin/env bash
  2. set -eu
  3. : "${CLI_DOCS_TOOL_VERSION=v0.3.1}"
  4. export GO111MODULE=auto
  5. function clean {
  6. rm -rf "$buildir"
  7. }
  8. buildir=$(mktemp -d -t docker-cli-docsgen.XXXXXXXXXX)
  9. trap clean EXIT
  10. (
  11. set -x
  12. cp -r . "$buildir/"
  13. cd "$buildir"
  14. # init dummy go.mod
  15. ./scripts/vendor init
  16. # install cli-docs-tool and copy docs/tools.go in root folder
  17. # to be able to fetch the required depedencies
  18. go mod edit -modfile=vendor.mod -require=github.com/docker/cli-docs-tool@${CLI_DOCS_TOOL_VERSION}
  19. cp docs/tools.go .
  20. # update vendor
  21. ./scripts/vendor update
  22. # build docsgen
  23. go build -mod=vendor -modfile=vendor.mod -tags docsgen -o /tmp/docsgen ./docs/generate.go
  24. )
  25. mkdir -p docs/yaml
  26. set -x
  27. /tmp/docsgen --source "$(pwd)/docs/reference/commandline" --target "$(pwd)/docs/yaml"