mirror of
https://github.com/YACReader/yacreader
synced 2025-05-26 18:30:26 -04:00
82 lines
3.9 KiB
YAML
82 lines
3.9 KiB
YAML
parameters:
|
|
name: Windows_x64
|
|
architecture: 'x64'
|
|
qt_version: '6.2.2'
|
|
qt_spec: 'msvc2019_64'
|
|
qt_aqt_spec: 'win64_msvc2019_64'
|
|
vc_redist_url: 'https://aka.ms/vs/17/release/vc_redist.x64.exe'
|
|
vc_redist_file_name: 'vc_redist.x64.exe'
|
|
vc_vars: 'vcvars64.bat'
|
|
|
|
jobs:
|
|
- job: ${{ parameters.name }}
|
|
timeoutInMinutes: 90
|
|
dependsOn: CodeFormatValidation
|
|
variables:
|
|
- ${{ if and(eq(variables['System.TeamFoundationCollectionUri'], 'https://dev.azure.com/luisangelsm/'), or(eq(variables['Build.SourceBranch'], 'refs/heads/master'), eq(variables['Build.SourceBranch'], 'refs/heads/develop'))) }}:
|
|
- group: windows-codesign
|
|
pool:
|
|
vmImage: 'windows-2019'
|
|
steps:
|
|
- task: UsePythonVersion@0
|
|
inputs:
|
|
versionSpec: '3.10'
|
|
architecture: 'x64'
|
|
- script: |
|
|
pip install -U pip
|
|
pip install aqtinstall
|
|
mkdir C:\Qt
|
|
python -m aqt install-qt windows desktop ${{ parameters.qt_version }} ${{ parameters.qt_aqt_spec }} -O c:\Qt -m qt5compat qtmultimedia qtimageformats
|
|
dir C:\Qt\${{ parameters.qt_version }}\${{ parameters.qt_spec }}\bin
|
|
choco install -y wget
|
|
choco install innosetup
|
|
mkdir $(Build.SourcesDirectory)\compressed_archive
|
|
wget "https://github.com/YACReader/yacreader-7z-deps/blob/main/7z2301-src.7z?raw=true" -O $(Build.SourcesDirectory)\compressed_archive\7z2301-src.7z
|
|
7z x $(Build.SourcesDirectory)\compressed_archive\7z2301-src.7z -o$(Build.SourcesDirectory)\compressed_archive\lib7zip
|
|
wget "${{ parameters.vc_redist_url }}" -O $(Build.SourcesDirectory)\${{ parameters.vc_redist_file_name }}
|
|
displayName: 'Install dependencies'
|
|
- script: |
|
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\${{ parameters.vc_vars }}"
|
|
set PATH=C:\Qt\${{ parameters.qt_version }}\${{ parameters.qt_spec }}\bin;%PATH%
|
|
set DEFINES_VAR=DEFINES+="BUILD_NUMBER=\\\\\\\"$(Build.BuildNumber)\\\\\\\""
|
|
qmake CONFIG+="7zip" %DEFINES_VAR%
|
|
nmake
|
|
displayName: 'Build'
|
|
- script: |
|
|
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\${{ parameters.vc_vars }}"
|
|
set PATH=C:\Qt\${{ parameters.qt_version }}\${{ parameters.qt_spec }}\bin;%PATH%
|
|
nmake check TESTARGS="-maxwarnings 100000"
|
|
displayName: 'Run tests'
|
|
- ${{ if and(eq(variables['System.TeamFoundationCollectionUri'], 'https://dev.azure.com/luisangelsm/'), or(eq(variables['Build.SourceBranch'], 'refs/heads/master'), eq(variables['Build.SourceBranch'], 'refs/heads/develop'))) }}:
|
|
- task: DownloadSecureFile@1
|
|
name: pfxFile
|
|
displayName: 'Get the pfx file certificate'
|
|
inputs:
|
|
secureFile: 'certificate.pfx'
|
|
- ${{ if and(eq(variables['System.TeamFoundationCollectionUri'], 'https://dev.azure.com/luisangelsm/'), or(eq(variables['Build.SourceBranch'], 'refs/heads/master'), eq(variables['Build.SourceBranch'], 'refs/heads/develop'))) }}:
|
|
- script: |
|
|
set PATH=C:\Qt\${{ parameters.qt_version }}\${{ parameters.qt_spec }}\bin;%PATH%
|
|
cd $(Build.SourcesDirectory)\ci\win
|
|
.\create_installer.cmd ${{ parameters.architecture }} 7z $(Build.BuildNumber) qt6 $(pfxFile.secureFilePath) %PASSWORD%
|
|
env:
|
|
PASSWORD: $(pfxPassword)
|
|
displayName: 'Create installer'
|
|
- ${{ else }}:
|
|
- script: |
|
|
set PATH=C:\Qt\${{ parameters.qt_version }}\${{ parameters.qt_spec }}\bin;%PATH%
|
|
cd $(Build.SourcesDirectory)\ci\win
|
|
.\create_installer.cmd ${{ parameters.architecture }} 7z $(Build.BuildNumber) qt6
|
|
displayName: 'Create installer'
|
|
- task: CopyFiles@2
|
|
inputs:
|
|
sourceFolder: $(Build.SourcesDirectory)\ci\win\Output\
|
|
contents: '*'
|
|
targetFolder: $(Build.ArtifactStagingDirectory)
|
|
- task: PublishPipelineArtifact@1
|
|
inputs:
|
|
path: $(Build.ArtifactStagingDirectory)
|
|
artifactName: Windows ${{ parameters.architecture }} $(Build.BuildNumber) 7z Qt6 Installer
|
|
|
|
|
|
|