Sri Sri - 1 year ago 159
Javascript Question

Can I use Grunt with TFS?

My new project needs me to work with TFS + Git.

Confession: I know nothing about TFS.

I want to setup a build for my JavaScript project. I want to use Grunt.

Is this possible? Has anybody used Grunt with TFS?

Answer Source

On our current project, we're using Grunt and TFS. I've integrated Grunt with TFS by caling it from a bat file which you can hook up in the Pre- or Post-BuildEvents section of your project file.

However, because TFS will execute your builds with specific environment variables, you need to use absolute paths.

A list of the things we've done

  1. Install node.js on your build machine (as well as on your development machine(s) ofcourse)
  2. Add a package.jsonfile on the root of your JavaScript project.
  3. Use npm to install grunt-cli locally (!). Use the --save-dev flag to add this package to the development dependencies section in package.json
  4. For all other packages you need, use npm with the same flag as in step 3
  5. Write a bat file (see example below) in which you'll
    1. make use of absolute paths
    2. use npm to install all the packages listed in the packages.json file
    3. call grunt
  6. In your Pre- or PostBuildEvents, call this bat file

bat file example

rem use call to execute other bat files
echo npm install 
call "C:\Program Files\nodejs\npm" install

rem because we have listed grunt-cli as a dev dependency,
rem the executable will be located in the node_modules folder
echo grunt
call "./node_modules/.bin/grunt"
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download