-
Notifications
You must be signed in to change notification settings - Fork 14
/
build.ps1
33 lines (29 loc) · 1.04 KB
/
build.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
[CmdletBinding()]
Param(
[string]$Script = "build.cake",
[string]$Target = "Default",
[ValidateSet("Release", "Debug")]
[string]$Configuration = "Release",
[ValidateSet("Quiet", "Minimal", "Normal", "Verbose", "Diagnostic")]
[string]$Verbosity = "Verbose",
[Alias("DryRun","Noop")]
[switch]$WhatIf,
[Parameter(Position=0,Mandatory=$false,ValueFromRemainingArguments=$true)]
[string[]]$ScriptArgs
)
Write-Host -f Yellow "Preparing to run build script..."
if(!$PSScriptRoot){
$PSScriptRoot = Split-Path $MyInvocation.MyCommand.Path -Parent
}
$UseDryRun = "";
if($WhatIf.IsPresent)
{
$UseDryRun = "--dryrun"
}
Write-Host -f Yellow "Looking for Cake.Tool..."
if (-Not (& dotnet tool list -g | Select-String "cake.tool")) {
& dotnet tool install --global --configfile ./NuGet.config Cake.Tool
}
Write-Host -f Yellow "Running build script..."
& dotnet cake $Script --nuget_useinprocessclient=true --target=$Target --configuration=$Configuration --verbosity=$Verbosity $UseDryRun $ScriptArgs
exit $LASTEXITCODE