-
Notifications
You must be signed in to change notification settings - Fork 3.5k
/
Copy pathpack.ps1
43 lines (34 loc) · 1.1 KB
/
pack.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
34
35
36
37
38
39
40
41
42
43
. ".\common.ps1"
# Delete existing nupkg files
del *.nupkg
# Rebuild all solutions
foreach($solution in $solutions) {
$solutionFolder = Join-Path $rootFolder $solution
Set-Location $solutionFolder
dotnet restore
}
# Create all packages
$i = 0
$projectsCount = $projects.length
Write-Info "Running dotnet pack on $projectsCount projects..."
foreach($project in $projects) {
$i += 1
$projectFolder = Join-Path $rootFolder $project
$projectName = ($project -split '/')[-1]
# Create nuget pack
Write-Info "[$i / $projectsCount] - Packing project: $projectName"
Set-Location $projectFolder
#dotnet clean
dotnet pack -c Release --no-build -- /maxcpucount
if (-Not $?) {
Write-Error "Packaging failed for the project: $projectName"
exit $LASTEXITCODE
}
# Move nuget package
$projectName = $project.Substring($project.LastIndexOf("/") + 1)
$projectPackPath = Join-Path $projectFolder ("/bin/Release/" + $projectName + ".*.nupkg")
Move-Item -Force $projectPackPath $packFolder
Seperator
}
# Go back to the pack folder
Set-Location $packFolder