msbuild plugin for gulp. Inspired by grunt-msbuild.
npm install jywng-gulp-msbuildgulp-msbuild as a development dependency:
shell
npm install --save-dev gulp-msbuild
`
Then, add it to your gulpfile.js:
`javascript
var gulp = require("gulp");
var msbuild = require("gulp-msbuild");
gulp.task("default", function() {
return gulp.src("./project.sln")
.pipe(msbuild());
});
`
$3
> If you miss any options, feel free to open an issue.
__Example__
`javascript
var gulp = require("gulp");
var msbuild = require("gulp-msbuild");
gulp.task("default", function() {
return gulp.src("./project.sln")
.pipe(msbuild({
targets: ['Clean', 'Build'],
toolsVersion: 3.5
})
);
});
`
#### stdout
> Show output of msbuild
Default: false
#### stderr
> Show errors of msbuild
Default: true
#### errorOnFail
> If the MSBuild job fails with an error, this will cause the gulp-msbuild stream to return an error thus causing the gulp task to fail. This is useful if using an automated build server such as Jenkins where a failing MSBuild should also cause the overall build job to fail.
Default: false
#### logCommand
> Logs the msbuild command that will be executed.
Default: false
#### targets
> Specify Build Targets
Default:
`javascript
['Rebuild']
`
#### configuration
> Specify Build Configuration (Release or Debug)
Default: Release
Hint: You can also specify the Build Configuration using the properties option
`js
properties: { Configuration: 'Debug' }
`
#### solutionPlatform
> Specify the Solution Platform (e.g. x86, x64, AnyCPU)
Hint: You can also specify the Solution Platform using the properties option
`js
properties: { Platform: 'AnyCPU' }
`
#### toolsVersion
> Specify the .NET Tools-Version
Default: 4.0
Possible Values: 1.0, 1.1, 2.0, 3.5, 4.0, 12.0, 14.0, 15.0, `'auto'`
`'auto'` attempts to find the latest version >= 12.0, with a fallback to 4.0
This parameter can be omitted by explicitely set them to null or undefined.
#### architecture
> Specify the Architecture
Default: Auto-detected
Possible Values: x86, x64
Example:
`javascript
msbuild({ architecture: 'x86' })
`
#### properties
> Specify Custom Build Properties
Default: none
Example:
`javascript
msbuild({ properties: { WarningLevel: 2 } })
`
Hint: Property values can use `gulp-util` templates (e.g. `"<%= file.path %>"`)
#### verbosity
> Specify the amount of information to display in the build output
Default: normal
Possible Values: quiet, minimal, normal, detailed, diagnostic
#### maxcpucount
> Specify Maximal CPU-Count to use
Default: 0 = Automatic selection
Possible Values: -1 (MSBuild Default), 0 (Automatic), > 0 (Concrete value)
#### nodeReuse
> Specify whether to enable or disable the re-use of MSBuild nodes
Default: true = Nodes remain after the build finishes so that subsequent builds can use them
Possible Values: true (MSBuild Default), false
#### nologo
> Suppress Startup Banner and Copyright Message of MSBuild
Default: false -> _Show Startup Banner and Copyright Message_
#### fileLoggerParameters
> Specify the parameters for the MSBuild File Logger.
Default: None
Example:
`javascript
msbuild({ fileLoggerParameters: 'LogFile=Build.log;Append;Verbosity=diagnostic' })
`
Hint: Logger parameters options can use `gulp-util` templates (e.g. `"<%= file.path %>"`)
#### consoleLoggerParameters
> Specify the parameters for the MSBuild Console Logger. (See fileLoggerParameters for a usage example)
Default: None
Hint: Logger parameters options can use `gulp-util` templates (e.g. `"<%= file.path %>"`)
#### loggerParameters
> Specify the parameters for a custom MSBuild Logger.
Default: None
Example:
`javascript
msbuild({ loggerParameters: 'XMLLogger,./MyLogger.dll;OutputAsHTML' })
`
Hint: Logger parameters options can use `gulp-util` templates (e.g. `"<%= file.path %>"`)
#### customArgs
> Specify custom msbuild arguments, which don't have a own property in
> gulp-msbuild.
Default: None
Example:
`javascript
msbuild({ customArgs: ['/noautoresponse'] })
``