diff --git a/PitchTracker/PitchTracker.vcxproj b/PitchTracker/PitchTracker.vcxproj index 89194dd7..e601abf7 100644 --- a/PitchTracker/PitchTracker.vcxproj +++ b/PitchTracker/PitchTracker.vcxproj @@ -225,4 +225,8 @@ xcopy "$(OutDir)*.pdb" "$(SolutionDir)Output\libs\unmanaged\x86\" /I /Y + + + true + \ No newline at end of file diff --git a/appveyor.yml b/appveyor.yml index deca340e..8fdf1640 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -14,6 +14,7 @@ init: - git config --global core.autocrlf true install: - ps: | + $Env:VOCALUXE_SKIP_POSTBUILD = $true $Env:CurrentCommitSha = "$(git rev-parse --verify HEAD)" if((-not $Env:githubRepoApiUri) -or ($Env:APPVEYOR_ACCOUNT_NAME -eq "VocaluxeBuildBot")){ @@ -32,9 +33,17 @@ install: } else{ $Env:TAG_NAME_WITH_BRANCH_NAME_FALLBACK = $Env:APPVEYOR_REPO_BRANCH - } + } + choco install "opencover.portable" -y before_build: - ps: | + $Env:MAIN_REPO = $False + + if($Env:APPVEYOR_REPO_NAME -eq "Vocaluxe/Vocaluxe"){ + $Env:MAIN_REPO = $True + Write-Host "Main repo Vocaluxe/Vocaluxe detected" + } + Try { Start-FileDownload 'https://github.com/lukeIam/VocaluxeDependencies/blob/master/zips/themes/vocaluxe.themes.genius.video.zip?raw=true' @@ -45,8 +54,34 @@ before_build: { Write-Warning "Genius-Video download failed" } + nuget restore -DisableParallelProcessing - + + if($Env:MAIN_REPO -and ($Env:PLATFORM -eq 'x64')) + { + if ($Env:APPVEYOR_PULL_REQUEST_NUMBER){ + choco install "msbuild-sonarqube-runner" -y + SonarScanner.MSBuild.exe begin ` + /k:"Vocaluxe" ` + /d:sonar.organization="vocaluxe" ` + /d:sonar.host.url="https://sonarcloud.io" ` + /d:sonar.login="$Env:SonarQubeToken" ` + /d:"sonar.pullrequest.key=$env:APPVEYOR_PULL_REQUEST_NUMBER" ` + /d:"sonar.pullrequest.base=$env:APPVEYOR_REPO_BRANCH" ` + /d:"sonar.pullrequest.branch=$env:APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH" + } + elseif($Env:APPVEYOR_REPO_BRANCH -eq 'develop'){ + choco install "msbuild-sonarqube-runner" -y + SonarScanner.MSBuild.exe begin ` + /k:"Vocaluxe" ` + /d:sonar.organization="vocaluxe" ` + /d:sonar.host.url="https://sonarcloud.io" ` + /v:"$Env:GIT_VERSION_TAG" ` + /d:sonar.login="$Env:SonarQubeToken" ` + /d:sonar.cs.nunit.reportsPaths=".\TestResult.xml" ` + /d:sonar.cs.opencover.reportsPaths=".\CoverageResult.xml" + } + } build: project: Vocaluxe.sln verbosity: normal @@ -54,14 +89,7 @@ after_build: - ps: | ./.appveyor/runGitLink.ps1 - cd Output - - $Env:MAIN_REPO = $False - - if($Env:APPVEYOR_REPO_NAME -eq "Vocaluxe/Vocaluxe"){ - $Env:MAIN_REPO = $True - Write-Host "Main repo Vocaluxe/Vocaluxe detected" - } + cd Output $forkBuildTag = "" if(($Env:MAIN_REPO -ne $True) -or ($Env:APPVEYOR_ACCOUNT_NAME -ne "VocaluxeBuildBot")){ @@ -81,6 +109,22 @@ after_build: .\.appveyor\nightlyDetect.ps1 .\.appveyor\moveTagForSpecialBranches.ps1 } +test_script: +- ps: | + if (($Env:MAIN_REPO) -and ($Env:PLATFORM -eq 'x64') -and ($Env:APPVEYOR_PULL_REQUEST_NUMBER -or $Env:APPVEYOR_REPO_BRANCH -eq 'develop')){ + OpenCover.Console.exe -register:user -target:"nunit3-console.exe" -targetargs:".\Tests\bin\Release\Tests.dll --result=.\TestResult.xml;format=AppVeyor" -output:".\CoverageResult.xml" + } + else{ + nunit3-console.exe ".\Tests\bin\Release\Tests.dll" --result=".\TestResult.xml;format=AppVeyor" + } + $wc = New-Object 'System.Net.WebClient' + $wc.UploadFile("https://ci.appveyor.com/api/testresults/nunit3/$($env:APPVEYOR_JOB_ID)", (Resolve-Path .\TestResult.xml)) + +after_test: +- ps: | + if (($Env:MAIN_REPO) -and ($Env:PLATFORM -eq 'x64') -and ($Env:APPVEYOR_PULL_REQUEST_NUMBER -or $Env:APPVEYOR_REPO_BRANCH -eq 'develop')){ + SonarScanner.MSBuild.exe end /d:sonar.login="$Env:SonarQubeToken" + } before_deploy: - ps: ./.appveyor/prepareDeploy.ps1 after_deploy: