I think that it would be better to create a package.json file that defines Windshaft as a dependency, and then let npm handle the rest of the install. We're going to have to add a lot more code on top of Windshaft to get it to handle styling the way we want and generate the proper SQL queries. Take a look at the OTM2 Tiler for an example of what I mean (and how to set it up): https://github.com/OpenTreeMap/OTM2-tiler/ . Veterans is also set up this way. If we put node_modules in .gitignore then it won't clutter anything up.

It would also be great to split out the connection settings into a separate file so that we don't have to include all this javascript in the provision script; the OTM2 tiler has a pretty good example of that as well, it's just a few lines to change.