2

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).

1 Answer 1

3

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:

Sign up to request clarification or add additional context in comments.

1 Comment

Thank you. My mistake was that I opposed vm:true and flex:env. I thought vm:true was needed to specify options like manual_scaling: instances: 1, but it's not.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.