...
1#1/usr/bin/env bash
2
3PROJECT_DIR=""
4SMITHY_SOURCE_DIR=$(cd `dirname $0` && pwd)
5
6usage() {
7 echo "Usage: $0 [-s SMITHY_SOURCE_DIR] [-d PROJECT_DIR]" 1>&2
8 exit 1
9}
10
11while getopts "hs:d:" options; do
12 case "${options}" in
13 s)
14 SMITHY_SOURCE_DIR=${OPTARG}
15 if [ "$SMITHY_SOURCE_DIR" == "" ]; then
16 echo "path to smithy-go source directory is required" || exit
17 usage
18 fi
19 ;;
20 d)
21 PROJECT_DIR=${OPTARG}
22 ;;
23 h)
24 usage
25 ;;
26 *)
27 usage
28 ;;
29 esac
30done
31
32if [ "$PROJECT_DIR" != "" ]; then
33 cd $PROJECT_DIR || exit
34fi
35
36go mod graph | awk '{print $1}' | cut -d '@' -f 1 | sort | uniq | grep "github.com/aws/smithy-go" | while read x; do
37 repPath=${x/github.com\/aws\/smithy-go/${SMITHY_SOURCE_DIR}}
38 echo -replace $x=$repPath
39done | xargs go mod edit
View as plain text