Pay attention to `bower` and `grunt` libraries, not containing folder

- should help to avoid repeated CI failures executing `bower`

also get `grunt` working on Linux machines when globally installed
This commit is contained in:
Doug Bunting 2015-02-04 15:47:17 -08:00
parent ff63cb8b0d
commit 80f7e445e5
2 changed files with 12 additions and 9 deletions

View File

@ -1,11 +1,12 @@
default currentDir = '${Directory.GetCurrentDirectory()}'
default nodeDir = '${Path.Combine(currentDir, "bin", "nodejs")}'
var bowerInstalled = '${Directory.Exists(Path.Combine(nodeDir, "node_modules", "bower"))}'
var bowerLibrary = '${ Path.Combine(nodeDir, "node_modules", "bower", "bin", "bower") }'
var bowerInstalled = '${ File.Exists(bowerLibrary) }'
var bowerGloballyInstalled = '${ !bowerInstalled && TestCommand("bower", "--version") }'
var bowerCmd = '${ bowerGloballyInstalled ? "bower" : Path.Combine(nodeDir, "node_modules", "bower", "bin", "bower") }'
var bowerCmd = '${ bowerGloballyInstalled ? "bower" : bowerLibrary }'
- // Install bower locally if not already installed either globally or locally
- // Install bower locally if not already installed either globally or locally; creates bowerLibrary file if run
npm npmCommand='install ${E("npm_install_options")} --prefix ${nodeDir} bower' if='!(bowerGloballyInstalled || bowerInstalled)' once='installBower'
- // Run bower

View File

@ -1,13 +1,15 @@
default currentDir = '${Directory.GetCurrentDirectory()}'
default nodeDir = '${Path.Combine(currentDir, "bin", "nodejs")}'
var gruntCliInstalled = '${Directory.Exists(Path.Combine(nodeDir, "node_modules", "grunt-cli"))}'
var gruntCliLibrary = '${ Path.Combine(nodeDir, "node_modules", "grunt-cli", "bin", "grunt") }'
var gruntCliInstalled = '${ File.Exists(gruntCliLibrary) }'
var gruntCliGloballyInstalled = '${ !gruntCliInstalled && TestCommand("grunt", "--version") }'
var gruntCmd = '${ gruntCliGloballyInstalled ? "grunt" : Path.Combine(nodeDir, "node_modules", "grunt-cli") }'
var gruntCmd = '${ gruntCliGloballyInstalled ? "grunt" : gruntCliLibrary }'
-// Install grunt-cli locally
- // Install grunt-cli locally if not already installed either globally or locally; creates gruntCliLibrary file if run
npm npmCommand='install ${E("npm_install_options")} --prefix ${nodeDir} grunt-cli' if='!(gruntCliGloballyInstalled || gruntCliInstalled)' once='installGruntCli'
-// Run grunt
exec program='cmd' commandline='/C ${gruntCmd}' workingdir='${gruntDir}' if='gruntCliGloballyInstalled'
node nodeCommand='${Path.Combine(nodeDir, "node_modules", "grunt-cli", "bin", "grunt")}' workingdir='${gruntDir}' if='!gruntCliGloballyInstalled'
-// Run grunt-cli
exec program='cmd' commandline='/C ${gruntCmd}' workingdir='${gruntDir}' if='gruntCliGloballyInstalled && !IsLinux'
exec program='${gruntCmd}' workingdir='${gruntDir}' if='gruntCliGloballyInstalled && IsLinux'
node nodeCommand='${gruntCmd}' workingdir='${gruntDir}' if='!gruntCliGloballyInstalled'