Reputation: 990
I have been trying to deploy my project on Google Cloud SDK since yesterday and have been getting the same error over and over.
My app.yaml file looks like:
runtime: python27
api_version: 1
threadsafe: yes
- url: /
static_files: bin/index.html
upload: bin/index.html
- url: /assets
static_dir: bin/assets
- url: /src
static_dir: bin/src
- url: /vendor
static_dir: bin/vendor
- url: /templates-app.js
static_files: static/templates-app.js
upload: static/templates-app.js
- url: /templates-common.js
static_files: static/templates-common.js
upload: static/templates-common.js
- url: .*
script: main.app
I use this command to deploy:
gcloud preview app deploy app.yaml --version 1 --promote --force
And I get this error:
Beginning deployment...
Copying files to Google Cloud Storage...
Synchronizing files to [gs://staging.myapp.appspot.com/].
Updating module [default]...failed.
ERROR: (gcloud.preview.app.deploy) Error Response: [13] An internal error occurred.
Upvotes: 4
Views: 6335
Reputation: 6098
I got the same error today Error Response: [13] An internal error occurred
.
In my case, the issue was because I have a folder that has over 1000 files
. Once I moved some of these files elsewhere, the internal error message disappeared!
I tried 1000 files
in one folder, and it worked, then, I added one file (1001 files total)
in the same folder, and the same internal error came back. It seems that it is kind of a limit that google app engine has 1000 files per folder
.
Upvotes: 3
Reputation: 990
It ended up being the reportlab
python library in the lib
folder.
I found inserting it as a zip file rather than a normal folder worked.
import sys
sys.path.insert(0, 'reportlab.zip')
import reportlab
...
I have no idea why it wouldn't work. But I remember seeing something about a file limit when uploading projects with app-engine. Deploying 1 zip file is better than 181 files that make up reportlab
.
Upvotes: 0
Reputation: 39834
I notice you don't have your app name in the app.yaml
file and you also don't specify it in the upload cmd. I'd suggest making a habit in providing as much as the info as possible in the app.yaml
to minimize the chances of human error. You can also specify the version in the app.yaml
as well. This habit will help when you'll get to multi-modules apps, where such info is mandatory. See examples in the modules config doc.
From a different prospective, I saw several reports in which gcloud preview app deploy
tripped, you can always try alternate approaches to rule out such cases, see my answer to this Q&A: Google App Engine deploy with Django module after gcloud update?
Upvotes: 0