I have built my google app engine app using version 1.8.8 but the production server hosted by google uses 1.9.11. I think this may be causing problems within my app since my app works locally but not on the production server. Is there anyway to change the version of the sdk that the production server uses? I can't seem to find any documentation on this.
No, you cannot define specifically which version of the SDK will run on the production servers. Typically, they run on the latest available SDK. If you are certain the that problems are caused due to the different versions of the SDK, I would propose to update your code accordingly.
Related
Where can you run GAE application built with "integrated" Datastore? Meaning, those application that were build prior to Google platform making the Datastore a separate service from the "core" GAE service. That is without modifying the project.
Can the current Google App Engine run "legacy" applications?
According to the first question App Engine can use Datastore without problem, what do you mean about "integrated"?
But Apps that use these APIs can only run in App Engine and will need to upgrade to the recommended Google Cloud APIs before migrating to newer App Engine runtimes.
And regarding to the last question App engine still provide support to:
Python 2.7
Java 8
Go 1.11
PHP 5.5
We are trying to automatically migrate traffic to the latest built version of our production branch of our app in google app engine. I can't find a good resource after about an hour of investigation on how to do this. Does anyone know if this is possible and where I can find resources on how to do this?
If you change the app/module version in your web.xml file at every build then you need to either assign the new version as the default version or migrate the traffic to the new version. AFAIK both of these actions can only be done manually, from the Developer Console's Versions Page.
But if you don't change the app/module version in your web.xml file then the updated code should automatically receive the same traffic as the previous code simply by deployment. At least in the standard GAE environment.
For Python applications it's possible to use appcfg.py set_default_version <app-directory> to set the default version to the one specified in app,yaml.
I'm assuming that appcfg.sh set_default_version <app-directory>, described in the documentation, does the same thing for Java applications.
I have a java server running car pool services on an EC2. I am using Flurry on my Android and iOS apps, but I could not find a way to run Flurry on the java server. All questions on stackoverflow for this particular case, have been answered for Android (I wonder why).
Has anyone tried to run flurry on their java server, or Java EE or ASP.NET?
This isn't supported at all. It would be very difficult to run the Android SDK with a Java server-side app since it depends on the Android libraries.
It would be nice if, once new code is tested, I could release changes to either a particular subdomain of my GAE app (such as demo.my-gae-app.com instead of my live environment at my-gae-app.com) or a particular backend instance (if subdomains are prohibited or not the right solution here).
Then, I can demo new code changes to my beta testers, and run performance tests against a real-life GAE environment. I know that the GAE SDK comes with a dev appserver, but it stubs most of the API calls, and doesn't handle scaling at all like a production environment would. And although we will absolutely use it for developers' local sandboxes as well as our QA environment, I just don't feel right release code into prod that hasn't ran against an environment that really mimics production.
How do other GAE developers/teams deal with this? I'm really just looking to have a pre-production environment (like "Demo")...but actually on live GAE app servers. Of course, I need to restrict access to this code so that only myself, my developers, my beta testers and our automated perf tests can access it... (that's the kicker).
You can deploy your code to a non-default application version, either by:
changing the version tag value in appengine-web.xml
calling appcfg.sh with -V version argument
changing the version in the deploy options of Google Eclipse plugin
After doing so, you can access your application by visiting version.appid.appspot.com
Note that different versions can access the same application datastore.
I registered a new application in Google app engine and deployed the beta version to it by changing project 's settings in eclipse. Then using google's tools (see Google doc) I copied the production datastore's content to the new beta app.
datastore in read-only mode while extracting data
Entity Keys could be problematic when working with unowned relationships - does anyone have information about this?
This provides me a perfect beta live environment.
I'm quite new to develop on GAE. Need just sort out few questions about setting up development.
I'm currently using Eclipse 3.7.x, Google Suite Plugin 2.5.2 r37
Related links I found:
http://code.google.com/p/googleappengine/issues/detail?id=1787
GAE - Development server in Eclipse doesn't update?
http://code.google.com/p/gae-wtp-plugin/
I came from standard LAMP development environment. Changes are propagated immediately to development server (usually localhost) and I can control deployment of application to production server through DCVS/SVN and attached handlers updating remote codebase.
I'd expect Google Plugin allowing us to do the same. Necessary functions I (probably) need:
On-Save handler to recompile and update development code
Production like development environment (for testing in almost-real conditions)
Deployment to production environment
The last one is simply using DCVS/SVN to tag code and save the trunk branch, and using Google > Deploy to App Engine option to push it to remote server.
But how can I solve the first two requirements? Do I really need them, or is it only my hangover from web development, and development process in GAE works differently?
If the first one is solvable through GAE WTP Plugin, can you please more elaborate on how to setup development with this plugin, as I was not able to achieve anything more, than server, which has to be restarted in the same manner as Google Plugin default GAE development server
does.
You can update development code pretty quickly with the yellow reload button. For me, with about 100 server classes, this takes 2-5 seconds.
The development environment is reasonably good - you can simulate HRD and stuff like that. Of course, it's not actually a distributed cloud environment - we do most testing on local servers, and then have a whole test app on the cloud for a last round of simulation. Of course, some things change when 1000 people are accessing it at once, but I don't know how to get around that.
You can find the reload button on the Development View pane: