tasks/build.process.ps1

# Build process flags
$CleanBuild = $false
$SkipTests = $false
$SkipTestReport = $false

# Esoteric build options
$EnableGitVersionAdoVariableWorkaround = $false

# Define overall build process
task PreVersion
task VersionCore GitVersion
task PostVersion
task Version PreVersion,VersionCore,PostVersion

task PreBuild
task CleanCore -If {$CleanBuild} CleanSolution
task BuildCore BuildSolution
task PostBuild
task Build PreBuild,CleanCore,BuildCore,PostBuild

task PreTest
task TestCore RunTests
task PostTest
task Test -If {!$SkipTests} PreTest,TestCore,PostTest

task PreTestReport
task TestReportCore GenerateTestReport
task PostTestReport
task TestReport -If {!$SkipTests -and !$SkipTestReport} PreTestReport,TestReportCore,PostTestReport

task PrePackage
task PackageCore BuildSolutionPackages
task PostPackage
task Package PrePackage,PackageCore,PostPackage


task FullBuild Version,
               Build,
               Test,
               TestReport,
               Package