Google Cloud Shell で、 go get
を行う方法です。
公式のチュートリアルなどを行った後、初心者を脱するため go get
を行おうと思った時に、
それまではローカル環境で、 goapp get
でパッケージのインストールをしていて
そのままの感覚で、Google Cloud Shell上で goapp get
を行うと
go install runtime/cgo: open /google/go_appengine/goroot/pkg/linux_amd64_appengine/runtime/cgo.a: permission denied
go install appengine_internal/github.com/golang/protobuf/proto: open /google/go_appengine/goroot/pkg/linux_amd64_appengine/appengine_internal/github.com/golang/
protobuf/proto.a: permission denied
permission denied
などと言われて焦ります・・・
しかし、Google Cloud Shell上では、普通に go get
すればいいようです。
go env
を見てみると、
GOPATH="/home/llby/gopath:/google/gopath"
となっていて、HOME直下に gopath
ディレクトリが作ってあり
go get
すると、こちらにインストールされます。
/google/gopath
の方には、権限がないようですね。
なので、 goapp get
は出来ない・・・
とりあえずこれで、初心者を脱して
旧appengineパッケージから、新appengine( google.golang.org/appengine )への移行なども出来ますね。