github.com/yrj2011/jx-test-infra@v0.0.0-20190529031832-7a2065ee98eb/triage/node_modules/jasmine/Gruntfile.js (about)

     1  module.exports = function(grunt) {
     2    var pkg = require("./package.json");
     3    global.jasmineVersion = pkg.version;
     4    var versionString = 'v' + pkg.version;
     5  
     6    grunt.initConfig({
     7      pkg: pkg,
     8      jshint: {all: ['lib/**/*.js', 'spec/**/*.js']}
     9    });
    10  
    11    var shell = require('shelljs');
    12    function runCommands(commands, done) {
    13      var command = commands.shift();
    14  
    15      if (command) {
    16        shell.exec(command, function(exitCode) {
    17          if (exitCode !== 0) {
    18            grunt.fail.fatal("Command `" + command + "` failed", exitCode);
    19            done();
    20          } else {
    21            runCommands(commands, done);
    22          }
    23        });
    24      } else {
    25        done();
    26      }
    27    }
    28  
    29    // depend on jshint:all, specs?
    30    grunt.registerTask('release',
    31                       'Create tag ' + versionString + ' and push jasmine-' + pkg.version + ' to NPM',
    32                       function() {
    33      var done = this.async(),
    34          commands = ['git tag ' + versionString, 'git push origin master --tags', 'npm publish'];
    35  
    36      runCommands(commands, done);
    37    });
    38  
    39    grunt.loadNpmTasks('grunt-contrib-jshint');
    40  
    41    grunt.loadTasks('tasks');
    42  
    43    grunt.registerTask('default', ['jshint:all', 'specs']);
    44  };