Skip to content

Instantly share code, notes, and snippets.

@dbankier
Created May 25, 2013 12:45
Show Gist options
  • Star 7 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save dbankier/5648950 to your computer and use it in GitHub Desktop.
Save dbankier/5648950 to your computer and use it in GitHub Desktop.
alloy.jmk for automatic spy injection for TiShadow
task("pre:compile", function(event,logger) {
var wrench = require("wrench"),
fs = require("fs"),
controllers_root = event.dir.controllers,
path = require("path");
if (event.alloyConfig.deployType === 'production') {
return;
}
wrench.readdirSyncRecursive(controllers_root).forEach(function(file) {
if (file.match(/.js$/)) {
fs.appendFileSync(
path.join(controllers_root,file),
"\naddSpy('" + file.replace(".js","") + "',$)" );
}
});
});
task("post:compile", function(event,logger) {
var wrench = require("wrench"),
fs = require("fs"),
controllers_root = event.dir.controllers,
path = require("path");
if (event.alloyConfig.deployType === 'production') {
return;
}
wrench.readdirSyncRecursive(controllers_root).forEach(function(file) {
if (file.match(/.js$/)) {
var contents = fs.readFileSync(path.join(controllers_root,file)).toString().split("\n");
contents.pop();
fs.writeFileSync(
path.join(controllers_root,file),
contents.join("\n"));
}
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment