GoNaCl App Engine
=================
This is a new App Engine Python 2.7 application for http://gonacl.com
At this time it presents the existing functionality of redirecting
to http://developers.google.com/native-client/
Also, there are PNaCl demos added at ``/demo/<name>``
To Run Locally
--------------
1. Download the App Engine SDK (https://developers.google.com/appengine/downloads#Google_App_Engine_SDK_for_Python)
2. Run ``<path/to/app/engine>/dev_appserver.py app.yaml``
3. Navigate in your browser to http://localhost:8080/demo/
To Update App Engine (HTML/JS)
------------------------------
To upload, run this from the root directory of the App Engine SDK::
$ ./appcfg.py update <path-to-this-dir>
It probably makes sense to bump the application version in app.yaml for each
upload, as it lets us use App Engine's versioning. The newly uploaded version
can be tried before actually being activated, by going to the "Versions"
section on the App Engine dashboard. Note that the newly uploaded version only
becomes active when it's set as the "default" version in the dashboard.
To Update the Binary files (.pexe/.nmf)
---------------------------------------
The build outputs are automatically uploaded to Google Cloud Storage
(``storage.googleapis.com``) by the linux SDK builder (linux-sdk-multi).
To publish a new version:
1. Make and land your change to the demo, found in ``src/<demo-name>``.
2. Wait for the linux SDK builder to build and upload your change. You can see
what's available in the browser at::
http://gsdview.appspot.com/gonacl/demos/continuous/
Or by using gsutil::
$ gsutil ls gs://gonacl/demos/continuous/
3. Use 'make publish REVISION=<REV>' in the ``src`` directory to publish the
revision.
4. Update the URLs to use this new revision in each demo's JavaScript files:
Please see the following table for the location of the revision number to
modify.
========== ============================= ===========
Demo File Function
========== ============================= ===========
bullet /static/bullet/main.js pageDidLoad
cube /static/cube/example.js getDataURL
earth /static/earth/example.js getDataURL
life /static/life/example.js getDataURL
lua /static/lua/lua.js
smoothlife /static/smoothlife/example.js getDataURL
voronoi /static/voronoi/example.js getDataURL
5. Land a CL with these changes.
6. Update App Engine, using the instructions above.