I feel like this is a great topic for a tutorial. Next Python meetup project night here in San Francisco I might start a little scaffolding project to demonstrate some of this stuff.
Jonathan, if you have links to any code that'd be useful, could you drop some here? On Wed, Mar 12, 2014 at 1:41 PM, Jonathan Vanasco <jonat...@findmeon.com>wrote: > After struggling with a decision for a while, I ended up just using fabric > and building this into our deployment routine. > > Our pyramid app toggles different includes between Production and Testing > (based on environment.ini variables): > > - production > * uses compressed / minified / joined / filtered assets in /-dist > * appends a release number as the query string to all assets ( to bust > cache across releases ) > > - development > * uses normal assets in /js /css > * appends the datetime as the query string to all assets ( to bust > cache across requests ) > > before joining and minifying the js files, they're heavily > regexed/filtered. a javascript flag is set to production, logger lines are > commented out, and lots of other changes. sometimes libraries are patched. > > I also manage versioned assets like this: > > /js > |-- /jquery > |-- /active ( symlink to other folder in this directory ) > |-- /v1.8.1 > |-- /v1.8.5 > > the fabric deployment file is written to deploy off the /active symlink in > each folder. It occasionally needs to be rewritten/updated , as 3rd party > libraries sometimes will change their file structure. > > a lot of the work just re-implements the html5boilerplate build tools ( > originally in ant, now in node ). html5boilerplate is installed into the > virtualenv/source, and kept relatively up-to-date. instead of running > their commands natively, I use fabric as the exclusive interface. that > lets me move files around or do all the other work in Python. > > It took about three hours to set up and has been really great. Instead of > having to deal with all sorts of evolving config files, everything stays in > python. > > -- > You received this message because you are subscribed to the Google Groups > "pylons-discuss" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to pylons-discuss+unsubscr...@googlegroups.com. > To post to this group, send email to pylons-discuss@googlegroups.com. > Visit this group at http://groups.google.com/group/pylons-discuss. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "pylons-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to pylons-discuss+unsubscr...@googlegroups.com. To post to this group, send email to pylons-discuss@googlegroups.com. Visit this group at http://groups.google.com/group/pylons-discuss. For more options, visit https://groups.google.com/d/optout.