Parallel dotnet build process.

it's working 2m 24s instead of 3m 48s (sequential execution)
theis only one problem... write-host not working inside the workflow
This commit is contained in:
Igor Sychev 2017-09-02 14:14:33 +03:00
parent 0d0b812e99
commit 5b90e1efe4

View File

@ -8,6 +8,9 @@ if ([string]::IsNullOrEmpty($rootPath)) {
}
Write-Host "Root path used is $rootPath" -ForegroundColor Yellow
workflow BuildAndPublish {
param ([string] $rootPath
)
$projectPaths =
@{Path="$rootPath\src\Web\WebMVC";Prj="WebMVC.csproj"},
@{Path="$rootPath\src\Web\WebSPA";Prj="WebSPA.csproj"},
@ -21,19 +24,20 @@ $projectPaths =
@{Path="$rootPath\src\Services\Payment\Payment.API";Prj="Payment.API.csproj"},
@{Path="$rootPath\src\Web\WebStatus";Prj="WebStatus.csproj"}
$projectPaths | foreach {
$projectPath = $_.Path
$projectFile = $_.Prj
$outPath = $_.Path + "\obj\Docker\publish"
foreach -parallel ($item in $projectPaths) {
$projectPath = $item.Path
$projectFile = $item.Prj
$outPath = $item.Path + "\obj\Docker\publish"
$projectPathAndFile = "$projectPath\$projectFile"
Write-Host "Deleting old publish files in $outPath" -ForegroundColor Yellow
#Write-Host "Deleting old publish files in $outPath" -ForegroundColor Yellow
remove-item -path $outPath -Force -Recurse -ErrorAction SilentlyContinue
Write-Host "Publishing $projectPathAndFile to $outPath" -ForegroundColor Yellow
dotnet restore $projectPathAndFile
#Write-Host "Publishing $projectPathAndFile to $outPath" -ForegroundColor Yellow
dotnet build $projectPathAndFile
dotnet publish $projectPathAndFile -o $outPath
}
}
BuildAndPublish $rootPath
########################################################################################
# Delete old eShop Docker images