1+ include :
2+ - project : ' tpe/testmo-reporter'
3+ ref : master
4+ file : ' /scenarios/testmo-multiple.yml'
5+
6+ - project : ' translations/generator'
7+ ref : master
8+ file : ' /jobs/commit-locales.gitlab-ci.yml'
9+
10+ - project : ' translations/generator'
11+ ref : master
12+ file : ' /jobs/sync-crowdin.gitlab-ci.yml'
13+
114variables :
215 PUBLIC_REPO_URL :
[email protected] :ProtonVPN/win-app.git 316 SCREENSHOT_PATH : src/bin/TestFailureData/
17+ TEST_REPORT_PATH : results/
18+ PROJECT_ID : " 1"
19+ MILESTONE : " Automation"
420
521stages :
622 - release
@@ -11,8 +27,11 @@ stages:
1127 - build-installer
1228 - internal-beta
1329 - publish-to-slack
30+ - test-setup
1431 - ui-test
32+ - test-upload
1533 - installation-test
34+ - test-cleanup
1635 - mirror
1736
1837sign :
@@ -120,7 +139,7 @@ build-installer-for-release:
120139 only :
121140 - master
122141 - /^release.*$/
123-
142+
124143prepare-internal-beta-release :
125144 stage : internal-beta
126145 tags :
@@ -149,43 +168,74 @@ build-installer-for-debug:
149168 - master
150169 - /^release.*$/
151170
171+ testmo-setup :
172+ allow_failure : true
173+ stage : test-setup
174+ rules :
175+ - if : $CI_PIPELINE_SOURCE == "merge_request_event"
176+ when : never
177+ - if : $CI_COMMIT_REF_NAME == "release/9.9.9" || $CI_COMMIT_REF_NAME == "master" || $CI_COMMIT_REF_NAME =~ "/debug/"
178+ when : never
179+ - if : $CI_COMMIT_REF_NAME =~ "/release/"
180+ variables :
181+ SOURCE : " Release"
182+ - when : always
183+ variables :
184+ SOURCE : " Automation"
185+ NAME : " $CI_JOB_STARTED_AT UTC"
186+ TAGS : " $CI_COMMIT_REF_SLUG"
187+
152188ui-test :
153189 stage : ui-test
154190 tags :
155191 - ui_tests
156192 script :
157193 - powershell -File ci\uninstall-app.ps1
158194 - powershell -File ci\install-the-app.ps1
159- - VSTest.Console.exe src\bin\ProtonVPN.UI.Tests.dll /TestCaseFilter:"Category=UI"
195+ - VSTest.Console.exe src\bin\ProtonVPN.UI.Tests.dll /TestCaseFilter:"Category=UI" /Settings:ci/TestRun/test-run-settings.xml
160196 - powershell -File ci\uninstall-app.ps1
197+ after_script :
198+ - powershell.exe ./ci/TestRun/converter-nunit-junit.ps1
161199 except :
162200 - /^debug.*$/
163201 - release/9.9.9
164202 - master
165203 artifacts :
166- when : on_failure
204+ when : always
205+ name : " result-ui"
167206 paths :
168207 - $SCREENSHOT_PATH
169- expire_in : 2 weeks
170-
208+ - " results/*"
209+ expire_in : 1 weeks
210+
171211connection-tests :
172212 stage : ui-test
173213 tags :
174214 - connection_tests
175215 script :
176216 - powershell -File ci\uninstall-app.ps1
177217 - powershell -File ci\install-the-app.ps1
178- - VSTest.Console.exe src\bin\ProtonVPN.UI.Tests.dll /TestCaseFilter:"Category=Connection"
218+ - VSTest.Console.exe src\bin\ProtonVPN.UI.Tests.dll /TestCaseFilter:"Category=Connection" /Settings:ci/TestRun/test-run-settings.xml
179219 - powershell -File ci\uninstall-app.ps1
220+ after_script :
221+ - powershell.exe ./ci/TestRun/converter-nunit-junit.ps1
180222 except :
181223 - /^debug.*$/
182224 - release/9.9.9
183225 - master
184226 artifacts :
185- when : on_failure
227+ when : always
228+ name : " result-connection"
186229 paths :
187230 - $SCREENSHOT_PATH
188- expire_in : 2 weeks
231+ - " results/*"
232+ expire_in : 1 weeks
233+
234+ testmo-upload :
235+ allow_failure : true
236+ stage : test-upload
237+ variables :
238+ RESULT_FOLDER : " results/*.xml"
189239
190240win-11-tests :
191241 stage : ui-test
@@ -196,7 +246,6 @@ win-11-tests:
196246 - powershell -File ci\uninstall-app.ps1
197247 - powershell -File ci\install-the-app.ps1
198248 - VSTest.Console.exe src\bin\ProtonVPN.UI.Tests.dll /TestCaseFilter:"Category=Smoke"
199- - powershell -File ci\uninstall-app.ps1
200249 except :
201250 - /^debug.*$/
202251 - release/9.9.9
@@ -224,33 +273,24 @@ mirror:
224273 - git push public master
225274 - git push public "$(git describe --abbrev=0)"
226275
227- include :
228- - project : ' translations/generator'
229- ref : master
230- file : ' /jobs/commit-locales.gitlab-ci.yml'
231-
232- - project : ' translations/generator'
233- ref : master
234- file : ' /jobs/sync-crowdin.gitlab-ci.yml'
235-
236276i18n-sync-crowdin :
237277 when : manual
238278 variables :
239- I18N_SYNC_CROWDIN_PROJECT : ' windows-vpn'
279+ I18N_SYNC_CROWDIN_PROJECT : ' windows-vpn'
240280 extends : .i18n-sync-crowdin-common
241281
242282i18n-manual-sync-crowdin :
243283 when : manual
244284 only :
245285 - branches
246286 variables :
247- I18N_SYNC_CROWDIN_PROJECT : ' windows-vpn'
287+ I18N_SYNC_CROWDIN_PROJECT : ' windows-vpn'
248288 extends : .i18n-sync-crowdin-common
249289
250290i18n-commit-translations :
251291 extends : .i18n-commit-locales-shared
252292 variables :
253- I18N_COMMIT_CROWDIN_PROJECT : ' windows-vpn'
293+ I18N_COMMIT_CROWDIN_PROJECT : ' windows-vpn'
254294 before_script :
255295 - git config --global core.autocrlf false
256296
@@ -261,10 +301,11 @@ create-release:
261301 only :
262302 refs :
263303 - develop
304+ - develop-v2
264305 script :
265306 - apt-get update && apt-get install -y python3 python3-pip git
266307 - python3 ci/release.py
267-
308+
268309send-slack-notification :
269310 tags :
270311 - windows
0 commit comments