From 9376df87034cf87acc9b1ef9d8ca14a17ab0e27f Mon Sep 17 00:00:00 2001 From: pokamest Date: Wed, 2 Jun 2021 00:49:42 +0300 Subject: [PATCH] deploy fixes --- .travis.yml | 69 +++++++++++++++---- deploy/build_windows.bat | 10 +-- deploy/installer/config/windows.xml | 11 +-- .../meta/componentscript.js | 8 ++- .../org.amneziavpn.package/meta/package.xml | 4 +- 5 files changed, 72 insertions(+), 30 deletions(-) diff --git a/.travis.yml b/.travis.yml index 37685df4..4edacfb2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -21,7 +21,7 @@ jobs: brew install p7zip && \ pip3 install aqtinstall requests py7zr && \ python3 -m aqt install --outputdir $HOME/Qt $QT_VERSION mac desktop clang_64 -m qtbase && \ - python3 -m aqt tool --outputdir $HOME/Qt mac tools_ifw 4.1.0 qt.tools.ifw.41; + python3 -m aqt tool --outputdir $HOME/Qt mac tools_ifw 4.1 qt.tools.ifw.41; fi - bash deploy/build_macos.sh @@ -41,26 +41,29 @@ jobs: env: - PATH=/c/Python39:/c/Python39/Scripts:$PATH + - QT_VERSION=5.14.2 + - BUILD_ARCH="64" before_install: - - if [ ! -f /C/Qt/5.14.2/msvc2017/bin/qmake ]; then choco install python --version 3.9.1; fi + - if [ ! -f /C/Qt/$QT_VERSION/msvc2017_64/bin/qmake ]; then choco install python --version 3.9.1; fi script: - dir "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build" - dir "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools" - | - if [ ! -f /C/Qt/5.14.2/msvc2017/bin/qmake ]; then \ + if [ ! -f /C/Qt/$QT_VERSION/msvc2017_64/bin/qmake ]; then \ pip3 install aqtinstall requests py7zr && \ - python -m aqt install --outputdir /C/Qt 5.14.2 windows desktop win32_msvc2017 -m qtbase && \ - python -m aqt tool --outputdir /C/Qt windows tools_ifw 4.1.0 qt.tools.ifw.41; \ + python -m aqt install --outputdir /C/Qt $QT_VERSION windows desktop win32_msvc2017_64 -m qtbase && \ + python -m aqt tool --outputdir /C/Qt windows tools_ifw 4.1 qt.tools.ifw.41; \ fi - - echo 'call "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools\VsDevCmd.bat"' > winbuild.bat - - echo -e "\r\n" >> winbuild.bat - - echo 'call "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvarsamd64_x86.bat"' >> winbuild.bat - - echo -e "\r\n" >> winbuild.bat - - echo -e "set WIN_CERT_PW=$WIN_CERT_PW" >> winbuild.bat - - echo -e "\r\n" >> winbuild.bat - - echo -e "call deploy\\\build_windows.bat" >> winbuild.bat + - echo -e 'call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\BuildTools\\Common7\\Tools\\VsDevCmd.bat"\n' > winbuild.bat + - echo -e 'set BUILD_ARCH="64"\n' >> winbuild.bat + - echo -e 'set QT_BIN_DIR="c:\\Qt\\$QT_VERSION\\msvc2017_64\\bin"\n' >> winbuild.bat + - echo -e 'set QIF_BIN_DIR="c:\\Qt\\Tools\\QtInstallerFramework\\4.1\\bin"\n' >> winbuild.bat + - echo -e 'call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Auxiliary\\Build\\vcvars%BUILD_ARCH:"=%.bat"\n' >> winbuild.bat + - cat winbuild.bat + - echo -e 'set WIN_CERT_PW=$WIN_CERT_PW\n' >> winbuild.bat + - echo -e 'call deploy\\\build_windows.bat' >> winbuild.bat - cmd //c winbuild.bat deploy: @@ -68,11 +71,51 @@ jobs: token: $GH_TOKEN skip_cleanup: true file: - - "AmneziaVPN.exe" + - "AmneziaVPN_x64.exe" on: tags: true branch: master +- name: Windows + os: windows + + env: + - PATH=/c/Python39:/c/Python39/Scripts:$PATH + - QT_VERSION=5.14.2 + - BUILD_ARCH="32" + + before_install: + - if [ ! -f /C/Qt/$QT_VERSION/msvc2017/bin/qmake ]; then choco install python --version 3.9.1; fi + + script: + - dir "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build" + - dir "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\Tools" + - | + if [ ! -f /C/Qt/$QT_VERSION/msvc2017/bin/qmake ]; then \ + pip3 install aqtinstall requests py7zr && \ + python -m aqt install --outputdir /C/Qt $QT_VERSION windows desktop win32_msvc2017 -m qtbase && \ + python -m aqt tool --outputdir /C/Qt windows tools_ifw 4.1 qt.tools.ifw.41; \ + fi + - echo -e 'call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\BuildTools\\Common7\\Tools\\VsDevCmd.bat"\n' > winbuild.bat + - echo -e 'set BUILD_ARCH="32"\n' >> winbuild.bat + - echo -e 'set QT_BIN_DIR="c:\\Qt\\$QT_VERSION\\msvc2017\\bin"\n' >> winbuild.bat + - echo -e 'set QIF_BIN_DIR="c:\\Qt\\Tools\\QtInstallerFramework\\4.1\\bin"\n' >> winbuild.bat + - echo -e 'call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Auxiliary\\Build\\vcvars%BUILD_ARCH:"=%.bat"\n' >> winbuild.bat + - cat winbuild.bat + - echo -e 'set WIN_CERT_PW=$WIN_CERT_PW\n' >> winbuild.bat + - echo -e 'call deploy\\\build_windows.bat' >> winbuild.bat + - cmd //c winbuild.bat + + deploy: + provider: releases + token: $GH_TOKEN + skip_cleanup: true + file: + - "AmneziaVPN_x32.exe" + on: + tags: true + branch: master + deploy: skip_cleanup: true diff --git a/deploy/build_windows.bat b/deploy/build_windows.bat index 23f19282..ad5e6bd1 100644 --- a/deploy/build_windows.bat +++ b/deploy/build_windows.bat @@ -15,7 +15,7 @@ set SCRIPT_DIR=%PROJECT_DIR:"=%\deploy set WORK_DIR=%SCRIPT_DIR:"=%\build_%BUILD_ARCH:"=% rmdir /Q /S %WORK_DIR% -mkdir %SCRIPT_DIR:"=%\build +mkdir %WORK_DIR% set APP_NAME=AmneziaVPN @@ -27,7 +27,7 @@ set DEPLOY_DATA_DIR=%SCRIPT_DIR:"=%\data\windows\x%BUILD_ARCH:"=% set INSTALLER_DATA_DIR=%RELEASE_DIR:"=%\installer\packages\%APP_DOMAIN:"=%\data set PRO_FILE_PATH=%PROJECT_DIR:"=%\%APP_NAME:"=%.pro set QMAKE_STASH_FILE=%PROJECT_DIR:"=%\.qmake_stash -set TARGET_FILENAME=%PROJECT_DIR:"=%\%APP_NAME:"=%.exe +set TARGET_FILENAME=%PROJECT_DIR:"=%\%APP_NAME:"=%_x%BUILD_ARCH:"=%.exe echo "Environment:" echo "APP_FILENAME: %APP_FILENAME%" @@ -57,7 +57,7 @@ Del %TARGET_FILENAME% nmake /? cd %PROJECT_DIR% -"%QT_BIN_DIR:"=%\qmake" -spec win32-msvc -o deploy\build\Makefile +"%QT_BIN_DIR:"=%\qmake" -spec win32-msvc -o "%WORK_DIR:"=%\Makefile" cd %WORK_DIR% set CL=/MP @@ -81,11 +81,11 @@ signtool sign /v /sm /s My /n "Privacy Technologies OU" /fd sha256 /tr http://ti signtool sign /v /sm /s My /n "Privacy Technologies OU" /fd sha256 /tr http://timestamp.comodoca.com/?td=sha256 /td sha256 *.dll echo "Copying deploy data..." -xcopy %DEPLOY_DATA_DIR% %OUT_APP_DIR% /s /e /y /i /f +xcopy %DEPLOY_DATA_DIR% %OUT_APP_DIR% /s /e /y /i /f cd %SCRIPT_DIR% -xcopy %SCRIPT_DIR:"=%\installer %RELEASE_DIR:"=%\installer /s /e /y /i /f +xcopy %SCRIPT_DIR:"=%\installer %RELEASE_DIR:"=%\installer /s /e /y /i /f mkdir %INSTALLER_DATA_DIR% echo "Deploy finished, content:" diff --git a/deploy/installer/config/windows.xml b/deploy/installer/config/windows.xml index 803afbf7..7c1bb889 100644 --- a/deploy/installer/config/windows.xml +++ b/deploy/installer/config/windows.xml @@ -1,11 +1,11 @@ AmneziaVPN - 1.6.0.0 + 1.7.0.0 AmneziaVPN AmneziaVPN AmneziaVPN - @ApplicationsDir@/AmneziaVPN + @RootDir@/Program Files/AmneziaVPN 600 380 Modern @@ -17,11 +17,4 @@ true false true - - - https://amneziavpn.org/updates/windows - true - AmneziaVPN - repository for Windows - - diff --git a/deploy/installer/packages/org.amneziavpn.package/meta/componentscript.js b/deploy/installer/packages/org.amneziavpn.package/meta/componentscript.js index 94128aef..289e323c 100644 --- a/deploy/installer/packages/org.amneziavpn.package/meta/componentscript.js +++ b/deploy/installer/packages/org.amneziavpn.package/meta/componentscript.js @@ -68,7 +68,13 @@ Component.prototype.createOperations = function() "workingDirectory=@TargetDir@", "iconPath=@TargetDir@\\" + appExecutableFileName(), "iconId=0"); if (!vcRuntimeIsInstalled()) { - component.addElevatedOperation("Execute", "@TargetDir@\\" + "vc_redist.x86.exe", "/install", "/quiet", "/norestart", "/log", "vc_redist_2017_x86.log"); + if (systemInfo.currentCpuArchitecture.search("64") < 0) { + component.addElevatedOperation("Execute", "@TargetDir@\\" + "vc_redist.x86.exe", "/install", "/quiet", "/norestart", "/log", "vc_redist.log"); + } + else { + component.addElevatedOperation("Execute", "@TargetDir@\\" + "vc_redist.x64.exe", "/install", "/quiet", "/norestart", "/log", "vc_redist.log"); + } + } else { console.log("Microsoft Visual C++ 2017 Redistributable already installed"); } diff --git a/deploy/installer/packages/org.amneziavpn.package/meta/package.xml b/deploy/installer/packages/org.amneziavpn.package/meta/package.xml index 4f1f3816..9ff88cec 100644 --- a/deploy/installer/packages/org.amneziavpn.package/meta/package.xml +++ b/deploy/installer/packages/org.amneziavpn.package/meta/package.xml @@ -2,8 +2,8 @@ AmneziaVPN Installation package for AmneziaVPN - 1.6.0.0 - 2021-03-31 + 1.7.0.0 + 2021-05-31 true true true