Browse Source

Merge branch 'phantomjs' of https://github.com/fg2it/grafana into fg2it-phantomjs

Torkel Ödegaard 10 years ago
parent
commit
8b029388a5
4 changed files with 35 additions and 0 deletions
  1. 1 0
      tasks/build_task.js
  2. 1 0
      tasks/default_task.js
  3. 33 0
      tasks/options/phantomjs.js
  4. BIN
      vendor/phantomjs/phantomjs

+ 1 - 0
tasks/build_task.js

@@ -11,6 +11,7 @@ module.exports = function(grunt) {
     'copy:public_to_gen',
     'typescript:build',
     'karma:test',
+    'phantomjs',
     'css',
     'htmlmin:build',
     'ngtemplates',

+ 1 - 0
tasks/default_task.js

@@ -9,6 +9,7 @@ module.exports = function(grunt) {
     'tslint',
     'clean:gen',
     'copy:public_to_gen',
+    'phantomjs',
     'css',
     'typescript:build'
   ]);

+ 33 - 0
tasks/options/phantomjs.js

@@ -0,0 +1,33 @@
+module.exports = function(config,grunt) {
+  'use strict';
+
+  grunt.registerTask('phantomjs', 'Copy phantomjs binary from node', function() {
+
+    var dest = './vendor/phantomjs/phantomjs';
+    var confDir = './node_modules/karma-phantomjs-launcher/node_modules/phantomjs/lib/'
+
+    if (!grunt.file.exists(dest)){
+
+      var m=grunt.file.read(confDir+"location.js")
+      var src=/= \"([^\"]*)\"/.exec(m)[1];
+      
+      if (!grunt.file.isPathAbsolute(src)) {
+        src = confDir+src;
+      }
+
+      var exec = require('child_process').execFileSync;
+
+      try {
+        var ph=exec(src,['-v'], { stdio: 'ignore' });
+        grunt.verbose.writeln('Using '+ src);
+        grunt.file.copy(src, dest, { encoding: null });
+      } catch (err) {
+        grunt.verbose.writeln(err);
+        grunt.fail.warn('No working Phantomjs binary available')
+      }
+      
+    } else {
+       grunt.log.writeln('Phantomjs already imported from node');
+    }
+  });
+};

BIN
vendor/phantomjs/phantomjs