-
-
Notifications
You must be signed in to change notification settings - Fork 364
/
appveyor.yml
174 lines (143 loc) · 3.9 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
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
version: 1.5.0.{build}
image: Visual Studio 2022
configuration:
- Debug-Asan
- Release
platform:
- Win32
- x64
- ARM64
environment:
PFX_ENC_PASS:
secure: vl0ntw9DjQdAno9nYVe0osg2tBmXD7gW75NLfxIvxMDW3GiVlJlFcESf7v6f7qKe
PFX_PASS:
secure: rgMy2ixSiaW0sk2CwaHwO5pK8U98ynzt/jjiGNRSYPfaAcOTRZ5oX+fsgqn6qP54
cache:
- vcpkg_installed -> vcpkg.json
- '%LOCALAPPDATA%\vcpkg\archives -> vcpkg.json'
matrix:
fast_finish: true
exclude:
- configuration: Debug-Asan
platform: ARM64
for:
-
branches:
only:
- /version-.*/
skip_non_tags: true
-
matrix:
only:
- platform: Win32
environment:
arch: x86
-
matrix:
only:
- platform: x64
environment:
arch: x64
-
matrix:
only:
- platform: ARM64
environment:
arch: arm64
init:
- pwsh: >-
if ($env:APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH -match '^l10n_') {
Write-Host 'Skipping translation branch pull request'
Exit-AppveyorBuild
}
# Decrypt the code signing certificate.
install:
- cmd: >-
git submodule init
git submodule update
.\Explorer++\ThirdParty\vcpkg\bootstrap-vcpkg.bat
nuget install secure-file -ExcludeVersion
IF DEFINED PFX_ENC_PASS (secure-file\tools\secure-file -decrypt %APPVEYOR_BUILD_FOLDER%\authenticode.pfx.enc -secret %PFX_ENC_PASS%)
before_build:
- pwsh: >-
if (Test-Path env:APPVEYOR_REPO_TAG_NAME) {
if ($env:APPVEYOR_REPO_TAG_NAME -match '-beta(-\d)?$') {
$env:RELEASE_MODE = 'beta'
} else {
$env:RELEASE_MODE = 'stable'
}
}
build:
project: Explorer++\Explorer++.sln
verbosity: minimal
after_build:
- pwsh: .appveyor\after_build.ps1
test_script:
- pwsh: .appveyor\test_script.ps1
artifacts:
- path: explorerpp_x86.zip
- path: explorerpp_x86_symbols.zip
- path: explorerpp_x64.zip
- path: explorerpp_x64_symbols.zip
- path: explorerpp_arm64.zip
- path: explorerpp_arm64_symbols.zip
- path: explorerpp_x86_setup.msi
- path: explorerpp_x64_setup.msi
- path: explorerpp_translations.zip
- path: latest_version.txt
before_deploy:
- pwsh: >-
$versionComponents = $env:APPVEYOR_BUILD_VERSION -split '\.'
$versionComponents = $versionComponents[0, 1, 2]
$releaseBuildVersion = $versionComponents -join '.'
if ($env:APPVEYOR_REPO_TAG_NAME -match '-beta(-\d)?$') {
$env:RELEASE_TITLE = "Explorer++ $releaseBuildVersion beta"
$env:PRERELEASE = $true
} else {
$env:RELEASE_TITLE = "Explorer++ $releaseBuildVersion"
$env:PRERELEASE = $false
}
deploy:
- provider: GitHub
auth_token:
secure: iU7ijPhvPEwymBKhGsZBwD9aDO3yPWpAq8iS5vaQcs5YdLRgcICuLOEJZ9UZIh9l
tag: $(APPVEYOR_REPO_TAG_NAME)
release: $(RELEASE_TITLE)
prerelease: $(PRERELEASE)
description: ''
artifact: /.*\.zip/
force_update: true
draft: true
on:
APPVEYOR_REPO_TAG: true
configuration: Release
branch: master
- provider: S3
access_key_id:
secure: C7kIRfyPAfkKkpF7Gh7BqEvqZVMMi2Ps0+iGFgCTiKE=
secret_access_key:
secure: agLWDF321Coa4wU5Wa07pwLm0QLQ2KPj9M0Ys5vVlOQID3+TDUtrvRX2R47yZbFJ
bucket: explorerplusplus-builds
region: us-east-1
folder: dev/$(APPVEYOR_BUILD_VERSION)
artifact: /.*\.zip|.*\.msi/
set_content_type: true
on:
APPVEYOR_REPO_TAG: false
configuration: Release
branch: master
- provider: S3
access_key_id:
secure: C7kIRfyPAfkKkpF7Gh7BqEvqZVMMi2Ps0+iGFgCTiKE=
secret_access_key:
secure: agLWDF321Coa4wU5Wa07pwLm0QLQ2KPj9M0Ys5vVlOQID3+TDUtrvRX2R47yZbFJ
bucket: explorerplusplus-builds
region: us-east-1
folder: dev
artifact: latest_version.txt
set_content_type: true
on:
APPVEYOR_REPO_TAG: false
platform: ARM64
configuration: Release
branch: master