GAE/Go が gcloud app deploy でも goapp deploy でもデプロイできない
これが一番はまってしまったので、Qiita に書いた。
cp の引数のスラッシュの有無
cp でも rsync でもそうだが、 / をつける・つけないで挙動が変わるので思っていたのと異なるディレクトリ構造になってしまった。
.git/ ディレクトリはコピーしない
cp -R すると .git/ 以下まですべてコピーしようとして、 permission denied: が大量に出てしまったし、無駄なコピーだった。
rsync --cvs--exclude で解決。
dep ensure でエラー failed to unpack tree object
dep が依存しているパッケージを最新に更新したら、git checkout 時に上記のエラーがでた。
dep は一度ダウンロードしたパッケージをキャッシュしてるみたいで、$GOPATH/pkg/dep/sources 以下を削除したら直った。
まとめ
gcloudまわりはまだ beta 感があるdepもまだ beta 感がある- シェルスクリプト書きたくない
- CircleCI, Gitlab CI 自体は何も悪くない