-version: 1.4.1.{build}
+version: 3.6.0.{build}
-os: Visual Studio 2017
+os: Visual Studio 2022
-assembly_info:
- patch: true
- file: OpenTween\Properties\AssemblyInfo.cs
- assembly_file_version: '{version}'
+environment:
+ matrix:
+ - RELEASE_TAG: 'false'
+ - RELEASE_TAG: 'true'
+
+configuration:
+ - Debug
+ - Release
+
+matrix:
+ exclude:
+ - RELEASE_TAG: 'false'
+ configuration: Release
+ - RELEASE_TAG: 'true'
+ configuration: Debug
+
+branches:
+ only:
+ - develop
+ - /^OpenTween.+/ # release tag
+
+for:
+ - # for dev build
+ matrix:
+ only:
+ - RELEASE_TAG: 'false'
+ skip_tags: true
+ assembly_info:
+ patch: true
+ file: OpenTween\Properties\AssemblyInfo.cs
+ assembly_version: '{version}'
+ artifacts:
+ - name: OpenTween.zip
+ path: OpenTween_dev-$(APPVEYOR_BUILD_NUMBER).zip
+ - name: OpenTween.pdb
+ path: OpenTween.pdb
+ - # for release build
+ matrix:
+ only:
+ - RELEASE_TAG: 'true'
+ skip_non_tags: true
+ artifacts:
+ - name: OpenTween.zip
+ path: $(APPVEYOR_REPO_TAG_NAME).zip
+ - name: OpenTween.pdb
+ path: OpenTween.pdb
build:
project: OpenTween.sln
verbosity: minimal
cache:
- - ./packages/
+ - '%UserProfile%\.nuget\packages -> OpenTween\OpenTween.csproj, OpenTween.Tests\OpenTween.Tests.csproj'
+
+init:
+ - git config --global core.autocrlf true
before_build:
- nuget restore
test_script:
- - .\packages\OpenCover.4.6.519\tools\OpenCover.Console.exe -target:".\packages\xunit.runner.console.2.2.0\tools\xunit.console.exe" -targetargs:".\OpenTween.Tests\bin\Debug\OpenTween.Tests.dll -noshadow -appveyor" -register:user -filter:"+[OpenTween*]* -[OpenTween.Tests]*" -excludebyfile:"*.Designer.cs" -skipautoprops -hideskipped:All -returntargetcode -output:coverage.xml
+ - cmd: |
+ set altCoverVersion=8.6.61
+ set xunitVersion=2.4.2
+ set targetFramework=net48
+ set nugetPackages=%UserProfile%\.nuget\packages
-after_test:
- - npm install codecov --save
- - ./node_modules/.bin/codecov -f coverage.xml
+ %nugetPackages%\altcover\%altCoverVersion%\tools\net472\AltCover.exe --inputDirectory .\OpenTween.Tests\bin\%CONFIGURATION%\%targetFramework%\ --outputDirectory .\__Instrumented\ --assemblyFilter "?^OpenTween(?!\.Tests)" --typeFilter "?^OpenTween\." --fileFilter "\.Designer\.cs" --visibleBranches
- - del %APPVEYOR_BUILD_FOLDER%\OpenTween\bin\Debug\OpenTween.pdb
- - 7z a OpenTween_dev-%APPVEYOR_BUILD_NUMBER%.zip %APPVEYOR_BUILD_FOLDER%\OpenTween\bin\Debug\*
+ %nugetPackages%\altcover\%altCoverVersion%\tools\net472\AltCover.exe runner --recorderDirectory .\__Instrumented\ --executable %nugetPackages%\xunit.runner.console\%xunitVersion%\tools\net472\xunit.console.exe -- .\__Instrumented\OpenTween.Tests.dll
-artifacts:
- - name: OpenTween.zip
- path: OpenTween_dev-$(APPVEYOR_BUILD_NUMBER).zip
+after_test:
+ - ps: |
+ Invoke-WebRequest -Uri https://uploader.codecov.io/latest/windows/codecov.exe -Outfile codecov.exe
+ .\codecov.exe -f coverage.xml
+ - ps: |
+ $env:PATH = $env:PATH + ';C:\Program Files\Microsoft Visual Studio\2022\Community\Msbuild\Current\Bin\Roslyn\;C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\'
+ $binDir = '.\OpenTween\bin\' + $env:CONFIGURATION + '\net48\'
+ if ($env:RELEASE_TAG -eq 'true') {
+ $destPath = $env:APPVEYOR_REPO_TAG_NAME + '.zip'
+ } else {
+ $destPath = 'OpenTween_dev-' + $env:APPVEYOR_BUILD_NUMBER + '.zip'
+ }
+ if ($env:APPVEYOR_PULL_REQUEST_HEAD_COMMIT -ne $null) {
+ $headCommit = $env:APPVEYOR_PULL_REQUEST_HEAD_COMMIT
+ } else {
+ $headCommit = 'HEAD'
+ }
+ .\tools\build-zip-archive.ps1 -BinDir $binDir -DestPath $destPath -HeadCommit $headCommit
+ Copy-Item ($binDir + 'OpenTween.pdb') -Destination '.\'
# vim: et fenc=utf-8 sts=2 sw=2 ts=2