#!/bin/bash

set -ex
set -o pipefail

export GOPATH="${HOME}/gocode"
rm -rf ${GOPATH}
mkdir -p ${GOPATH}

# Create `.gopath` file for $PATH detection
touch ${GOPATH}/.gopath

# Re-Install gocode
go get -u github.com/nsf/gocode

# Re-Install gometalinter
go get -u github.com/alecthomas/gometalinter
${GOPATH}/bin/gometalinter --install --update

# Re-Install godebug
go get -u github.com/mailgun/godebug

# Re-Install godep and dep
go get -u github.com/tools/godep
go get -u github.com/golang/dep/cmd/dep

# Re-Install go-bindata
go get -u github.com/jteeuwen/go-bindata/...

# Re-Install hclfmt
go get -u github.com/fatih/hclfmt

# Ensure vim-go can work
vim +:GoInstallBinaries +:qall

# Normally update non-version dependent tools
go get -u github.com/fiatjaf/jiq/cmd/jiq

go get -u github.com/hashicorp/vault

# Install some own tools
go get -u github.com/Luzifer/vault-patch
go get -u github.com/Luzifer/vault2env