sigs.k8s.io/cluster-api-provider-azure@v1.14.3/scripts/go_install.sh (about) 1 #!/usr/bin/env bash 2 # Copyright 2020 The Kubernetes Authors. 3 # 4 # Licensed under the Apache License, Version 2.0 (the "License"); 5 # you may not use this file except in compliance with the License. 6 # You may obtain a copy of the License at 7 # 8 # http://www.apache.org/licenses/LICENSE-2.0 9 # 10 # Unless required by applicable law or agreed to in writing, software 11 # distributed under the License is distributed on an "AS IS" BASIS, 12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 # See the License for the specific language governing permissions and 14 # limitations under the License. 15 16 set -o errexit 17 set -o nounset 18 set -o pipefail 19 20 if [ -z "${1}" ]; then 21 echo "must provide module as first parameter" 22 exit 1 23 fi 24 25 if [ -z "${2}" ]; then 26 echo "must provide binary name as second parameter" 27 exit 1 28 fi 29 30 if [ -z "${3}" ]; then 31 echo "must provide version as third parameter" 32 exit 1 33 fi 34 35 if [ -z "${GOBIN}" ]; then 36 echo "GOBIN is not set. Must set GOBIN to install the bin in a specified directory." 37 exit 1 38 fi 39 40 rm "${GOBIN}/${2}"* 2> /dev/null || true 41 42 # install the golang module specified as the first argument 43 go install -tags capztools "${1}@${3}" 44 mv "${GOBIN}/${2}" "${GOBIN}/${2}-${3}" 45 ln -sf "${GOBIN}/${2}-${3}" "${GOBIN}/${2}"