wireshark/appveyor.yml

68 lines
2.5 KiB
YAML

version: build{build}
image: Visual Studio 2019
environment:
WIRESHARK_BASE_DIR: C:\wireshark-libs
matrix:
# Note: if VS2017 win32 is added, just use Qt msvc2015 (binary compatible).
- PLATFORM: x64
CMAKE_GENERATOR: Visual Studio 16 2019
QT5_BASE_DIR: C:\Qt\5.15\msvc2019_64
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
cache:
- '%WIRESHARK_BASE_DIR%'
- C:\ProgramData\chocolatey\bin
- C:\ProgramData\chocolatey\lib
install:
- choco install winflexbison
# Java is already installed, prevent an expensive upgrade (102 seconds).
- choco install --ignore-dependencies asciidoctorj docbook-bundle xsltproc
# Py2 fails the test_tshark_unicode_display_filter test, so use Py3.
- set PATH=C:\Python37-x64;C:\Python37-x64\Scripts;%PATH%
- pip install pytest pytest-xdist
- ps: New-Item -ItemType Directory -Force -Path $Env:WIRESHARK_BASE_DIR
- ps: | # For pkcs11 tests.
Invoke-WebRequest -Uri https://github.com/disig/SoftHSM2-for-Windows/releases/download/v2.5.0/SoftHSM2-2.5.0.msi -OutFile $Env:WIRESHARK_BASE_DIR\SoftHSM2-2.5.0.msi
& msiexec /qn /i $Env:WIRESHARK_BASE_DIR\SoftHSM2-2.5.0.msi
# https://help.appveyor.com/discussions/questions/18777-how-to-use-vcvars64bat-from-powershell
- ps: cmd.exe /c "call `"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat`" && set > %temp%\vcvars.txt"
- ps: Get-Content "$env:temp\vcvars.txt" | Foreach-Object { if ($_ -match "^(.*?)=(.*)$") { Set-Content "env:\$($matches[1])" $matches[2] } }
# Note: the NSIS installer lacks debug dlls for Debug builds.
configuration: RelWithDebInfo
build:
parallel: true
project: build\Wireshark.sln
before_build:
- python3 tools/make-version.py --set-release --untagged-version-extra=-{vcsinfo}-AppVeyor --tagged-version-extra=-AppVeyor
- mkdir build
- cd build
- cmake -E time cmake -DCMAKE_SYSTEM_VERSION=10.0.20348.0 -G "%CMAKE_GENERATOR%" ..
after_build:
- msbuild /m wireshark_nsis_prep.vcxproj
- msbuild /m wireshark_nsis.vcxproj
# Publish installers only for development branches to avoid exceeding the
# artifact storage limit of 50 GB.
- ps: |
if ($Env:APPVEYOR_REPO_BRANCH -notlike "master*") {
Get-Item packaging\nsis\Wireshark-*.exe | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
}
before_test:
- msbuild /m test-programs.vcxproj
test_script:
- pytest
on_finish:
- ps: |
$Tshark = "run\\$Env:CONFIGURATION\\tshark.exe"
if (Test-Path $Tshark) { & $Tshark --version }
deploy: off