forked from loresoft/InstructorIQ
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.ps1
35 lines (27 loc) · 1.22 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
34
Param(
[string]$version = $env:APPVEYOR_BUILD_VERSION
)
$workingDirectory = Resolve-Path -Path .\
$buildDirectory = Join-Path -Path $workingDirectory -ChildPath "build"
If ((Test-Path -Path $buildDirectory)) {
Remove-Item $buildDirectory -Recurse -Force
}
Else {
New-Item -ItemType Directory -Force -Path $buildDirectory
}
If (!$version) {
$version = "1.0.0.0"
}
# build database
Write-Host "*** Build Database ***"
& msbuild $workingDirectory\database\InstructorIQ.sln /t:Build /p:Configuration=Release /p:OutputPath=$buildDirectory\database
# build service
Write-Host "*** Build Service ***"
& dotnet publish $workingDirectory\service\src\InstructorIQ.WebApplication\InstructorIQ.WebApplication.csproj -c Release -o $buildDirectory\website
& dotnet publish $workingDirectory\service\src\InstructorIQ.JobRunner\InstructorIQ.JobRunner.csproj -c Release -o $buildDirectory\runner
# create package
Write-Host "*** Create Packages ***"
Copy-Item -Path $buildDirectory\runner -Destination $buildDirectory\website\App_Data\jobs\continuous\runner -Recurse -Force
# zip package
Write-Host "*** Zip Packages ***"
Compress-Archive -Path $buildDirectory\website\* -DestinationPath $buildDirectory\InstructorIQ.Website.$version.zip