github.com/braveheart12/insolar-09-08-19@v0.8.7/scripts/build/fetchdeps (about)

     1  #!/bin/bash
     2  #
     3  # fethcdeps - installs go bin tool from package using provided git reference
     4  #
     5  # Usage: fethcdeps <package> [<gitref>]
     6  #
     7  
     8  # use bash 'strict mode'
     9  set -euo pipefail
    10  IFS=$'\n\t'
    11  
    12  # pass arguments
    13  if [[ "$#" -lt 1 ]]; then
    14      echo "Usage: fethcdeps <package> [<gitref>]"
    15      exit
    16  fi
    17  REPO=$1
    18  GITREF=${2:-"master"}
    19  
    20  # set vars
    21  # GOPATH may contain multiple paths. We use only the first one.
    22  export GOPATH=$(go env GOPATH | cut -d':' -f1)
    23  REPODIR="$GOPATH/src/$REPO"
    24  
    25  # fetch and update repo
    26  if [ ! -d "$REPODIR" ]; then
    27      go get -u "$REPO"
    28  fi
    29  
    30  pushd $REPODIR
    31  git fetch --all -q
    32  git checkout -q "$GITREF" >/dev/null
    33  echo "install $1@$GITREF"
    34  # if mod file available we want to have consitent dependency tree
    35  GO111MODULE=on go install