Use go.work to auto-find internal modules

This commit is contained in:
Tim Hockin 2024-03-02 14:34:48 -08:00
parent 1fceb815ac
commit 90e6546c68
No known key found for this signature in database

View File

@ -23,11 +23,13 @@ source "${KUBE_ROOT}/hack/lib/init.sh"
# These are "internal" modules. For various reasons, we want them to be
# decoupled from their parent modules.
MODULES=(
hack/tools
staging/src/k8s.io/code-generator/examples
staging/src/k8s.io/kms/internal/plugins/_mock
)
MODULES=()
kube::util::read-array MODULES < <(
git ls-files -cmo --exclude-standard -- ':!:vendor/*' ':(glob)*/**/go.work' \
| while read -r F; do \
dirname "${F}"; \
done
)
# Detect problematic GOPROXY settings that prevent lookup of dependencies
if [[ "${GOPROXY:-}" == "off" ]]; then
@ -38,9 +40,7 @@ fi
kube::golang::setup_env
for mod in "${MODULES[@]}"; do
pushd "${KUBE_ROOT}/${mod}" >/dev/null
echo "=== tidying go.mod/go.sum in ${mod}"
go mod edit -fmt
go mod tidy
popd >/dev/null
echo "=== tidying go.mod/go.sum in ${mod}"
go -C "${KUBE_ROOT}/${mod}" mod edit -fmt
go -C "${KUBE_ROOT}/${mod}" mod tidy
done