0

I have a standard environment NodeJS application deployed on Google Cloud App Engine. The app was first deployed in Nov 2019. I'm now trying to update the code, but I'm no longer able to deploy via $ gcloud app deploy

  • I've tried using the online console at https://console.cloud.google.com/appengine/quotadetails?cloudshell=true as well as the stand alone downloaded console tooling. Both fail.
  • The application works fine on localhost. It communicates with the online data storage just fine.
  • I've tried using $ gcloud app deploy --verbosity=debug It's not much help.
  • I've verified the login's and accounting information, thru the Google Cloud console in the browser. At first three glances everything seems whole.

Current Error messages: ERROR: (gcloud.app.deploy) Error Response: [9] Cloud build f3780207-1c95-4b88-8ae0-574fc6ad515b status: FAILURE Build error details: {"error":{"errorType":"BuildError","canonicalCode":"INVALID_ARGUMENT","errorId":"51A062A0","errorMessage":"INFO FTL version node-v0.17.0\nINFO Beginning FTL build for node\nINFO FTL arg passed: exposed_ports None\nINFO ... lots of info removed here...

Two errors on the build log:

Step #1 - "builder": containerregistry.client.v2_2.docker_http_.V2DiagnosticException: response: {'status': '403', 'content-length': '288', 'x-xss-protection': '0', 'transfer-encoding': 'chunked', 'server': 'Docker Registry', '-content-encoding': 'gzip', 'docker-distribution-api-version': 'registry/2.0', 'cache-control': 'private', 'date': 'Tue, 04 Aug 2020 18:30:12 GMT', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json'}

Step #1 - "builder": Permission denied for "1dc7fa0ed97dedf2b18a5fa82c4847e36cdade4e1d65e024bfb78aacd0cc1a3d" from request "/v2/ccinema-app/app-engine-tmp/build-cache/ttl-7d/node-cache/manifests/1dc7fa0ed97dedf2b18a5fa82c4847e36cdade4e1d65e024bfb78aacd0cc1a3d". : None

app.yaml file:

# [START runtime]
runtime: nodejs10
# [END runtime]

instance_class: F2
automatic_scaling:
  max_instances: 2
  target_cpu_utilization: 0.7   

# https://hackernoon.com/trials-and-tribulations-of-google-cloud-hosting-a-tutorial-26395eb25636
service: default

# https://cloud.google.com/appengine/docs/standard/nodejs/serving-static-files
handlers:
  # - url: /favicon\.ico
  #   static_files: favicon.ico

  - url: /images
    static_dir: public/images
  - url: /javascript
    static_dir: public/javascript
  - url: /stylesheets
    static_dir: public/stylesheets

  - url: /.*
    secure: always
    redirect_http_response_code: 301
    script: auto

Its not at all clear to me on why the app deploy fails now when it worked so well in the past. Any ideas on why the deployment failure? Note, is there a way to attach the build log / error log as attachments to this posting?


Edit...

I've been spending a whole lot of time trying to figure this issue out. I thought I'd try a simple cloned site. Same exact node content from my repo, but instead pull a brand new project with a new app engine deployment. I can't tell if the above issue is a deployment issue or a code related issue. If I could create a new project perhaps I could troubleshoot why my current project fails to deploy.

  • Create a new project.
  • $ gcloud app deploy
  • Updating service [default]...failed. ERROR: (gcloud.app.deploy) Error Response: [7] Access Not Configured. Cloud Build has not been used in project my-project-xxx before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/cloudbuild.googleapis.com/overview?project=my-project-xxx then retry.
  • I go to the link listed, and after clicking a series of links I get to here, and I see "Billing Account is Closed"
  • Its not clear on why the account is closed.
  • Google search shows me "Reopen a closed Cloud Billing account". I follow the instructions there and I'm missing a "REOPEN BILLING ACCOUNT button". There are possible reasons for that, including unresolved payments, suspensions etc... In my case, we have none of that. No unresolved bills, credit cards on record are still valid, not expired. I just can't figure this out.
  • What makes this worse is my inability to ask for help from Google on billing issues. When I go to ? (help) --> Contact Billing Support I get a "Sorry, this page can't be found" response.
  • Er, wait is Google telling me I should be using Amazon Web Services or Microsoft Azure instead of Google Cloud? I wasted a heck of a lot of time trying to figure this out via obscure error messages, and the AWS / Azure message comes thru quite clearly. Normally the folks at Google are much better than that.
zipzit
  • 3,778
  • 4
  • 35
  • 63
  • Hi @zipzit could you please check if the answer [here](https://stackoverflow.com/a/60027359/12767257) helps you? It seems that you are facing a similar issue, where some dependencies are not being installed/updated within your Cloud Build and this is causing the failure of the deployment. – gso_gabriel Aug 05 '20 at 13:06
  • No go. Not even close... See edit.. – zipzit Aug 07 '20 at 02:44
  • Hi @zipzit sorry to hear about that. I couldn't find this link you faced the error to contac the support, but indeed, this is the wrong one. Please, use this one listed [here](https://cloud.google.com/support/billing), to reach out to Google Support, as they will be the one to help you fix this. – gso_gabriel Aug 07 '20 at 05:23

1 Answers1

0

So it turns out the billing account tied to this project was closed even thought the credit card on record was still valid. The error messages for $ gcloud app deploy when there is a billing account problem don't remotely direct the user to the actual issue.

I'd much prefer to see an error message like Oops, the account appears to be closed. Please check billing details... . Keep it simple, make it accurate. And I can't believe I'm the first person to be here.

I did pull a bug report at Google Issue Tracker. Lets see where that goes?

zipzit
  • 3,778
  • 4
  • 35
  • 63