Skip to content

Commit e3f5049

Browse files
author
Mindaugas Veblauskas
committed
Merge branch 'release/3.4.3'
2 parents 0137c33 + dbfbd84 commit e3f5049

File tree

431 files changed

+9276
-6489
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

431 files changed

+9276
-6489
lines changed

.gitlab-ci-templates.yml

Lines changed: 42 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,22 @@
11
.test_execution_script:
22
stage: ui-test
3-
dependencies:
4-
- build-installer
3+
needs:
4+
- job: build-installer-debug-x64
5+
optional: true
6+
- job: build-installer-release-x64
7+
optional: true
8+
hooks:
9+
pre_get_sources_script:
10+
- Get-Process | Where-Object { $_.Name -like "proton*" } | Stop-Process -Force
511
tags:
612
- e2e-tests
7-
script:
13+
before_script:
814
- ci\test-scripts\uninstall-app.ps1
15+
script:
916
- ci\test-scripts\install-the-app.ps1
1017
- dotnet build src/Tests/ProtonVPN.UI.Tests/ProtonVPN.UI.Tests.csproj --arch x64 -o src/bin
1118
- VSTest.Console.exe src\bin\ProtonVPN.UI.Tests.dll /Settings:ci/test-scripts/TestRun/test-run-settings.xml /TestCaseFilter:"Category=${CATEGORY}"
19+
after_script:
1220
- ci\test-scripts\uninstall-app.ps1
1321
artifacts:
1422
when: always
@@ -24,21 +32,21 @@
2432
script:
2533
- echo "Building native dependencies..."
2634
- nuget restore ProtonVPN.InstallActions.sln
27-
- cmd.exe /c BuildDependencies.bat $DEPENDENCIES
35+
- cmd.exe /c BuildDependencies.bat ${DEPENDENCIES}
2836
- python ci\build-scripts\main.py add-commit-hash $env:CI_COMMIT_SHORT_SHA
2937
- python ci\build-scripts\main.py defaultConfig
3038
- dotnet build src\Builds\ProtonVPN.Builds.ConsoleJob\ProtonVPN.Builds.ConsoleJob.csproj
3139
- echo "Injecting CI variables"
3240
- src\bin\ProtonVPN.Builds.ConsoleJob.exe
3341
- echo "Publishing ${TYPE}..."
34-
- dotnet publish src/ProtonVPN.App/ProtonVPN.App.csproj -c ${TYPE} -r win-x64 --self-contained -o $BUILD_PATH
35-
- dotnet publish src/ProtonVPN.Service/ProtonVPN.Service.csproj -c ${TYPE} -r win-x64 --self-contained -o $BUILD_PATH
36-
- dotnet publish src/ProtonVPN.WireguardService/ProtonVPN.WireguardService.csproj -c ${TYPE} -r win-x64 --self-contained -o $BUILD_PATH
37-
- dotnet publish src/ProtonVPN.TlsVerify/ProtonVPN.TlsVerify.csproj -c ${TYPE} -r win-x64 --self-contained -o $BUILD_PATH
38-
- dotnet publish src/ProtonVPN.Launcher/ProtonVPN.Launcher.csproj -c ${TYPE} -r win-x64 --self-contained -o $BUILD_PATH
39-
- dotnet publish src/ProtonVPN.RestoreInternet/ProtonVPN.RestoreInternet.csproj -c ${TYPE} -r win-x64 --self-contained -o $BUILD_PATH
40-
- dotnet publish src/ProtonDrive.Downloader/ProtonDrive.Downloader.csproj -c ${TYPE} -r win-x64 --self-contained -o $BUILD_PATH
41-
- msbuild src\ProtonVPN.NativeHost\NativeHost.vcxproj /p:Configuration=Release /p:Platform=x64
42+
- dotnet publish src/ProtonVPN.App/ProtonVPN.App.csproj -c ${TYPE} -r win-${PLATFORM} --self-contained -o $BUILD_PATH
43+
- dotnet publish src/ProtonVPN.Service/ProtonVPN.Service.csproj -c ${TYPE} -r win-${PLATFORM} --self-contained -o $BUILD_PATH
44+
- dotnet publish src/ProtonVPN.WireguardService/ProtonVPN.WireguardService.csproj -c ${TYPE} -r win-${PLATFORM} --self-contained -o $BUILD_PATH
45+
- dotnet publish src/ProtonVPN.TlsVerify/ProtonVPN.TlsVerify.csproj -c ${TYPE} -r win-${PLATFORM} --self-contained -o $BUILD_PATH
46+
- dotnet publish src/ProtonVPN.Launcher/ProtonVPN.Launcher.csproj -c ${TYPE} -r win-${PLATFORM} --self-contained -o $BUILD_PATH
47+
- dotnet publish src/ProtonVPN.RestoreInternet/ProtonVPN.RestoreInternet.csproj -c ${TYPE} -r win-${PLATFORM} --self-contained -o $BUILD_PATH
48+
- dotnet publish src/ProtonInstaller/ProtonInstaller.csproj -c ${TYPE} -r win-${PLATFORM} --self-contained -o $BUILD_PATH
49+
- msbuild src\ProtonVPN.NativeHost\NativeHost.vcxproj /p:Configuration=Release /p:Platform=${PLATFORM}
4250
artifacts:
4351
expire_in: 1 day
4452
paths:
@@ -53,7 +61,7 @@
5361
- windows-vpn-signer
5462
script:
5563
- python ci\build-scripts\main.py update-gh-list
56-
- python ci\build-scripts\main.py app-installer $env:CI_COMMIT_SHORT_SHA
64+
- python ci\build-scripts\main.py app-installer $env:CI_COMMIT_SHORT_SHA ${PLATFORM}
5765
artifacts:
5866
paths:
5967
- Setup/Installers/
@@ -64,3 +72,24 @@
6472
ARTIFACT_COMPRESSION_LEVEL: "fastest"
6573
CACHE_COMPRESSION_LEVEL: "fastest"
6674
FASTZIP_ARCHIVER_BUFFER_SIZE: 128
75+
76+
.tests:
77+
stage: test
78+
script:
79+
- cmd.exe /c BuildDependencies.bat bin
80+
- dotnet build src\Builds\ProtonVPN.Builds.ConsoleJob\ProtonVPN.Builds.ConsoleJob.csproj
81+
- echo "Injecting CI variables"
82+
- src\bin\ProtonVPN.Builds.ConsoleJob.exe
83+
- dotnet restore ProtonVpn.sln
84+
- dotnet build ProtonVpn.sln
85+
- coverlet src\bin --target "dotnet" --targetargs "test ProtonVpn.sln -l ""console;verbosity=normal"" --filter ""TestCategory!=UI&TestCategory!=Connection&TestCategory!=Performance&TestCategory!=BTI"" --no-restore --no-build" --format cobertura --output .\coverage-reports --exclude "[*.Tests*]*" --exclude "[ProtonVPN.MarkupValidator]*" --exclude "[TestTools*]*" --exclude "[*.Installers]*"
86+
- powershell -Command "(gc coverage-reports.cobertura.xml) -replace '\\', '/' | Out-File -encoding UTF8 cobertura.xml"
87+
- ReportGenerator.exe "-reports:cobertura.xml" "-targetdir:.\code-coverage-report-html"
88+
artifacts:
89+
reports:
90+
coverage_report:
91+
coverage_format: cobertura
92+
path: cobertura.xml
93+
coverage: '/Total.*?([0-9]{1,3}.[0-9]{1,3})%/'
94+
variables:
95+
GOSRPONLY: "true"

0 commit comments

Comments
 (0)