forked from transmission/transmission
-
Notifications
You must be signed in to change notification settings - Fork 0
/
appveyor.yml
121 lines (100 loc) · 3.5 KB
/
appveyor.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
version: '{build}'
environment:
AWS_ACCESS_KEY_ID:
secure: WQRc7y9bDiWiLpjm9lXdw9Q7n4extWau3W1ztQdqMgU=
AWS_SECRET_ACCESS_KEY:
secure: pP+D6ZtfXLDcEnl8pk/n3KApaV1fdGns4VkSyebs0zHzCutlvWj7ee16PalCcnBY
AWS_S3_BUCKET_NAME:
secure: Bf3x1Iruxg+l3tp+an+g9oE36EHxvyWrE8GTJzZh4Ss=
matrix:
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
TR_ARCH: x86
QT_VERSION: '5'
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
TR_ARCH: x86
QT_VERSION: '6'
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
TR_ARCH: x64
QT_VERSION: '5'
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
TR_ARCH: x64
QT_VERSION: '6'
branches:
only:
- main
- /^\d+\.\d+.*/
for:
-
matrix:
only:
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022
clone_folder: '%SystemDrive%\%TR_ARCH%-project'
cache:
- '%SystemDrive%\%TR_ARCH%-ccache'
init:
- pwsh: |
$Env:APPVEYOR_SAVE_CACHE_ON_ERROR = 'true'
install:
- pwsh: |
$Version = git describe --tags --abbrev=10 --always
if ($Version -ne $Env:APPVEYOR_REPO_BRANCH) {
$Version += "-${Env:APPVEYOR_REPO_BRANCH}"
}
$BuildIndex = 0
appveyor UpdateBuild -Version $Version
while ($LastExitCode -ne 0) {
$BuildIndex += 1
appveyor UpdateBuild -Version "${Version}+${BuildIndex}"
}
git submodule update --init --recursive
choco install python3 --pre
choco install nasm
choco install jom
choco install wixtoolset --version 3.11.2
choco install ccache
Remove-Item -Path (Join-Path $Env:SystemDrive OpenSSL-Win32) -Recurse
Remove-Item -Path (Join-Path $Env:SystemDrive OpenSSL-Win64) -Recurse
Install-Module -Name SignPath
build_script:
- pwsh: |
$Env:PATH = @(
(Join-Path $Env:SystemDrive Strawberry perl bin)
(Join-Path $Env:ProgramFiles NASM)
(Join-Path ${Env:ProgramFiles(x86)} 'WiX Toolset v3.11' bin)
$Env:PATH
) -join [System.IO.Path]::PathSeparator
$Env:CCACHE_DIR = "${Env:SystemDrive}\${Env:TR_ARCH}-ccache"
$Env:CCACHE_MAXSIZE = '500Mi'
Set-ExecutionPolicy -Scope Process Bypass
try {
& (Join-Path $Env:APPVEYOR_BUILD_FOLDER release windows main.ps1) `
-Mode Build `
-BuildArch $env:TR_ARCH `
-CCachePart App `
-UseQtVersion $Env:QT_VERSION `
-PackDebugSyms:$($Env:APPVEYOR_REPO_BRANCH -eq "main" -or $Env:APPVEYOR_REPO_TAG -eq "true")
} catch {
Write-Error ("{1}{0}{2}{0}{3}" -f [Environment]::NewLine, $_.ToString(), $_.InvocationInfo.PositionMessage, $_.ScriptStackTrace) -ErrorAction Continue
exit 1
}
test_script:
- pwsh: |
Set-ExecutionPolicy -Scope Process Bypass
try {
& (Join-Path $Env:APPVEYOR_BUILD_FOLDER release windows main.ps1) `
-Mode Test `
-BuildArch $env:TR_ARCH
} catch {
Write-Error ("{1}{0}{2}{0}{3}" -f [Environment]::NewLine, $_.ToString(), $_.InvocationInfo.PositionMessage, $_.ScriptStackTrace) -ErrorAction Continue
exit 1
}
artifacts:
- path: '*.msi'
- path: '*-pdb.7z'
deploy:
- provider: Webhook
url: https://app.signpath.io/API/v1/8c96c8c9-a72c-4b46-a53c-80aad617f6bc/Integrations/AppVeyor?ProjectKey=transmission&SigningPolicyKey=release-signing
authorization:
secure: PrvcykaHmPgJ0ENht1q58tCfjRcmybiOeHYrvtQtAGsfahWvniAfP66DqHxv872acpyf3FpJn2ETCeszoVuFGA==
on:
APPVEYOR_REPO_TAG: true