|
|
|
version: '{branch}-{build}'
|
|
|
|
|
|
|
|
image: Visual Studio 2017
|
|
|
|
|
|
|
|
build:
|
|
|
|
verbosity: minimal
|
|
|
|
|
|
|
|
environment:
|
|
|
|
matrix:
|
|
|
|
- BUILD: 'Release'
|
|
|
|
CONFIG: installer
|
|
|
|
SHADOW_BUILD_DIR: C:\projects\qgroundcontrol\build_windows_install
|
|
|
|
QT_JOM_DIR: C:\Qt-QGC-5.12.6\Tools\QtCreator\bin
|
|
|
|
QT_QMAKE_DIR: C:\Qt-QGC-5.12.6\5.12.6\msvc2017_64\bin
|
|
|
|
|
|
|
|
install:
|
|
|
|
- git submodule update --init --recursive
|
|
|
|
- call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat"
|
|
|
|
- mkdir %LOCALAPPDATA%\QtProject && copy test\qtlogging.ini %LOCALAPPDATA%\QtProject\
|
|
|
|
- ps: |
|
|
|
|
Write-Host "Installing Qt..." -ForegroundColor Cyan
|
|
|
|
$qt7zPath = "$($env:USERPROFILE)\Qt-QGC-5.12.6.7z"
|
|
|
|
Write-Host "Downloading..."
|
|
|
|
(New-Object Net.WebClient).DownloadFile('https://qgroundcontrol.s3-us-west-2.amazonaws.com/dependencies/Qt-QGC-5.12.6.7z', $qt7zPath)
|
|
|
|
Write-Host "Unzipping..."
|
|
|
|
cmd /c start /wait 7z x $qt7zPath -oC:\
|
|
|
|
Write-Host "Installed" -ForegroundColor Green
|
|
|
|
- ps: |
|
|
|
|
Write-Host "Installing GStreamer..." -ForegroundColor Cyan
|
|
|
|
$msiPath = "$($env:USERPROFILE)\gstreamer-1.0-msvc-x86_64-1.18.1.msi"
|
|
|
|
Write-Host "Downloading..."
|
|
|
|
(New-Object Net.WebClient).DownloadFile('https://s3-us-west-2.amazonaws.com/qgroundcontrol/dependencies/gstreamer-1.0-msvc-x86_64-1.18.1.msi', $msiPath)
|
|
|
|
Write-Host "Installing..."
|
|
|
|
cmd /c start /wait msiexec /package $msiPath /passive ADDLOCAL=ALL
|
|
|
|
Write-Host "Installed" -ForegroundColor Green
|
|
|
|
- ps: |
|
|
|
|
Write-Host "Installing GStreamer dev..." -ForegroundColor Cyan
|
|
|
|
$msiPath = "$($env:USERPROFILE)\gstreamer-1.0-devel-msvc-x86_64-1.18.1.msi"
|
|
|
|
Write-Host "Downloading..."
|
|
|
|
(New-Object Net.WebClient).DownloadFile('https://s3-us-west-2.amazonaws.com/qgroundcontrol/dependencies/gstreamer-1.0-devel-msvc-x86_64-1.18.1.msi', $msiPath)
|
|
|
|
Write-Host "Installing..."
|
|
|
|
cmd /c start /wait msiexec /package $msiPath /passive ADDLOCAL=ALL
|
|
|
|
Write-Host "Installed" -ForegroundColor Green
|
|
|
|
|
|
|
|
build_script:
|
|
|
|
- ps: $env:STABLE_OR_DAILY = if ($env:APPVEYOR_REPO_TAG -eq $True) { "StableBuild" } else { "DailyBuild" }
|
|
|
|
- mkdir %SHADOW_BUILD_DIR% && cd %SHADOW_BUILD_DIR% && %QT_QMAKE_DIR%\qmake -r CONFIG+=%CONFIG% CONFIG+=%STABLE_OR_DAILY% %APPVEYOR_BUILD_FOLDER%\qgroundcontrol.pro
|
|
|
|
- cd %SHADOW_BUILD_DIR% && %QT_JOM_DIR%\jom
|
|
|
|
- if "%CONFIG%" EQU "installer" ( copy %SHADOW_BUILD_DIR%\staging\QGroundControl-installer.exe %APPVEYOR_BUILD_FOLDER%\QGroundControl-installer.exe )
|
|
|
|
# Generate the source server information to embed in the PDB
|
|
|
|
# Temporarily disabled while we try to figure out where this is located on appveyor image
|
|
|
|
# - '"C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\srcsrv\srctool.exe" -r -u "%SHADOW_BUILD_DIR%\qgc-app\qgroundcontrol.pdb" | grep qgroundcontrol | grep -v moc_ | grep -v libs\\mavlink | grep -v build_windows_install | python %APPVEYOR_BUILD_FOLDER%\deploy\genPDBsrcsrv.py > %SHADOW_BUILD_DIR%\qgc-app\qgroundcontrol.pdb.srcsrv'
|
|
|
|
# write the source server info
|
|
|
|
# - '"C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\srcsrv\pdbstr.exe" -w -i:%SHADOW_BUILD_DIR%\qgc-app\qgroundcontrol.pdb.srcsrv -p:%SHADOW_BUILD_DIR%\qgc-app\qgroundcontrol.pdb -s:srcsrv'
|
|
|
|
# build the symbol / PE store
|
|
|
|
# - 'cd %APPVEYOR_BUILD_FOLDER% && "C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\symstore.exe" add /compress /s symbols /f %SHADOW_BUILD_DIR%\qgc-app\qgroundcontrol.pdb /t qgroundcontrol'
|
|
|
|
# - 'cd %APPVEYOR_BUILD_FOLDER% && "C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\symstore.exe" add /compress /s symbols /f %SHADOW_BUILD_DIR%\qgc-app\qgroundcontrol.exe /t qgroundcontrol'
|
|
|
|
# - ps: 'cd $env:appveyor_build_folder; .\deploy\lowercaseify_symbolstore.ps1'
|
|
|
|
|
|
|
|
test_script:
|
|
|
|
- if "%CONFIG%" EQU "debug" ( %SHADOW_BUILD_DIR%\debug\qgroundcontrol --unittest )
|
|
|
|
|
|
|
|
artifacts:
|
|
|
|
- path: QGroundControl-installer.exe
|
|
|
|
name: qgcinstaller
|
|
|
|
- path: build_windows_install\staging\qgroundcontrol.pdb
|
|
|
|
name: pdb
|
|
|
|
|
|
|
|
deploy:
|
|
|
|
# deploy continuous builds to s3
|
|
|
|
- provider: S3
|
|
|
|
access_key_id:
|
|
|
|
secure: IGAojLMqokL+76DbdulmWDA3MTsxEBBi3ReVVSqTy9c=
|
|
|
|
secret_access_key:
|
|
|
|
secure: RiYqaR+3T2PMNz2j5ur8LCA6H/Zfd4jTX33CZE5iBxm+zaz4QLs25p0B7prpaoNN
|
|
|
|
bucket: qgroundcontrol
|
|
|
|
region: us-west-2
|
|
|
|
set_public: true
|
|
|
|
folder: builds/$(APPVEYOR_REPO_BRANCH)
|
|
|
|
artifact: qgcinstaller
|
|
|
|
on:
|
|
|
|
CONFIG: installer
|
|
|
|
appveyor_repo_tag: false
|
|
|
|
|
|
|
|
# Symbols for daily builds are currently turned off due to AppVeyor artifact storage limits
|
|
|
|
# deploy daily build symbols to s3
|
|
|
|
# - provider: S3
|
|
|
|
# access_key_id:
|
|
|
|
# secure: IGAojLMqokL+76DbdulmWDA3MTsxEBBi3ReVVSqTy9c=
|
|
|
|
# secret_access_key:
|
|
|
|
# secure: RiYqaR+3T2PMNz2j5ur8LCA6H/Zfd4jTX33CZE5iBxm+zaz4QLs25p0B7prpaoNN
|
|
|
|
# bucket: qgroundcontrol
|
|
|
|
# region: us-west-2
|
|
|
|
# set_public: true
|
|
|
|
# folder: cisyms
|
|
|
|
# artifact: symbols
|
|
|
|
# on:
|
|
|
|
# CONFIG: installer
|
|
|
|
# appveyor_repo_tag: false
|
|
|
|
|
|
|
|
# deploy release symbols to s3
|
|
|
|
# - provider: S3
|
|
|
|
# access_key_id:
|
|
|
|
# secure: IGAojLMqokL+76DbdulmWDA3MTsxEBBi3ReVVSqTy9c=
|
|
|
|
# secret_access_key:
|
|
|
|
# secure: RiYqaR+3T2PMNz2j5ur8LCA6H/Zfd4jTX33CZE5iBxm+zaz4QLs25p0B7prpaoNN
|
|
|
|
# bucket: qgroundcontrol
|
|
|
|
# region: us-west-2
|
|
|
|
# set_public: true
|
|
|
|
# folder: releasesyms
|
|
|
|
# artifact: symbols
|
|
|
|
# on:
|
|
|
|
# CONFIG: installer
|
|
|
|
# appveyor_repo_tag: true
|
|
|
|
|
|
|
|
# deploy tagged releases to Github releases
|
|
|
|
- provider: GitHub
|
|
|
|
auth_token:
|
|
|
|
secure: dzWLqd0eTKjrAWC5LgqVnwLemmrNdddGA2ZZn/OthAP37mwCLkP2C1zil7ivmEE8
|
|
|
|
artifact: qgcinstaller
|
|
|
|
draft: false
|
|
|
|
prerelease: false
|
|
|
|
on:
|
|
|
|
CONFIG: installer
|
|
|
|
appveyor_repo_tag: true
|
|
|
|
|
|
|
|
# deploy tagged releases to s3 version folder
|
|
|
|
- provider: S3
|
|
|
|
access_key_id:
|
|
|
|
secure: IGAojLMqokL+76DbdulmWDA3MTsxEBBi3ReVVSqTy9c=
|
|
|
|
secret_access_key:
|
|
|
|
secure: RiYqaR+3T2PMNz2j5ur8LCA6H/Zfd4jTX33CZE5iBxm+zaz4QLs25p0B7prpaoNN
|
|
|
|
bucket: qgroundcontrol
|
|
|
|
region: us-west-2
|
|
|
|
set_public: true
|
|
|
|
folder: $(APPVEYOR_REPO_TAG_NAME)
|
|
|
|
artifact: qgcinstaller
|
|
|
|
on:
|
|
|
|
CONFIG: installer
|
|
|
|
appveyor_repo_tag: true
|
|
|
|
|
|
|
|
# deploy tagged releases to s3 latest folder
|
|
|
|
- provider: S3
|
|
|
|
access_key_id:
|
|
|
|
secure: IGAojLMqokL+76DbdulmWDA3MTsxEBBi3ReVVSqTy9c=
|
|
|
|
secret_access_key:
|
|
|
|
secure: RiYqaR+3T2PMNz2j5ur8LCA6H/Zfd4jTX33CZE5iBxm+zaz4QLs25p0B7prpaoNN
|
|
|
|
bucket: qgroundcontrol
|
|
|
|
region: us-west-2
|
|
|
|
set_public: true
|
|
|
|
folder: latest
|
|
|
|
artifact: qgcinstaller
|
|
|
|
on:
|
|
|
|
CONFIG: installer
|
|
|
|
appveyor_repo_tag: true
|
|
|
|
|
|
|
|
# deploy pdb for tagged releases to s3 latest folder
|
|
|
|
- provider: S3
|
|
|
|
access_key_id:
|
|
|
|
secure: IGAojLMqokL+76DbdulmWDA3MTsxEBBi3ReVVSqTy9c=
|
|
|
|
secret_access_key:
|
|
|
|
secure: RiYqaR+3T2PMNz2j5ur8LCA6H/Zfd4jTX33CZE5iBxm+zaz4QLs25p0B7prpaoNN
|
|
|
|
bucket: qgroundcontrol
|
|
|
|
region: us-west-2
|
|
|
|
set_public: true
|
|
|
|
folder: latest
|
|
|
|
artifact: pdb
|
|
|
|
on:
|
|
|
|
CONFIG: installer
|
|
|
|
appveyor_repo_tag: true
|