KateYoak
KateYoak

Reputation: 1731

gcloud app deploy fails on permissions after nodejs upgrade

I had a nodejs app that deployed perfectly for some time. When I came back to it, it gave me an error - nodejs8 was deprecated, and I needed to set nodejs10. I did.

My app.yaml:

runtime: nodejs10

I updated package.json and the deploy began to run correctly. However, it wound up failing on application build permissions, where it used to succeed prior to environment upgrade.

Here is the info I have:

I run the deploy via:

gcloud -q app deploy --project kbot-xxxxxx

Error in the build log:

Step #1 - "builder": Permission denied for "4555758a006c1c9c46e8d66fc2fdf5b1ad4d1f9bd072982be0e6c1d652ce48fa" from request "/v2/kbot-xxxxx/app-engine-tmp/build-cache/ttl-7d/node-cache/manifests/4555758a006c1c9c46e8d66fc2fdf5b1ad4d1f9bd072982be0e6c1d652ce48fa". : None
$ gcloud auth list
 Credentialed Accounts
ACTIVE  ACCOUNT
*       [email protected]

(nothing changed, though in the process of debugging, I revoked and re-logged in. No help.)

This email address is an owner listed in project's IAM.

Why is it failing? Something about the previous version being a different environment perhaps? On that hypothesis, I attempted to delete the only active version - that is not allowed. I appreciate the help! Thank you.

Upvotes: 1

Views: 199

Answers (2)

John Hanley
John Hanley

Reputation: 81336

Google requires a credit card on file to use Cloud Build (recent change). You can receive this error for the free trial accounts.

Have the Project Owner attach a billing account to the project.

Upvotes: 0

Andrei Tigau
Andrei Tigau

Reputation: 2048

As it is stated in the official documentation :

If you find 403 (access denied) errors in your build logs, try the following steps:

Disable the Cloud Build API and re-enable it. Doing so should give your service account access to your project again

Before doing that, and trying the deployment again, make sure that you have paid all the bills ( if there are any in the "Pending" state ) and make sure that you have an active payment method.

In the case you have a token based login, you could also try to check for the token not to be expired.

Upvotes: 2

Related Questions