0

I got a relatively tough one for you today.

I'm currently taking a Web Development course online and as a first assignment, we're asked to install and use Google App Engine, which runs on Python 2.7 -- I have Python 3.5 installed on my computer.

I tried completing the assignment even though I have the wrong Python version installed. Was able to create a project locally and see it in my browser using localhost:8081 -- so far so good.

But for the assignment we need to provide a link, a link that can seemingly only be created once you deploy the project. When I deploy however, this is what I get:

Error in question:

*** Running appcfg.py with the following flags:
    --oauth2_credential_file=~/.appcfg_oauth2_tokens update
05:47 PM Application: hello-udacity; version: 1
05:47 PM Host: appengine.google.com
05:47 PM Starting update of app: hello-udacity, version: 1
05:47 PM Getting current resource limits.
2016-09-29 17:47:57,389 ERROR appcfg.py:2411 An error occurred processing file '': HTTP Error 403: Forbidden Unexpected HTTP status 403. Aborting. 
Error 403: --- begin server output ---
You do not have permission to modify this app (app_id=u's~hello-udacity').
--- end server output ---
If deploy fails you might need to 'rollback' manually.
The "Make Symlinks..." menu option can help with command-line work.
*** appcfg.py has finished with exit code 1 ***

So my questions are:

  1. What is the root cause of the problem?
  2. What is the solution?
  3. If that solution means uninstalling Python3.5 and reinstalling Python 2.7, what is the easiest way for a beginner like me to do it?

If there's anything you think I should know please let me know.

Thanks :)

kfb
  • 6,252
  • 6
  • 40
  • 51
Vayl
  • 69
  • 1
  • 10

1 Answers1

1

1&2: You need to change the application name in the application: hello-udacity line in your app.yaml to match your real app name that you obtain when you create your GAE project in the developer console (likely someone else already created an app with that name before which you don't have permissions to modify, which is why your deployment fails).

3: It's likely to run into problems with python 3.5 on GAE, you should install 2.7. But you can do that without uninstalling 3.5, both versions should be able to co-exist on the same machine.

Dan Cornilescu
  • 39,470
  • 12
  • 57
  • 97
  • Hey Dan (not sure why I can't tag you with @), thanks for taking the time to reply. I replaced application: `hello-udacity` with `application: 402780083ae0cd005ec87806ce0dcefcf97e` and it still didn't work. I'm not exactly sure what you mean by "developer console". Here is a link: http://imgur.com/a/PY42F to a screenshot of my browser when I type in `localhost:8081` -- is that what you're referring to? – Vayl Sep 29 '16 at 16:08
  • The app id is usually a string word, not a hash. If you go to: `https://console.cloud.google.com` does it populate with the app-id in the url? It is most likely a word like 's~my-application', where 'my-application' is the app id for app.yaml – GAEfan Sep 29 '16 at 16:17
  • @GAEfan, hey there! I'm not exactly sure what you did but it seems to have worked! Now I need to submit a link, how exactly do I get a link? Sorry for the noob questions but I've never used GAE ever before. Thanks a lot! – Vayl Sep 29 '16 at 16:23
  • You need to deploy the app. Then the url is: "https://{your-app-id}.appspot.com/..." – GAEfan Sep 29 '16 at 16:24
  • @GAEfan, you're awesome. Thank you very much :) – Vayl Sep 29 '16 at 16:29