sdk-go/hack/update-deps.sh

49 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
# Copyright 2022 The CloudEvents Authors
# SPDX-License-Identifier: Apache-2.0
# update-deps.sh - Updates Go dependencies in all directories with go.mod files
#
# This script:
# 1. Finds all directories containing go.mod files
# 2. Goes into each directory and runs go get -u to update dependencies
# 3. Runs go mod tidy to clean up the go.mod and go.sum files
set -euo pipefail
echo "====================================="
echo "Go Dependencies Update Script"
echo "====================================="
echo "Finding all directories with go.mod files..."
DIRS=$(find . -name "go.mod" -exec dirname {} \;)
if [ -z "$DIRS" ]; then
echo "No go.mod files found!"
exit 0
fi
DIR_COUNT=$(echo "$DIRS" | wc -l | tr -d ' ')
echo "Found $DIR_COUNT directories with go.mod files"
echo
COUNTER=1
for DIR in $DIRS; do
echo "[$COUNTER/$DIR_COUNT] Processing $DIR"
pushd "$DIR" >/dev/null
echo " - Updating dependencies..."
go get -u -t ./...
echo " - Running go mod tidy..."
go mod tidy
popd >/dev/null
echo " - Done"
echo
COUNTER=$((COUNTER + 1))
done
echo "All dependencies updated successfully!"