Files
moby/hack/vendor.sh
Austin Vazquez adcea7bdc9 Rework Go mod tidy/vendor checks
This change reworks the Go mod tidy/vendor checks to run for all tracked Go modules by the project and fail for any uncommitted changes.

Signed-off-by: Austin Vazquez <austin.vazquez@docker.com>
(cherry picked from commit f6e1bf2808)
Signed-off-by: Austin Vazquez <austin.vazquez@docker.com>
2025-10-06 19:19:23 -05:00

52 lines
831 B
Bash
Executable File

#!/usr/bin/env bash
#
# This file is just a wrapper around the 'go mod vendor' tool.
# For updating dependencies you should change `vendor.mod` file in root of the
# project.
set -e
SCRIPTDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_DIR="$(cd "$SCRIPTDIR/.." && pwd)"
tidy() (
(
set -x
"${SCRIPTDIR}"/with-go-mod.sh go mod tidy -modfile vendor.mod
)
(
set -x
cd man
go mod tidy
)
)
vendor() (
(
set -x
"${SCRIPTDIR}"/with-go-mod.sh go mod vendor -modfile vendor.mod
)
(
set -x
cd man
go mod vendor
)
)
help() {
printf "%s:\n" "$(basename "$0")"
echo " - tidy: run go mod tidy"
echo " - vendor: run go mod vendor"
echo " - all: run tidy && vendor"
echo " - help: show this help"
}
case "$1" in
tidy) tidy ;;
vendor) vendor ;;
""|all) tidy && vendor ;;
*) help ;;
esac