Cloud FunctionsのNode.jsバージョンを更新する

公開日時

以前作ったCloud Functions Node.jsの関数でエラーが発生したのでローカルで修正を行った。

修正ついでにNode.jsのバージョンを10 => 12に上げた。

Cloud FunctionsでのNode.js14は現在プレビュー版なので今回はNode.js12に更新した。

  • package.jsonengines を更新
{
  "engines": {
    "node": "12"
  },
  // ...
}
  • cloudbuild.yamlname と functions deploy時の runtime を更新
steps:
  - name: node:12
    entrypoint: npm
    args:
      - install

  - name: node:12
    entrypoint: npm
    args:
      - run
      - build

  - name: "gcr.io/cloud-builders/gcloud"
    args:
      - functions
      - deploy
      - ${_FUNCTION_NAME}
      - --entry-point=index
      - --runtime=nodejs12
      - --region=asia-northeast1
      - --update-env-vars
      - NODE_ENV=production

今回はシンプルな関数だったので、上記のファイル変更のみでNode.jsバージョンを更新できた。

より詳しい更新方法については公式ドキュメントにまとまっている。


Related #gcp

Cloud BuildでFirebase Hostingのデプロイを行う

リポジトリへのpush以外をトリガーにしたい場合に使用

Firebase HostingのデプロイをWebhook(API)経由で行う

デプロイボタンが作れるようになった

CloudRunでnode.jsを動かす

リポジトリにpushしたらCloudRun上に自動デプロイ

IPv6 IPoE環境で自宅のRaspberryPiにsshできるようにする

GCPにssh port forwardingすることで実現できた

CloudRunのレスポンスが429 Rate exceeded.になる

インスタンスの最大数を500に上げたらエラーは消えた