Friday, October 12, 2012

Parrot Engineering

Last night I finally got a Maqetta website to run on the App Engine launcher.  For most new development stuff, there are several blogs and youtube tutorials on how to use the stuff.  Not so for Maqetta.  I was beginning to wonder if I could pull it off in the next few days or I'd actually have to RTFM - if there even are such manuals.

Maqetta's website has tutorials.  They go as far as showing how to use the tool, and assume the developer is stuff is something you already know.

App Engine - almost the same story.  I've gone through their tutorials, but still wasn't clear on the how these tools really work with each other.


Luckily one of the Google tutorial videos "Google I/O 2012 - HTML5 and App Engine: The Epic Tag Team Take on Modern Web Apps at Scale" also includes a Github link.

http://www.youtube.com/watch?v=v9TG7OzsZqQ


https://github.com/greenido

Downloading his code, and comparing with my files, eventually yields an app.yaml file that looks like:

application: heyworld
version: 1
runtime: python27
api_version: 1
threadsafe: yes

handlers:
- url: /favicon\.ico
  static_files: favicon.ico
  upload: favicon\.ico

- url: /images
  static_dir: images

- url: /lib
  static_dir: lib

- url: /static
  static_dir: static

- url: /themes
  static_dir: themes

- url: /samples
  static_dir: samples

- url: /stylesheets
  static_dir: stylesheets

- url: /
#  script: main.app
  static_files: file1.html
  upload: file1.html


libraries:
- name: webapp2
  version: "2.5.1"

#- url: .*
#  script: main.app
#


Where all the Maqetta directories that contain Dojo libraries, etc, are specified.  The downside to this, is you can enter directories and it serves up all of their files - not very clean.  I'm not sure there's any workaround for that problem, as app.yaml seems to work like a file system directory for the whole site - if it doesn't show a directory, none of the scripts seem to have a way to get to those directories.  [Yes?  No?  Anyone?  Please leave comments clarifying if you know!  Thanks!]

I call this "parrot engineering".  Not a proud badge - but if it gets the job done, do it.  If I can't find the answer on youtube or google, or by looking at a website's source code, Github seems to be another great source.


No comments:

Post a Comment