replace.js 822 B

123456789101112131415161718192021222324
  1. var util = require("util"),
  2. Promise = require("promised-io").Promise,
  3. fs = require("fs");
  4. module.exports.tasks = {
  5. replace: function(options,config,logger){
  6. var p = new Promise();
  7. Array.from(options).each(function(opt){
  8. logger.info("Replacing " + opt.token + " with " + opt.value + " in " + opt.file);
  9. logger.info("\treading file");
  10. var original = fs.readFileSync(fs.realpathSync(opt.file), 'utf-8');
  11. var pattern = new RegExp("\\" + opt.token,"g");
  12. logger.info("\treplacing token");
  13. var final = original.replace(pattern, opt.value);
  14. logger.info("\tsaving file");
  15. fs.writeFileSync(opt.file, final, 'utf-8');
  16. });
  17. p.resolve(true);
  18. return p;
  19. }
  20. };