当我尝试更新我的appengine项目时,它会给我一个错误。
$ sudo gcloud app deploy
ERROR: (gcloud.app.deploy) Staging command [/usr/local/google-cloud-sdk/platform/google_appengine/goroot-1.6/bin/go-app-stager /Users/baz/app/app.yaml /tmp/tmpSZLK/tmpIQ4] failed with return code [1].
------------------------------------ STDOUT ------------------------------------
------------------------------------ STDERR ------------------------------------
2017/07/08 16:22:06 failed analyzing /Users/baz/app: cannot find package "bitbucket.org/foo/bar" in any of:
($GOROOT not set)
($GOPATH not set)
GOPATH:
$ echo $GOPATH
/Users/baz/go
$ go env GOPATH
/Users/baz/go
显然已设置GOPATH(我将其导出到.bash_profile中)。
答案 0 :(得分:2)
TL; DR - 请勿使用sudo
部署应用。
您正在使用sudo
运行gcloud app deploy
命令。以sudo
用户身份运行命令时,root
命令的性质不会保留当前的环境变量集。
尝试在没有sudo
的情况下部署您的应用引擎应用:
gcloud app deploy
如果你确实需要以sudo
命令运行命令(这是你的设置被破坏的气味),你可以查看this post。虽然,我建议考虑在没有sudo
的情况下运行命令的可能性。