github.com/grafana/synthetic-monitoring-agent@v0.64.2/scripts/package/goreleaser-build (about) 1 #!/bin/sh 2 3 log=false 4 5 if "$log" ; then 6 exec 6>&1 7 exec 7>&2 8 exec > "goreleaser.$(date +%s).$$.log" 2>&1 9 trap 'exec 1>&6 2>&7 6>&- 7>&-' EXIT 10 fi 11 12 # On macOS, use GNU's getopt: "brew install gnu-getopt" 13 TEMP=$(getopt --alternative --longoptions ldflags: --options o: -- "$@") 14 15 # shellcheck disable=SC2181 16 if [ $? != 0 ] ; then 17 echo "Terminating..." >&2 18 exit 1 19 fi 20 21 eval set -- "$TEMP" 22 23 set -e 24 25 while true ; do 26 case "$1" in 27 -o) 28 OUTPUT="$2" 29 shift 2 30 ;; 31 --ldflags) 32 shift 2 33 ;; 34 --) 35 shift 36 break 37 ;; 38 *) 39 break 40 ;; 41 esac 42 done 43 44 case "$1" in 45 version) 46 go "$@" 47 ;; 48 49 build) 50 make build \ 51 "PLATFORMS=${GOOS}/${GOARCH}" \ 52 "COMMANDS=github.com/grafana/synthetic-monitoring-agent/$2" \ 53 "OUTPUT_FILE=${OUTPUT}" 54 ;; 55 56 *) 57 echo "E: Unhandled arguments: '$*'. Stop." 58 exit 100 59 ;; 60 esac