Google Cloud PlatformのAppEngine(PaaS)の公式ドキュメントでは、色々サンプルや使い方が書いてあるのですが、日本語翻訳されている情報が足りない+Goランタイムに関する情報がすくないので、ちょっとハマりました。
https://cloud.google.com/appengine/docs/standard/go/runtime?hl=ja <-この辺ね
go112 では"google.golang.org/appengine"は使っちゃダメ
いろんなサンプルでこれを使ってるのですが、対応しているのはgo111までです。go112使う場合は使うと問題が出ます。主にcontext使ってAPI呼ぶとこでコケます。
もちろんappengine.main()は使わない
go111とかの場合は,appengineのcontext渡さないと、「これはappengineのcontextじゃないです」的なエラーで動かなかったりしたのですが、go112では使わない。 APIは"cloud.google.com/go"を使う
Mail APIは使えない?
ちゃんと検証していないのですが、Mail APIのコードもドキュメントもappengineパッケージを使う前提で書かれているので、たぶん無理。ドキュメントにも「sendgridとか使ってね」って書いてあった