Jean-Baptiste Rudant
Jean-Baptiste Rudant

Reputation: 1056

Deploy node application to Google App Engine standard environment

Until december 2016, I was able to deploy node applications to Google App Engine standard environment with an app.yaml looking like this:

runtime: nodejs
vm: true
api_version: 1
manual_scaling:
  instances: 1

Now, when I do this to deploy to a new project, I get this error message:

ERROR: (gcloud.app.deploy) INVALID_ARGUMENT: Deployments to App Engine Flexible require 'env: flex' in app.yaml. The 'vm:true' setting has been deprecated.

But I'm still able to deploy with this configuration for existing projects.

Has something changed recently in Google App Engine for Node.js ? (I don't know when reading the error message if standard environment is deprecated, or if for some reason it considers I chose to deploy to a flexible environment, and so I can't use vm:true because this option is deprecated for flexible environments).

Upvotes: 2

Views: 899

Answers (1)

Dan Cornilescu
Dan Cornilescu

Reputation: 39814

The vm: true indicates you were actually deploying to the flexible environment (an earlier version). The standard environment never supported node.js apps, see https://cloud.google.com/appengine/docs.

Yes, there was a change in the flexible environment (all languages, not only node.js). See Upgrading to the Latest App Engine Flexible Environment Beta Release. From there, explaining why your existing apps still work:

Applications created with vm:true

All applications created in the vm:true environment will continue to work for at least 6 months after the App Engine flexible environment becomes generally available. At that point, all customers need to switch to the env:flex environment.

UPDATE:

Node.JS is currently available in the standard environment as well, see:

Upvotes: 3

Related Questions