Some more fixes to build and deploy workflow #190
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build | |
on: | |
push: | |
paths-ignore: | |
- 'CONTRIBUTING.md' | |
- 'COPYING' | |
- 'CodingStyle.md' | |
- 'INSTALL.md' | |
- 'README.md' | |
branches: | |
- master | |
- development | |
- integration-0.6.0 | |
tags: | |
- v[0-9].[0-9].[0-9]* | |
pull_request: | |
branches: | |
- master | |
- development | |
- integration-0.6.0 | |
jobs: | |
build_linux: | |
if: "!contains(github.event.head_commit.message, '[skip ci]')" | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
include: | |
- qt_version: '5.15.4' | |
compiler_c: 'gcc' | |
compiler_cpp: 'g++' | |
qtkeychain_cache_version: '1' | |
- qt_version: '5.15.4' | |
compiler_c: 'clang' | |
compiler_cpp: 'clang++' | |
qtkeychain_cache_version: '1' | |
- qt_version: '6.7.3' | |
compiler_c: 'gcc' | |
compiler_cpp: 'g++' | |
qt6keychain_cache_version: '1' | |
- qt_version: '6.7.3' | |
compiler_c: 'clang' | |
compiler_cpp: 'clang++' | |
qt6keychain_cache_version: '1' | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install non-Qt dependencies | |
id: install_non_qt_deps | |
run: | | |
for i in 0..5 | |
do | |
export INSTALLED_DEPS=0 | |
sudo apt-get -qq update | |
sudo apt-get -qq install cmake ninja-build p7zip-full coreutils curl libxml2-dev libboost-dev libssl-dev libhunspell-dev xvfb wget libgtest-dev libgmock-dev libcups2-dev && export INSTALLED_DEPS=1 || true | |
if [ "$INSTALLED_DEPS" = "1" ]; then | |
break | |
fi | |
sleep 5 | |
done | |
if [ "$INSTALLED_DEPS" != "1" ]; then | |
echo "Failed to install non-Qt dependencies" | |
exit 1 | |
fi | |
- name: Fetch clang-format | |
id: fetch_clang_format | |
run: | | |
curl -Ls "https://github.com/muttleyxd/clang-tools-static-binaries/releases/download/master-32d3ac78/clang-format-18_linux-amd64" -o "/tmp/clang-format" | |
chmod +x /tmp/clang-format | |
sudo mv /tmp/clang-format /usr/bin/clang-format | |
shell: bash | |
if: ${{ matrix.compiler_cpp == 'g++' && matrix.qt_version == '5.15.4' }} | |
- name: Install gcc | |
id: install_gcc | |
run: | | |
sudo apt-get -qq install gcc g++ | |
if: ${{ matrix.compiler_cpp == 'g++' }} | |
- name: Install clang | |
id: install_clang | |
run: | | |
sudo apt-get -qq install clang | |
if: ${{ matrix.compiler_cpp == 'clang++' }} | |
- name: Install Qt 5.15.4 | |
id: install_qt5 | |
run: | | |
sudo apt-add-repository -y ppa:beineri/opt-qt-5.15.4-focal | |
sudo apt-get -qq update | |
sudo apt-get -qq install qt515tools qt515base qt515webchannel qt515webengine qt515websockets qt515xmlpatterns qt515translations qt515svg mesa-common-dev libgl1-mesa-dev | |
if: ${{ matrix.qt_version == '5.15.4' }} | |
shell: bash | |
- name: Install Qt 6.7.3 | |
id: install_qt6 | |
uses: jurplel/install-qt-action@v4 | |
with: | |
cache: true | |
cache-key-prefix: ${{ runner.os }}-Qt6Cache | |
version: 6.7.3 | |
host: linux | |
target: desktop | |
install-deps: true | |
arch: linux_gcc_64 | |
modules: 'qtwebengine qtwebchannel qtwebsockets qtpositioning' | |
dir: '${{ runner.workspace }}/Qt6' | |
if: ${{ matrix.qt_version == '6.7.3' }} | |
- name: Install dependencies required for AppImage building | |
id: install_appimage_deps | |
run: | | |
sudo apt-get -qq install appstream make | |
cd /tmp | |
wget -c -nv "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage" | |
sudo mv linuxdeploy-x86_64.AppImage /usr/local/bin/linuxdeploy | |
sudo chmod a+x /usr/local/bin/linuxdeploy | |
wget -c -nv "https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage" | |
sudo mv linuxdeploy-plugin-qt-x86_64.AppImage /usr/local/bin/linuxdeploy-plugin-qt | |
sudo chmod a+x /usr/local/bin/linuxdeploy-plugin-qt | |
wget https://nixos.org/releases/patchelf/patchelf-0.9/patchelf-0.9.tar.bz2 | |
tar xf patchelf-0.9.tar.bz2 | |
cd patchelf-0.9 | |
./configure | |
make | |
sudo make install | |
cd .. | |
sudo wget -c "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage" -O /usr/local/bin/appimagetool | |
sudo chmod a+x /usr/local/bin/appimagetool | |
cd $RUNNER_WORKSPACE | |
git clone https://github.com/antony-jr/AppImageUpdaterBridge.git | |
cd AppImageUpdaterBridge | |
git checkout v1.1.9 | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt515 -DCMAKE_INSTALL_PREFIX=$(pwd)/installdir .. | |
cmake --build . --target all | |
cmake --build . --target install | |
if: ${{ matrix.compiler_cpp == 'g++' && matrix.qt_version == '5.15.4' }} | |
shell: bash | |
- name: Cache QtKeychain for Qt 5.15.4 | |
id: cache_qtkeychain_qt5 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qtkeychain_qt5' | |
key: ${{ runner.os }}-qtkeychain-qt5-${{ matrix.qtkeychain_cache_version }} | |
if: ${{ matrix.qt_version == '5.15.4' }} | |
- name: Build QtKeychain for Qt 5.15.4 | |
id: build_qtkeychain_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/qtkeychain_qt5" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/qtkeychain_qt5)" ]; then | |
git clone https://github.com/frankosterfeld/qtkeychain.git $RUNNER_WORKSPACE/qtkeychain_src_for_qt5 | |
cd $RUNNER_WORKSPACE/qtkeychain_src_for_qt5 | |
git checkout 0.14.3 | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/qtkeychain_qt5 -DBUILD_TRANSLATIONS=ON -DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER -DCMAKE_PREFIX_PATH=/opt/qt515 .. | |
cmake --build . --target all | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '5.15.4' }} | |
shell: bash | |
- name: Cache QtKeychain for Qt 6.7.3 | |
id: cache_qtkeychain_qt6 | |
uses: actions/cache@v4 | |
with: | |
path: '{{ $runner.workspace }}/qtkeychain_qt6' | |
key: ${{ runner.os }}-qtkeychain-qt6-${{ matrix.qtkeychain_cache_version }} | |
if: ${{ matrix.qt_version == '6.7.3' }} | |
- name: Build QtKeychain for Qt 6.7.3 | |
id: build_qtkeychain_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/qtkeychain_qt6" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/qtkeychain_qt6)" ]; then | |
git clone https://github.com/frankosterfeld/qtkeychain.git $RUNNER_WORKSPACE/qtkeychain_src_for_qt6 | |
cd $RUNNER_WORKSPACE/qtkeychain_src_for_qt6 | |
git checkout 0.14.3 | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/qtkeychain_qt6 -DBUILD_WITH_QT6=ON -DBUILD_TRANSLATIONS=ON -DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER -DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/linux_gcc_64 .. | |
cmake --build . --target all | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '6.7.3' }} | |
shell: bash | |
- name: Cache tidy-html5 | |
id: cache_tidy_html5 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/tidy_html5' | |
key: ${{ runner.os }}-tidy-html5-1 | |
- name: Build tidy-html5 | |
id: build_tidy_html5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if [ -d "$RUNNER_WORKSPACE/tidy_html5" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/tidy_html5)" ]; then | |
git clone https://github.com/htacg/tidy-html5.git $RUNNER_WORKSPACE/tidy_html5_src | |
cd $RUNNER_WORKSPACE/tidy_html5_src | |
git checkout 5.6.0 | |
mkdir build_dir | |
cd build_dir | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/tidy_html5 .. | |
cmake --build . --target all | |
cmake --build . --target install | |
fi | |
shell: bash | |
- name: Cache Google breakpad | |
id: cache_breakpad | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/breakpad' | |
key: ${{ runner.os }}-breakpad-1 | |
- name: Build Google breakpad | |
id: build_breakpad | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if [ -d "$RUNNER_WORKSPACE/breakpad" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/breakpad)" ]; then | |
mkdir breakpad_src | |
git clone https://chromium.googlesource.com/breakpad/breakpad breakpad_src | |
cd breakpad_src | |
git checkout chrome_99 | |
git clone https://chromium.googlesource.com/linux-syscall-support src/third_party/lss | |
./configure --prefix=$RUNNER_WORKSPACE/breakpad | |
make | |
make install | |
fi | |
shell: bash | |
- name: Cache QEverCloud master for Qt 5.15.4 | |
id: cache_qevercloud_master_qt5 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_master_qt5' | |
key: ${{ runner.os }}-qevercloud-master_qt5-1 | |
if: ${{ matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
- name: Cache QEverCloud development Qt 5.15.4 | |
id: cache_qevercloud_development_qt5 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_development_qt5' | |
key: ${{ runner.os }}-qevercloud-development_qt5-1 | |
if: ${{ matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
- name: Cache QEverCloud integration for Qt 5.15.4 | |
id: cache_qevercloud_integration_qt5 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_integration_qt5' | |
key: ${{ runner.os }}-qevercloud-integration_qt5-1 | |
if: ${{ matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
- name: Cache QEverCloud master for Qt 6.7.3 | |
id: cache_qevercloud_master_qt6 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_master_qt6' | |
key: ${{ runner.os }}-qevercloud-master_qt6 | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
- name: Cache QEverCloud development for Qt 6.7.3 | |
id: cache_qevercloud_development_qt6 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_development_qt6' | |
key: ${{ runner.os }}-qevercloud-development_qt6-1 | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
- name: Cache QEverCloud integration for Qt 6.7.3 | |
id: cache_qevercloud_integration_qt6 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_integration_qt6' | |
key: ${{ runner.os }}-qevercloud-integration_qt6-1 | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
- name: Build QEverCloud master for Qt 5.15.4 | |
id: build_qevercloud_master_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/qevercloud_master_qt5" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/qevercloud_master_qt5)" ]; then | |
git clone https://github.com/d1vanov/QEverCloud.git qevercloud_master_qt5_src | |
cd qevercloud_master_qt5_src | |
git checkout master | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/qevercloud_master_qt5 -DCMAKE_PREFIX_PATH=/opt/qt515 .. | |
cmake --build . --target all | |
cmake --build . --target check | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
shell: bash | |
- name: Build QEverCloud development for Qt 5.15.4 | |
id: build_qevercloud_development_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/qevercloud_development_qt5" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/qevercloud_development_qt5)" ]; then | |
git clone https://github.com/d1vanov/QEverCloud.git qevercloud_development_qt5_src | |
cd qevercloud_development_qt5_src | |
git checkout development | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/qevercloud_development_qt5 -DCMAKE_PREFIX_PATH=/opt/qt515 .. | |
cmake --build . --target all | |
cmake --build . --target check | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
shell: bash | |
- name: Build QEverCloud integration for Qt 5.15.4 | |
id: build_qevercloud_integration_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/qevercloud_integration_qt5" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/qevercloud_integration_qt5)" ]; then | |
git clone https://github.com/d1vanov/QEverCloud.git qevercloud_integration_qt5_src | |
cd qevercloud_integration_qt5_src | |
git checkout feature/copy-on-write-types | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/qevercloud_integration_qt5 -DCMAKE_PREFIX_PATH=/opt/qt515 .. | |
cmake --build . --target all | |
cmake --build . --target check | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
shell: bash | |
- name: Build QEverCloud master for Qt 6.7.3 | |
id: build_qevercloud_master_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/qevercloud_master_qt6" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/qevercloud_master_qt6)" ]; then | |
git clone https://github.com/d1vanov/QEverCloud.git qevercloud_master_qt6_src | |
cd qevercloud_master_qt6_src | |
git checkout master | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER -DBUILD_SHARED_LIBS=ON -DBUILD_WITH_QT6=ON -DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/qevercloud_master_qt5 -DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/linux_gcc_64 .. | |
cmake --build . --target all | |
cmake --build . --target check | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
shell: bash | |
- name: Build QEverCloud development for Qt 6.7.3 | |
id: build_qevercloud_development_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/qevercloud_development_qt6" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/qevercloud_development_qt6)" ]; then | |
git clone https://github.com/d1vanov/QEverCloud.git qevercloud_development_qt6_src | |
cd qevercloud_development_qt6_src | |
git checkout development | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER -DBUILD_SHARED_LIBS=ON -DBUILD_WITH_QT6=ON -DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/qevercloud_development_qt6 -DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/linux_gcc_64 .. | |
cmake --build . --target all | |
cmake --build . --target check | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
shell: bash | |
- name: Build QEverCloud integration for Qt 6.7.3 | |
id: build_qevercloud_integration_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/qevercloud_integration_qt6" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/qevercloud_integration_qt6)" ]; then | |
git clone https://github.com/d1vanov/QEverCloud.git qevercloud_integration_qt6_src | |
cd qevercloud_integration_qt6_src | |
git checkout feature/copy-on-write-types | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER -DBUILD_SHARED_LIBS=ON -DBUILD_WITH_QT6=ON -DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/qevercloud_development_qt6 -DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/linux_gcc_64 .. | |
cmake --build . --target all | |
cmake --build . --target check | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
shell: bash | |
- name: Cache libquentier master for Qt 5.15.4 | |
id: cache_libquentier_master_qt5 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_master_qt5' | |
key: ${{ runner.os }}-libquentier-master-qt5-1 | |
if: ${{ matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
- name: Cache libquentier development for Qt 5.15.4 | |
id: cache_libquentier_development_qt5 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_development_qt5' | |
key: ${{ runner.os }}-libquentier-development-qt5-1 | |
if: ${{ matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
- name: Cache libquentier integration for Qt 5.15.4 | |
id: cache_libquentier_integration_qt5 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_integration_qt5' | |
key: ${{ runner.os }}-libquentier-integration-qt5-1 | |
if: ${{ matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
- name: Cache libquentier master for Qt 6.7.3 | |
id: cache_libquentier_master_qt6 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_master_qt6' | |
key: ${{ runner.os }}-libquentier-master-qt6-1 | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
- name: Cache libquentier development for Qt 6.7.3 | |
id: cache_libquentier_development_qt6 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_development_qt6' | |
key: ${{ runner.os }}-libquentier-development-qt6-1 | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
- name: Cache libquentier integration for Qt 6.7.3 | |
id: cache_libquentier_integration_qt6 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_integration_qt6' | |
key: ${{ runner.os }}-libquentier-integration-qt6-1 | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
- name: Build libquentier master for Qt 5.15.4 | |
id: build_libquentier_master_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/libquentier_master_qt5" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/libquentier_master_qt5)" ]; then | |
git clone https://github.com/d1vanov/libquentier.git libquentier_master_qt5_src | |
cd libquentier_master_qt5_src | |
git checkout master | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo \ | |
-DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER \ | |
-DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/libquentier_master_qt5 -DCMAKE_PREFIX_PATH=/opt/qt515 \ | |
-DQt5Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain_qt5/lib/cmake/Qt5Keychain \ | |
-DQEverCloud-qt5_DIR=$RUNNER_WORKSPACE/qevercloud_master_qt5/lib/cmake/QEverCloud-qt5 \ | |
-DTIDY_HTML5_ROOT=$RUNNER_WORKSPACE/tidy_html5 \ | |
.. | |
cmake --build . --target all | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
shell: bash | |
- name: Build libquentier development for Qt 5.15.4 | |
id: build_libquentier_development_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/libquentier_development_qt5" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/libquentier_development_qt5)" ]; then | |
git clone https://github.com/d1vanov/libquentier.git libquentier_development_qt5_src | |
cd libquentier_development_qt5_src | |
git checkout development | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo \ | |
-DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER \ | |
-DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/libquentier_development_qt5 -DCMAKE_PREFIX_PATH=/opt/qt515 \ | |
-DQt5Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain_qt5/lib/cmake/Qt5Keychain \ | |
-DQEverCloud-qt5_DIR=$RUNNER_WORKSPACE/qevercloud_development_qt5/lib/cmake/QEverCloud-qt5 \ | |
-DTIDY_HTML5_ROOT=$RUNNER_WORKSPACE/tidy_html5 \ | |
.. | |
cmake --build . --target all | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
shell: bash | |
- name: Build libquentier integration for Qt 5.15.4 | |
id: build_libquentier_integration_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/libquentier_integration_qt5" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/libquentier_integration_qt5)" ]; then | |
git clone https://github.com/d1vanov/libquentier.git libquentier_integration_qt5_src | |
cd libquentier_integration_qt5_src | |
git checkout experiment/debug-docker-build | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo \ | |
-DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER \ | |
-DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/libquentier_integration_qt5 -DCMAKE_PREFIX_PATH=/opt/qt515 \ | |
-DQt5Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain_qt5/lib/cmake/Qt5Keychain \ | |
-DQEverCloud-qt5_DIR=$RUNNER_WORKSPACE/qevercloud_integration_qt5/lib/cmake/QEverCloud-qt5 \ | |
-DTIDY_HTML5_ROOT=$RUNNER_WORKSPACE/tidy_html5 \ | |
.. | |
cmake --build . --target all | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
shell: bash | |
- name: Build libquentier master for Qt 6.7.3 | |
id: build_libquentier_master_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/libquentier_master_qt6" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/libquentier_master_qt6)" ]; then | |
git clone https://github.com/d1vanov/libquentier.git libquentier_master_qt6_src | |
cd libquentier_master_qt6_src | |
git checkout master | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_WITH_QT6=ON \ | |
-DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER \ | |
-DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/libquentier_master_qt6 \ | |
-DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/linux_gcc_64 \ | |
-DQt6Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain_qt6/lib/cmake/Qt6Keychain \ | |
-DQEverCloud-qt6_DIR=$RUNNER_WORKSPACE/qevercloud_master_qt6/lib/cmake/QEverCloud-qt6 \ | |
-DTIDY_HTML5_ROOT=$RUNNER_WORKSPACE/tidy_html5 \ | |
.. | |
cmake --build . --target all | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
shell: bash | |
- name: Build libquentier development for Qt 6.7.3 | |
id: build_libquentier_development_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/libquentier_development_qt6" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/libquentier_development_qt6)" ]; then | |
git clone https://github.com/d1vanov/libquentier.git libquentier_development_qt6_src | |
cd libquentier_development_qt6_src | |
git checkout development | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_WITH_QT6=ON \ | |
-DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER \ | |
-DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/libquentier_development_qt6 \ | |
-DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/linux_gcc_64 \ | |
-DQt6Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain_qt6/lib/cmake/Qt6Keychain \ | |
-DQEverCloud-qt6_DIR=$RUNNER_WORKSPACE/qevercloud_development_qt6/lib/cmake/QEverCloud-qt6 \ | |
-DTIDY_HTML5_ROOT=$RUNNER_WORKSPACE/tidy_html5 \ | |
.. | |
cmake --build . --target all | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
shell: bash | |
- name: Build libquentier integration for Qt 6.7.3 | |
id: build_libquentier_integration_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
CMAKE_C_COMPILER: ${{ matrix.compiler_c }} | |
CMAKE_CXX_COMPILER: ${{ matrix.compiler_cpp }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/libquentier_integration_qt6" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/libquentier_integration_qt6)" ]; then | |
git clone https://github.com/d1vanov/libquentier.git libquentier_integration_qt6_src | |
cd libquentier_integration_qt6_src | |
git checkout experiment/debug-docker-build | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_WITH_QT6=ON \ | |
-DCMAKE_C_COMPILER=/usr/bin/$CMAKE_C_COMPILER -DCMAKE_CXX_COMPILER=/usr/bin/$CMAKE_CXX_COMPILER \ | |
-DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/libquentier_integration_qt6 \ | |
-DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/linux_gcc_64 \ | |
-DQt6Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain_qt6/lib/cmake/Qt6Keychain \ | |
-DQEverCloud-qt6_DIR=$RUNNER_WORKSPACE/qevercloud_integration_qt6/lib/cmake/QEverCloud-qt6 \ | |
-DTIDY_HTML5_ROOT=$RUNNER_WORKSPACE/tidy_html5 \ | |
.. | |
cmake --build . --target all | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target install | |
fi | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
shell: bash | |
- name: Configure for gcc and Qt 5.15.4 | |
id: configure_for_gcc_and_qt5 | |
run: | | |
mkdir $GITHUB_WORKSPACE/build | |
cd $GITHUB_WORKSPACE/build | |
if [ "$GITHUB_EVENT_NAME" = "push" ]; then | |
export BRANCH_NAME=$(echo $GITHUB_REF | sed 's/.*\/\(.*\)$/\1/') | |
else | |
export BRANCH_NAME=$GITHUB_BASE_REF | |
fi | |
if [ "$BRANCH_NAME" = "development" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_development_qt5 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_development_qt5 | |
export DEFAULT_UPDATE_CHANNEL="development" | |
elif [ "$BRANCH_NAME" = "integration-0.6.0" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_integration_qt5 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_integration_qt5 | |
export DEFAULT_UPDATE_CHANNEL="integration-0.6.0" | |
else | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_master_qt5 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_master_qt5 | |
export DEFAULT_UPDATE_CHANNEL="master" | |
fi | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo \ | |
-DCMAKE_INSTALL_PREFIX=$(pwd)/installdir -DCMAKE_C_COMPILER=/usr/bin/gcc \ | |
-DCMAKE_CXX_COMPILER=/usr/bin/g++ -DCMAKE_PREFIX_PATH=/opt/qt515 \ | |
-DQt5Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain_qt5/lib/cmake/Qt5Keychain \ | |
-DQEverCloud-qt5_DIR=$QEVERCLOUD_DIR/lib/cmake/QEverCloud-qt5 \ | |
-DLibquentier-qt5_DIR=$LIBQUENTIER_DIR/lib/cmake/Libquentier-qt5 \ | |
-DTIDY_HTML5_ROOT=$RUNNER_WORKSPACE/tidy_html5 \ | |
-DAppImageUpdaterBridge_DIR=$RUNNER_WORKSPACE/AppImageUpdaterBridge/build/installdir/lib/cmake/AppImageUpdaterBridge \ | |
-DINCLUDE_UPDATE_INFO=YES -DDEFAULT_UPDATE_CHANNEL=$DEFAULT_UPDATE_CHANNEL \ | |
-DDEFAULT_UPDATE_PROVIDER="APPIMAGE" -DQUENTIER_PACKAGED_AS_APP_IMAGE=ON \ | |
-DBUILD_WITH_WIKI_TOOLS=YES -DBREAKPAD_ROOT=$RUNNER_WORKSPACE/breakpad \ | |
.. | |
if: ${{ matrix.compiler_cpp == 'g++' && matrix.qt_version == '5.15.4' }} | |
shell: bash | |
- name: Configure for clang and Qt 5.15.4 | |
id: configure_for_clang_and_qt5 | |
run: | | |
mkdir $GITHUB_WORKSPACE/build | |
cd $GITHUB_WORKSPACE/build | |
if [ "$GITHUB_EVENT_NAME" = "push" ]; then | |
export BRANCH_NAME=$(echo $GITHUB_REF | sed 's/.*\/\(.*\)$/\1/') | |
else | |
export BRANCH_NAME=$GITHUB_BASE_REF | |
fi | |
if [ "$BRANCH_NAME" = "development" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_development_qt5 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_development_qt5 | |
elif [ "$BRANCH_NAME" = "integration-0.6.0" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_integration_qt5 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_integration_qt5 | |
else | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_master_qt5 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_master_qt5 | |
fi | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo \ | |
-DCMAKE_INSTALL_PREFIX=$(pwd)/installdir -DCMAKE_C_COMPILER=/usr/bin/clang \ | |
-DCMAKE_CXX_COMPILER=/usr/bin/clang++ -DCMAKE_PREFIX_PATH=/opt/qt515 \ | |
-DQt5Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain_qt5/lib/cmake/Qt5Keychain \ | |
-DQEverCloud-qt5_DIR=$QEVERCLOUD_DIR/lib/cmake/QEverCloud-qt5 \ | |
-DLibquentier-qt5_DIR=$LIBQUENTIER_DIR/lib/cmake/Libquentier-qt5 \ | |
-DTIDY_HTML5_ROOT=$RUNNER_WORKSPACE/tidy_html5 \ | |
-DBUILD_WITH_WIKI_TOOLS=YES -DBREAKPAD_ROOT=$RUNNER_WORKSPACE/breakpad \ | |
.. | |
if: ${{ matrix.compiler_cpp == 'clang++' && matrix.qt_version == '5.15.4' }} | |
shell: bash | |
- name: Configure for gcc and Qt 6.7.3 | |
id: configure_for_gcc_and_qt6 | |
run: | | |
mkdir $GITHUB_WORKSPACE/build | |
cd $GITHUB_WORKSPACE/build | |
if [ "$GITHUB_EVENT_NAME" = "push" ]; then | |
export BRANCH_NAME=$(echo $GITHUB_REF | sed 's/.*\/\(.*\)$/\1/') | |
else | |
export BRANCH_NAME=$GITHUB_BASE_REF | |
fi | |
if [ "$BRANCH_NAME" = "development" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_development_qt6 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_development_qt6 | |
elif [ "$BRANCH_NAME" = "integration-0.6.0" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_integration_qt6 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_integration_qt6 | |
else | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_master_qt6 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_master_qt6 | |
fi | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo \ | |
-DCMAKE_INSTALL_PREFIX=$(pwd)/installdir -DCMAKE_C_COMPILER=/usr/bin/gcc \ | |
-DCMAKE_CXX_COMPILER=/usr/bin/g++ -DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/linux_gcc_64 \ | |
-DQt6Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain_qt6/lib/cmake/Qt6Keychain \ | |
-DQEverCloud-qt6_DIR=$QEVERCLOUD_DIR/lib/cmake/QEverCloud-qt6 \ | |
-DLibquentier-qt6_DIR=$LIBQUENTIER_DIR/lib/cmake/Libquentier-qt6 \ | |
-DTIDY_HTML5_ROOT=$RUNNER_WORKSPACE/tidy_html5 \ | |
-DBUILD_WITH_WIKI_TOOLS=YES -DBREAKPAD_ROOT=$RUNNER_WORKSPACE/breakpad \ | |
.. | |
if: ${{ matrix.compiler_cpp == 'g++' && matrix.qt_version == '6.7.3' }} | |
shell: bash | |
- name: Configure for clang and Qt 6.7.3 | |
id: configure_for_clang_and_qt6 | |
run: | | |
mkdir $GITHUB_WORKSPACE/build | |
cd $GITHUB_WORKSPACE/build | |
if [ "$GITHUB_EVENT_NAME" = "push" ]; then | |
export BRANCH_NAME=$(echo $GITHUB_REF | sed 's/.*\/\(.*\)$/\1/') | |
else | |
export BRANCH_NAME=$GITHUB_BASE_REF | |
fi | |
if [ "$BRANCH_NAME" = "development" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_development_qt6 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_development_qt6 | |
elif [ "$BRANCH_NAME" = "integration-0.6.0" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_integration_qt6 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_integration_qt6 | |
else | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_master_qt6 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_master_qt6 | |
fi | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo \ | |
-DCMAKE_INSTALL_PREFIX=$(pwd)/installdir -DCMAKE_C_COMPILER=/usr/bin/clang \ | |
-DCMAKE_CXX_COMPILER=/usr/bin/clang++ -DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/linux_gcc_64 \ | |
-DQt6Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain_qt6/lib/cmake/Qt6Keychain \ | |
-DQEverCloud-qt6_DIR=$QEVERCLOUD_DIR/lib/cmake/QEverCloud-qt6 \ | |
-DLibquentier-qt6_DIR=$LIBQUENTIER_DIR/lib/cmake/Libquentier-qt6 \ | |
-DTIDY_HTML5_ROOT=$RUNNER_WORKSPACE/tidy_html5 \ | |
-DBUILD_WITH_WIKI_TOOLS=YES -DBREAKPAD_ROOT=$RUNNER_WORKSPACE/breakpad \ | |
.. | |
if: ${{ matrix.compiler_cpp == 'clang++' && matrix.qt_version == '6.7.3' }} | |
shell: bash | |
- name: Check formatting | |
id: check_formatting | |
run: | | |
cd $GITHUB_WORKSPACE/build | |
echo "Building clang-format target" | |
cmake --build . --target clang-format | |
cd .. | |
dirty=$(git ls-files --modified) | |
cd build | |
if [ ! -z "$dirty" ]; then | |
echo "Detected source code files not formatted with clang-format: " | |
echo $dirty | |
exit 1 | |
fi | |
if: ${{ matrix.compiler_cpp == 'g++' && matrix.qt_version == '5.15.4' && ((github.event_name == 'push' && (github.ref == 'refs/heads/development' || github.ref == 'refs/heads/master' || github.ref == 'refs/heads/integration-0.6.0')) || (github.event_name == 'pull_request' && (github.base_ref == 'development' || github.base_ref == 'master' || github.base_ref == 'integration-0.6.0'))) }} | |
- name: Build | |
id: build | |
run: | | |
cd $GITHUB_WORKSPACE/build | |
cmake --build . --target all | |
- name: Test with Qt 5.15.4 | |
id: test_qt5 | |
run: | | |
if [ "$GITHUB_EVENT_NAME" = "push" ]; then | |
export BRANCH_NAME=$(echo $GITHUB_REF | sed 's/.*\/\(.*\)$/\1/') | |
else | |
export BRANCH_NAME=$GITHUB_BASE_REF | |
fi | |
if [ "$BRANCH_NAME" = "development" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_development_qt5 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_development_qt5 | |
elif [ "$BRANCH_NAME" = "integration-0.6.0" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_integration_qt5 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_integration_qt5 | |
else | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_master_qt5 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_master_qt5 | |
fi | |
cd $GITHUB_WORKSPACE/build | |
LD_LIBRARY_PATH=/opt/qt515/lib:$RUNNER_WORKSPACE/tidy_html5/lib:$RUNNER_WORKSPACE/qtkeychain_qt5/lib:$QEVERCLOUD_DIR/lib:$LIBQUENTIER_DIR/lib xvfb-run ./lib/model/tests/quentier_model_tests -platform minimal | |
if: ${{ matrix.qt_version == '5.15.4' }} | |
- name: Test with Qt 6.7.3 | |
id: test_qt6 | |
run: | | |
if [ "$GITHUB_EVENT_NAME" = "push" ]; then | |
export BRANCH_NAME=$(echo $GITHUB_REF | sed 's/.*\/\(.*\)$/\1/') | |
else | |
export BRANCH_NAME=$GITHUB_BASE_REF | |
fi | |
if [ "$BRANCH_NAME" = "development" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_development_qt6 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_development_qt6 | |
elif [ "$BRANCH_NAME" = "integration-0.6.0" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_integration_qt6 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_integration_qt6 | |
else | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_master_qt6 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_master_qt6 | |
fi | |
cd $GITHUB_WORKSPACE/build | |
LD_LIBRARY_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/linux_gcc_64/lib:$RUNNER_WORKSPACE/tidy_html5/lib:$RUNNER_WORKSPACE/qtkeychain_qt6/lib:$QEVERCLOUD_DIR/lib:$LIBQUENTIER_DIR/lib xvfb-run ./lib/model/tests/quentier_model_tests -platform minimal | |
if: ${{ matrix.qt_version == '6.7.3' }} | |
- name: Update translations | |
id: update_translations | |
run: | | |
cd $GITHUB_WORKSPACE/build | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
- name: Install | |
id: install | |
run: | | |
cd $GITHUB_WORKSPACE/build | |
cmake --build . --target install | |
if: ${{ matrix.compiler_cpp != 'g++' || matrix.qt_version != '5.15.4' }} | |
- name: Create AppImage | |
id: create_appimage | |
run: | | |
cd $GITHUB_WORKSPACE/build | |
unset QTDIR | |
unset QT_PLUGIN_PATH | |
if [ "$GITHUB_EVENT_NAME" = "push" ]; then | |
export BRANCH_NAME=$(echo $GITHUB_REF | sed 's/.*\/\(.*\)$/\1/') | |
else | |
export BRANCH_NAME=$GITHUB_BASE_REF | |
fi | |
if [ "$BRANCH_NAME" = "master" ] || [ "$BRANCH_NAME" = "development" ] || [ "$BRANCH_NAME" = "integration-0.6.0" ]; then | |
export VERSION=$BRANCH_NAME | |
else | |
export VERSION=$(git rev-parse --short HEAD) | |
fi | |
if [ "$BRANCH_NAME" = "development" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_development_qt5 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_development_qt5 | |
elif [ "$BRANCH_NAME" = "integration-0.6.0" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_integration_qt5 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_integration_qt5 | |
else | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_master_qt5 | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_master_qt5 | |
fi | |
DESTDIR=appdir ninja install | |
export LD_LIBRARY_PATH=/opt/qt515/lib:$RUNNER_WORKSPACE/tidy_html5/lib:$QEVERCLOUD_DIR/lib:$LIBQUENTIER_DIR/lib:$LD_LIBRARY_PATH | |
export EXTRA_QT_PLUGINS="svg" | |
linuxdeploy --desktop-file appdir/usr/share/applications/*.desktop --appdir=appdir --plugin qt | |
cp /usr/lib/x86_64-linux-gnu/libssl.so.1.1 appdir/usr/bin/libssl.so.1.1 | |
cp /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 appdir/usr/bin/libcrypto.so.1.1 | |
rm -rf appdir/usr/lib/libnss3.so | |
rm -rf appdir/usr/lib/libnssutil3.so | |
if [ -d "$LIBQUENTIER_DIR/share/libquentier/translations" ]; then | |
mkdir -p appdir/usr/share/libquentier/translations | |
cp -r $LIBQUENTIER_DIR/share/libquentier/translations/*.qm appdir/usr/share/libquentier/translations/ | |
fi | |
if [ "$BRANCH_NAME" = "development" ]; then | |
/usr/local/bin/appimagetool -n -u "gh-releases-zsync|d1vanov|quentier|continuous-development|Quentier*-x86_64.AppImage.zsync" appdir | |
elif [ "$BRANCH_NAME" = "integration-0.6.0" ]; then | |
/usr/local/bin/appimagetool -n -u "gh-releases-zsync|d1vanov|quentier|continuous-integration|Quentier*-x86_64.AppImage.zsync" appdir | |
else | |
/usr/local/bin/appimagetool -n -u "gh-releases-zsync|d1vanov|quentier|continuous-master|Quentier*-x86_64.AppImage.zsync" appdir | |
fi | |
if: ${{ matrix.compiler_cpp == 'g++' && matrix.qt_version == '5.15.4' }} | |
shell: bash | |
- name: Upload AppImage | |
id: upload_appimage | |
uses: actions/upload-artifact@v4 | |
with: | |
name: quentier_linux | |
path: '${{ github.workspace }}/build/Quentier*.AppImage*' | |
if: ${{ matrix.qt_version == '5.15.4' && matrix.compiler_cpp == 'g++' }} | |
build_macos: | |
if: "!contains(github.event.head_commit.message, '[skip ci]')" | |
runs-on: macos-12 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Setup cmake | |
uses: jwlawson/actions-setup-cmake@v2 | |
with: | |
cmake-version: '3.30.x' | |
- name: Use cmake | |
run: cmake --version | |
- name: Setup ninja | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
mkdir -p $RUNNER_WORKSPACE/ninja | |
cd $RUNNER_WORKSPACE/ninja | |
curl -fsSL https://github.com/ninja-build/ninja/releases/download/v1.12.1/ninja-mac.zip -o ninja-mac.zip | |
unzip ninja-mac.zip | |
echo "$RUNNER_WORKSPACE/ninja" >> $GITHUB_PATH | |
- name: Cache Qt 6.7.3 | |
id: cache_qt6 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/Qt6' | |
key: ${{ runner.os }}-Qt6Cache | |
- name: Install Qt 6.7.3 | |
id: install_qt6 | |
uses: jurplel/install-qt-action@v4 | |
with: | |
cache: true | |
cache-key-prefix: ${{ runner.os }}-Qt6Cache | |
version: 6.7.3 | |
host: mac | |
target: desktop | |
install-deps: true | |
arch: clang_64 | |
modules: 'qtwebengine qtwebchannel qtwebsockets qtpositioning' | |
dir: '${{ runner.workspace }}/Qt6' | |
- name: Cache boost 1.86.0 | |
id: cache_boost | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/boost' | |
key: ${{ runner.os }}-BoostCache | |
- name: Install boost 1.86.0 | |
id: install_boost | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/boost" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/boost)" ]; then | |
curl -fsSL https://boostorg.jfrog.io/artifactory/main/release/1.86.0/source/boost_1_86_0.tar.bz2 -o "${{ runner.temp }}/boost.tar.bz2" | |
mkdir -p $RUNNER_WORKSPACE/boost | |
tar -xf "${{ runner.temp }}/boost.tar.bz2" -C $RUNNER_WORKSPACE/boost | |
fi | |
- name: Install dependencies | |
id: install_deps | |
run: | | |
brew install hunspell | |
brew install tidy-html5 | |
brew install openssl | |
- name: Cache QtKeychain | |
id: cache_qtkeychain | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qtkeychain' | |
key: ${{ runner.os }}-qtkeychain | |
- name: Build QtKeychain | |
id: build_qtkeychain | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/qtkeychain" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/qtkeychain)" ]; then | |
git clone https://github.com/frankosterfeld/qtkeychain.git $RUNNER_WORKSPACE/qtkeychain_src | |
cd $RUNNER_WORKSPACE/qtkeychain_src | |
git checkout 0.14.3 | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/clang_64 \ | |
-DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/qtkeychain \ | |
-DBUILD_TRANSLATIONS=ON \ | |
-DBUILD_SHARED_LIBS=ON \ | |
-DBUILD_WITH_QT6=ON .. | |
cmake --build . --target all | |
cmake --build . --target install | |
fi | |
shell: bash | |
- name: Cache QEverCloud master | |
id: cache_qevercloud_master | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_master' | |
key: ${{ runner.os }}-qevercloud-master-1 | |
if: ${{ (github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0') }} | |
- name: Cache QEverCloud development | |
id: cache_qevercloud_development | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_development' | |
key: ${{ runner.os }}-qevercloud-development-1 | |
if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development') }} | |
- name: Cache QEverCloud integration | |
id: cache_qevercloud_integration | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_integration' | |
key: ${{ runner.os }}-qevercloud-integration-1 | |
if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0') }} | |
- name: Download or build QEverCloud master | |
id: download_or_build_qevercloud_master | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/qevercloud_master" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/qevercloud_master)" ]; then | |
curl -fsSL https://github.com/d1vanov/QEverCloud/releases/download/continuous-master/QEverCloud_macos_x86_64.zip -o QEverCloud_macos_x86_64.zip || true | |
if [ -f QEverCloud_macos_x86_64.zip ]; then | |
echo "Downloaded prebuilt QEverCloud from continuous-master release" | |
7z -o$RUNNER_WORKSPACE/qevercloud_master x QEverCloud_macos_x86_64.zip | |
else | |
git clone https://github.com/d1vanov/QEverCloud.git qevercloud_master_src | |
cd qevercloud_master_src | |
git checkout master | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/qevercloud_master \ | |
-DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/clang_64 \ | |
-DBUILD_SHARED_LIBS=ON \ | |
-DBUILD_WITH_QT6=ON \ | |
.. | |
cmake --build . --target all | |
cmake --build . --target check | |
cmake --build . --target install | |
fi | |
fi | |
if: ${{ (github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0') }} | |
shell: bash | |
- name: Download or build QEverCloud development | |
id: download_or_build_qevercloud_development | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/qevercloud_development" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/qevercloud_development)" ]; then | |
curl -fsSL https://github.com/d1vanov/QEverCloud/releases/download/continuous-development/QEverCloud_macos_x86_64.zip -o QEverCloud_macos_x86_64.zip || true | |
if [ -f QEverCloud_macos_x86_64.zip ]; then | |
echo "Downloaded prebuilt QEverCloud from continuous-development release" | |
7z -o$RUNNER_WORKSPACE/qevercloud_development x QEverCloud_macos_x86_64.zip | |
else | |
git clone https://github.com/d1vanov/QEverCloud.git qevercloud_development_src | |
cd qevercloud_development_src | |
git checkout development | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/qevercloud_development \ | |
-DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/clang_64 \ | |
-DBUILD_SHARED_LIBS=ON \ | |
-DBUILD_WITH_QT6=ON \ | |
.. | |
cmake --build . --target all | |
cmake --build . --target check | |
cmake --build . --target install | |
fi | |
fi | |
if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development') }} | |
shell: bash | |
- name: Build QEverCloud integration | |
id: build_qevercloud_integration | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/qevercloud_integration" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/qevercloud_integration)" ]; then | |
git clone https://github.com/d1vanov/QEverCloud.git qevercloud_integration_src | |
cd qevercloud_integration_src | |
git checkout feature/copy-on-write-types | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/qevercloud_integration \ | |
-DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/clang_64 \ | |
-DBUILD_SHARED_LIBS=ON \ | |
-DBUILD_WITH_QT6=ON \ | |
.. | |
cmake --build . --target all | |
cmake --build . --target check | |
cmake --build . --target install | |
fi | |
if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0') }} | |
shell: bash | |
- name: Cache libquentier master | |
id: cache_libquentier_master | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_master' | |
key: ${{ runner.os }}-libquentier-master-2 | |
if: ${{ (github.event_name == 'push' && github.ref != 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref != 'development') }} | |
- name: Cache libquentier development | |
id: cache_libquentier_development | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_development' | |
key: ${{ runner.os }}-libquentier-development-3 | |
if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development') }} | |
- name: Cache libquentier_integration | |
id: cache_libquentier_integration | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_integration' | |
key: ${{ runner.os }}-libquentier-integration-1 | |
if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0') }} | |
- name: Download or build libquentier master | |
id: download_or_build_libquentier_master | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/libquentier_master" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/libquentier_master)" ]; then | |
curl -fsSL https://github.com/d1vanov/libquentier/releases/download/continuous-master/libquentier_macos_x86_64.zip -o libquentier_macos_x86_64.zip || true | |
if [ -f libquentier_macos_x86_64.zip ]; then | |
echo "Downloaded prebuilt libquentier from continuous-master release" | |
7z -o$RUNNER_WORKSPACE/libquentier_master x libquentier_macos_x86_64.zip | |
else | |
git clone https://github.com/d1vanov/libquentier.git libquentier_master_src | |
cd libquentier_master_src | |
git checkout master | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo \ | |
-DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/libquentier_master \ | |
-DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/clang_64 \ | |
-DBOOST_ROOT=$RUNNER_WORKSPACE/boost/boost_1_86_0 \ | |
-DOPENSSL_ROOT_DIR=/usr/local/opt/openssl \ | |
-DQEverCloud-qt6_DIR=$RUNNER_WORKSPACE/qevercloud_master/lib/cmake/QEverCloud-qt6 \ | |
-DQt6Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain/lib/cmake/Qt6Keychain \ | |
-DTIDY_HTML5_ROOT=/usr/local/opt/tidy-html5 \ | |
-DBUILD_WITH_QT6=ON \ | |
.. | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target all | |
cmake --build . --target install | |
fi | |
fi | |
if: ${{ (github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0') }} | |
shell: bash | |
- name: Download or build libquentier development | |
id: download_or_build_libquentier_development | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/libquentier_development" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/libquentier_development)" ]; then | |
curl -fsSL https://github.com/d1vanov/libquentier/releases/download/continuous-development/libquentier_macos_x86_64.zip -o libquentier_macos_x86_64.zip || true | |
if [ -f libquentier_macos_x86_64.zip ]; then | |
echo "Downloaded prebuilt libquentier from continuous-development release" | |
7z -o$RUNNER_WORKSPACE/libquentier_development x libquentier_macos_x86_64.zip | |
else | |
git clone https://github.com/d1vanov/libquentier.git libquentier_development_src | |
cd libquentier_development_src | |
git checkout development | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo \ | |
-DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/libquentier_development \ | |
-DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/clang_64 \ | |
-DBOOST_ROOT=$RUNNER_WORKSPACE/boost/boost_1_86_0 \ | |
-DOPENSSL_ROOT_DIR=/usr/local/opt/openssl \ | |
-DQEverCloud-qt6_DIR=$RUNNER_WORKSPACE/qevercloud_development/lib/cmake/QEverCloud-qt6 \ | |
-DQt6Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain/lib/cmake/Qt6Keychain \ | |
-DTIDY_HTML5_ROOT=/usr/local/opt/tidy-html5 \ | |
-DBUILD_WITH_QT6=ON \ | |
.. | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target all | |
cmake --build . --target install | |
fi | |
fi | |
if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development') }} | |
shell: bash | |
- name: Build libquentier integration | |
id: build_libquentier_integration | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if [ ! -d "$RUNNER_WORKSPACE/libquentier_integration" ] || [ -z "$(ls -A $RUNNER_WORKSPACE/libquentier_integration)" ]; then | |
git clone https://github.com/d1vanov/libquentier.git libquentier_integration_src | |
cd libquentier_integration_src | |
git checkout feature-new-release-integration | |
mkdir build | |
cd build | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo \ | |
-DCMAKE_INSTALL_PREFIX=$RUNNER_WORKSPACE/libquentier_integration \ | |
-DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/clang_64 \ | |
-DBOOST_ROOT=$RUNNER_WORKSPACE/boost/boost_1_86_0 \ | |
-DOPENSSL_ROOT_DIR=/usr/local/opt/openssl \ | |
-DQEverCloud-qt6_DIR=$RUNNER_WORKSPACE/qevercloud_integration/lib/cmake/QEverCloud-qt6 \ | |
-DQt6Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain/lib/cmake/Qt6Keychain \ | |
-DTIDY_HTML5_ROOT=/usr/local/opt/tidy-html5 \ | |
-DBUILD_WITH_QT6=ON \ | |
.. | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target all | |
cmake --build . --target install | |
fi | |
if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0') }} | |
shell: bash | |
- name: Configure | |
id: configure | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
mkdir $GITHUB_WORKSPACE/build | |
cd $GITHUB_WORKSPACE/build | |
if [ "$GITHUB_EVENT_NAME" = "push" ]; then | |
export BRANCH_NAME=$(echo $GITHUB_REF | sed 's/.*\/\(.*\)$/\1/') | |
else | |
export BRANCH_NAME=$GITHUB_BASE_REF | |
fi | |
if [ "$BRANCH_NAME" = "development" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_development | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_development | |
export DEFAULT_UPDATE_CHANNEL="development" | |
elif [ "$BRANCH_NAME" = "integration-0.6.0" ]; then | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_integration | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_integration | |
export DEFAULT_UPDATE_CHANNEL="integration" | |
else | |
export QEVERCLOUD_DIR=$RUNNER_WORKSPACE/qevercloud_master | |
export LIBQUENTIER_DIR=$RUNNER_WORKSPACE/libquentier_master | |
export DEFAULT_UPDATE_CHANNEL="master" | |
fi | |
cmake -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo \ | |
-DCMAKE_INSTALL_PREFIX=$(pwd)/installdir \ | |
-DCMAKE_PREFIX_PATH=$RUNNER_WORKSPACE/Qt6/Qt/6.7.3/clang_64 \ | |
-DBOOST_ROOT=$RUNNER_WORKSPACE/boost/boost_1_86_0 \ | |
-DOPENSSL_ROOT_DIR=/usr/local/opt/openssl \ | |
-DQEverCloud-qt6_DIR=$QEVERCLOUD_DIR/lib/cmake/QEverCloud-qt6 \ | |
-DQt6Keychain_DIR=$RUNNER_WORKSPACE/qtkeychain/lib/cmake/Qt6Keychain \ | |
-DLibquentier-qt6_DIR=$LIBQUENTIER_DIR/lib/cmake/Libquentier-qt6 \ | |
-DTIDY_HTML5_ROOT=/usr/local/opt/tidy-html5 \ | |
-DBUILD_WITH_WIKI_TOOLS=YES \ | |
-DINCLUDE_UPDATE_INFO=YES \ | |
-DDEFAULT_UPDATE_CHANNEL=$DEFAULT_UPDATE_CHANNEL \ | |
-DDEFAULT_UPDATE_PROVIDER="GITHUB" \ | |
-DBUILD_WITH_QT6=ON \ | |
.. | |
shell: bash | |
- name: Build | |
id: build | |
run: | | |
cd $GITHUB_WORKSPACE/build | |
cmake --build . --target all | |
- name: Test | |
id: test | |
run: | | |
cd $GITHUB_WORKSPACE/build | |
cmake --build . --target check | |
- name: Update translations | |
id: update_translations | |
run: | | |
cd $GITHUB_WORKSPACE/build | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
- name: Install | |
id: install | |
run: | | |
cd $GITHUB_WORKSPACE/build | |
cmake --build . --target install | |
- name: Archive app bundle | |
id: archive | |
run: | | |
cd $GITHUB_WORKSPACE/build/installdir | |
7z a Quentier_mac_x86_64.zip quentier.app | |
- name: Upload app artifact | |
id: upload_artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: quentier_macos | |
path: '${{ github.workspace }}/build/installdir/Quentier_mac_x86_64.zip' | |
build_windows: | |
if: "!contains(github.event.head_commit.message, '[skip ci]')" | |
runs-on: windows-2019 | |
strategy: | |
matrix: | |
include: | |
- qt_version: '5.15.2' | |
- qt_version: '6.7.3' | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Cache boost 1.86.0 | |
id: cache_boost | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/boost' | |
key: ${{ runner.os }}-BoostCache | |
- name: Install boost 1.86.0 | |
id: install_boost | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\boost (set BOOST_CACHED=1) else (set BOOST_CACHED=0) | |
if %BOOST_CACHED%==0 mkdir %RUNNER_WORKSPACE%\boost | |
if %BOOST_CACHED%==0 cmd.exe /c curl -fsSL https://boostorg.jfrog.io/artifactory/main/release/1.86.0/source/boost_1_86_0.7z -o %RUNNER_WORKSPACE%\boost\boost_1_86_0.7z | |
if %BOOST_CACHED%==0 cd %RUNNER_WORKSPACE%\boost | |
if %BOOST_CACHED%==0 7z x boost_1_86_0.7z | |
shell: cmd | |
- name: Cache Qt 5.15.2 | |
id: cache_qt5 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/Qt5' | |
key: ${{ runner.os }}-Qt5Cache | |
if: ${{ matrix.qt_version == '5.15.2' }} | |
- name: Install Qt 5.15.2 | |
id: install_qt5 | |
uses: jurplel/install-qt-action@v4 | |
with: | |
cache: true | |
cache-key-prefix: ${{ runner.os }}-Qt5Cache | |
version: 5.15.2 | |
host: windows | |
target: desktop | |
install-deps: true | |
arch: win64_msvc2019_64 | |
modules: 'qtwebengine' | |
dir: '${{ runner.workspace }}/Qt5' | |
if: ${{ matrix.qt_version == '5.15.2' }} | |
- name: Cache Qt 6.7.3 | |
id: cache_qt6 | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/Qt6' | |
key: ${{ runner.os }}-Qt6Cache-1 | |
if: ${{ matrix.qt_version == '6.7.3' }} | |
- name: Install Qt 6.7.3 | |
id: install_qt6 | |
uses: jurplel/install-qt-action@v4 | |
with: | |
cache: true | |
cache-key-prefix: ${{ runner.os }}-Qt6Cache | |
version: 6.7.3 | |
host: windows | |
target: desktop | |
install-deps: true | |
arch: win64_msvc2019_64 | |
modules: 'qtwebengine qtwebchannel qtwebsockets qtpositioning' | |
dir: '${{ runner.workspace }}/Qt6' | |
if: ${{ matrix.qt_version == '6.7.3' }} | |
- name: Cache QEverCloud master Qt5 | |
id: cache_qevercloud_master_qt5 | |
env: | |
QEVERCLOUD_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_win_master_qt5' | |
key: qevercloud-win-master-qt5-${{ env.QEVERCLOUD_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '5.15.2' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
- name: Download or build QEverCloud master Qt5 | |
id: download_or_build_qevercloud_master_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\qevercloud_win_master_qt5\include (set QEVERCLOUD_CACHED=1) else (set QEVERCLOUD_CACHED=0) | |
echo "QEVERCLOUD_CACHED=%QEVERCLOUD_CACHED%" | |
if %QEVERCLOUD_CACHED%==0 mkdir %RUNNER_WORKSPACE%\qevercloud_win_master_qt5 | |
if %QEVERCLOUD_CACHED%==0 cmd.exe /c curl -fsSL https://github.com/d1vanov/QEverCloud/releases/download/continuous-master/QEverCloud_windows_qt5.zip -o %RUNNER_WORKSPACE%\qevercloud_win_master_qt5\QEverCloud_windows_qt5.zip | |
if %QEVERCLOUD_CACHED%==0 cd %RUNNER_WORKSPACE%\qevercloud_win_master_qt5 | |
if %QEVERCLOUD_CACHED%==0 set QEVERCLOUD_DOWNLOADED=0 | |
if %QEVERCLOUD_CACHED%==0 if exist QEverCloud_windows_qt5.zip set QEVERCLOUD_DOWNLOADED=1 | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="1" echo "Downloaded prebuilt Qt5 QEverCloud from master branch" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="1" 7z x QEverCloud_windows_qt5.zip | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" echo "Could not download prebuilt Qt5 QEverCloud from master branch, will build from source" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" mkdir %RUNNER_WORKSPACE%\qevercloud_win_master_qt5_src | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" git clone https://github.com/d1vanov/QEverCloud.git %RUNNER_WORKSPACE%\qevercloud_win_master_qt5_src | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cd %RUNNER_WORKSPACE%\qevercloud_win_master_qt5_src | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" git checkout master | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" mkdir build | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cd build | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt5\Qt\5.15.2\win64_msvc2019_x64" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake -G "NMake Makefiles" -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\qevercloud_win_master_qt5" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" .. | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake --build . --target all | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake --build . --target check | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake --build . --target install | |
if: ${{ matrix.qt_version == '5.15.2' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
shell: cmd | |
- name: Cache QEverCloud development qt5 | |
id: cache_qevercloud_development_qt5 | |
env: | |
QEVERCLOUD_CACHE_VERSION: '2' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_win_development_qt5' | |
key: qevercloud-win-development-qt5-${{ env.QEVERCLOUD_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '5.15.2' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
- name: Download or build QEverCloud development Qt5 | |
id: download_or_build_qevercloud_development_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\qevercloud_win_development_qt5\include (set QEVERCLOUD_CACHED=1) else (set QEVERCLOUD_CACHED=0) | |
echo "QEVERCLOUD_CACHED=%QEVERCLOUD_CACHED%" | |
if %QEVERCLOUD_CACHED%==0 mkdir %RUNNER_WORKSPACE%\qevercloud_win_development_qt5 | |
if %QEVERCLOUD_CACHED%==0 cmd.exe /c curl -fsSL https://github.com/d1vanov/QEverCloud/releases/download/continuous-development/QEverCloud_windows_qt5.zip -o %RUNNER_WORKSPACE%\qevercloud_win_development_qt5\QEverCloud_windows_qt5.zip | |
if %QEVERCLOUD_CACHED%==0 cd %RUNNER_WORKSPACE%\qevercloud_win_development_qt5 | |
if %QEVERCLOUD_CACHED%==0 set QEVERCLOUD_DOWNLOADED=0 | |
if %QEVERCLOUD_CACHED%==0 if exist QEverCloud_windows_x86.zip set QEVERCLOUD_DOWNLOADED=1 | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="1" echo "Downloaded prebuilt Qt5 QEverCloud from development branch" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="1" 7z x QEverCloud_windows_qt5.zip | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" echo "Could not download prebuilt Qt5 QEverCloud from development branch, will build from source" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" mkdir %RUNNER_WORKSPACE%\qevercloud_win_development_qt5_src | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" git clone https://github.com/d1vanov/QEverCloud.git %RUNNER_WORKSPACE%\qevercloud_win_development_qt5_src | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cd %RUNNER_WORKSPACE%\qevercloud_win_development_qt5_src | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" git checkout development | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" mkdir build | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cd build | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt5\Qt\5.15.2\win64_msvc2019_x64" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake -G "NMake Makefiles" -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\qevercloud_win_development_qt5" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" .. | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake --build . --target all | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake --build . --target check | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake --build . --target install | |
if: ${{ matrix.qt_version == '5.15.2' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
shell: cmd | |
- name: Cache QEverCloud integration qt5 | |
id: cache_qevercloud_integration_qt5 | |
env: | |
QEVERCLOUD_CACHE_VERSION: '2' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_win_integration_qt5' | |
key: qevercloud-win-integration-qt5-${{ env.QEVERCLOUD_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '5.15.2' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
- name: Build QEverCloud integration Qt5 | |
id: build_qevercloud_integration_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\qevercloud_win_integration_qt5\include (set QEVERCLOUD_CACHED=1) else (set QEVERCLOUD_CACHED=0) | |
echo "QEVERCLOUD_CACHED=%QEVERCLOUD_CACHED%" | |
if %QEVERCLOUD_CACHED%==0 mkdir %RUNNER_WORKSPACE%\qevercloud_win_integration_qt5 | |
if %QEVERCLOUD_CACHED%==0 mkdir %RUNNER_WORKSPACE%\qevercloud_win_integration_qt5_src | |
if %QEVERCLOUD_CACHED%==0 git clone https://github.com/d1vanov/QEverCloud.git %RUNNER_WORKSPACE%\qevercloud_win_integration_qt5_src | |
if %QEVERCLOUD_CACHED%==0 cd %RUNNER_WORKSPACE%\qevercloud_win_integration_qt5_src | |
if %QEVERCLOUD_CACHED%==0 git checkout feature/copy-on-write-types | |
if %QEVERCLOUD_CACHED%==0 mkdir build | |
if %QEVERCLOUD_CACHED%==0 cd build | |
if %QEVERCLOUD_CACHED%==0 set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt5\Qt\5.15.2\win64_msvc2019_x64" | |
if %QEVERCLOUD_CACHED%==0 call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %QEVERCLOUD_CACHED%==0 cmake -G "NMake Makefiles" -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\qevercloud_win_integration_qt5" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" .. | |
if %QEVERCLOUD_CACHED%==0 cmake --build . --target all | |
if %QEVERCLOUD_CACHED%==0 cmake --build . --target check | |
if %QEVERCLOUD_CACHED%==0 cmake --build . --target install | |
if: ${{ matrix.qt_version == '5.15.2' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
shell: cmd | |
- name: Cache QEverCloud master Qt6 | |
id: cache_qevercloud_master_qt6 | |
env: | |
QEVERCLOUD_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_win_master_qt6' | |
key: qevercloud-win-master-qt6-${{ env.QEVERCLOUD_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
- name: Download or build QEverCloud master Qt6 | |
id: download_or_build_qevercloud_master_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\qevercloud_win_master_qt6\include (set QEVERCLOUD_CACHED=1) else (set QEVERCLOUD_CACHED=0) | |
echo "QEVERCLOUD_CACHED=%QEVERCLOUD_CACHED%" | |
if %QEVERCLOUD_CACHED%==0 mkdir %RUNNER_WORKSPACE%\qevercloud_win_master_qt6 | |
if %QEVERCLOUD_CACHED%==0 cmd.exe /c curl -fsSL https://github.com/d1vanov/QEverCloud/releases/download/continuous-master/QEverCloud_windows_qt6.zip -o %RUNNER_WORKSPACE%\qevercloud_win_master_qt6\QEverCloud_windows_qt6.zip | |
if %QEVERCLOUD_CACHED%==0 cd %RUNNER_WORKSPACE%\qevercloud_win_master_qt6 | |
if %QEVERCLOUD_CACHED%==0 set QEVERCLOUD_DOWNLOADED=0 | |
if %QEVERCLOUD_CACHED%==0 if exist QEverCloud_windows_qt6.zip set QEVERCLOUD_DOWNLOADED=1 | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="1" echo "Downloaded prebuilt Qt6 QEverCloud from master branch" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="1" 7z x QEverCloud_windows_qt6.zip | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" echo "Could not download prebuilt Qt6 QEverCloud from master branch, will build from source" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" mkdir %RUNNER_WORKSPACE%\qevercloud_win_master_qt6_src | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" git clone https://github.com/d1vanov/QEverCloud.git %RUNNER_WORKSPACE%\qevercloud_win_master_qt6_src | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cd %RUNNER_WORKSPACE%\qevercloud_win_master_qt6_src | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" git checkout master | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" mkdir build | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cd build | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt6\Qt\6.7.3\win64_msvc2019_x64" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake -G "NMake Makefiles" -DBUILD_SHARED_LIBS=ON -DBUILD_WITH_QT6=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\qevercloud_win_master_qt5" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" .. | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake --build . --target all | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake --build . --target check | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake --build . --target install | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
shell: cmd | |
- name: Cache QEverCloud development qt6 | |
id: cache_qevercloud_development_qt6 | |
env: | |
QEVERCLOUD_CACHE_VERSION: '2' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_win_development_qt6' | |
key: qevercloud-win-development-qt6-${{ env.QEVERCLOUD_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
- name: Download or build QEverCloud development Qt6 | |
id: download_or_build_qevercloud_development_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\qevercloud_win_development_qt6\include (set QEVERCLOUD_CACHED=1) else (set QEVERCLOUD_CACHED=0) | |
echo "QEVERCLOUD_CACHED=%QEVERCLOUD_CACHED%" | |
if %QEVERCLOUD_CACHED%==0 mkdir %RUNNER_WORKSPACE%\qevercloud_win_development_qt6 | |
if %QEVERCLOUD_CACHED%==0 cmd.exe /c curl -fsSL https://github.com/d1vanov/QEverCloud/releases/download/continuous-development/QEverCloud_windows_qt6.zip -o %RUNNER_WORKSPACE%\qevercloud_win_development_qt6\QEverCloud_windows_qt6.zip | |
if %QEVERCLOUD_CACHED%==0 cd %RUNNER_WORKSPACE%\qevercloud_win_development_qt6 | |
if %QEVERCLOUD_CACHED%==0 set QEVERCLOUD_DOWNLOADED=0 | |
if %QEVERCLOUD_CACHED%==0 if exist QEverCloud_windows_qt6.zip set QEVERCLOUD_DOWNLOADED=1 | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="1" echo "Downloaded prebuilt Qt6 QEverCloud from development branch" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="1" 7z x QEverCloud_windows_qt6.zip | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" echo "Could not download prebuilt Qt6 QEverCloud from development branch, will build from source" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" mkdir %RUNNER_WORKSPACE%\qevercloud_win_development_qt6_src | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" git clone https://github.com/d1vanov/QEverCloud.git %RUNNER_WORKSPACE%\qevercloud_win_development_qt6_src | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cd %RUNNER_WORKSPACE%\qevercloud_win_development_qt6_src | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" git checkout development | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" mkdir build | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cd build | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt6\Qt\6.7.3\win64_msvc2019_x64" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake -G "NMake Makefiles" -DBUILD_SHARED_LIBS=ON -DBUILD_WITH_QT6=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\qevercloud_win_development_qt6" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" .. | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake --build . --target all | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake --build . --target check | |
if %QEVERCLOUD_CACHED%==0 if "%QEVERCLOUD_DOWNLOADED%"=="0" cmake --build . --target install | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
shell: cmd | |
- name: Cache QEverCloud integration qt6 | |
id: cache_qevercloud_integration_qt6 | |
env: | |
QEVERCLOUD_CACHE_VERSION: '2' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qevercloud_win_integration_qt6' | |
key: qevercloud-win-integration-qt6-${{ env.QEVERCLOUD_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
- name: Build QEverCloud integration Qt6 | |
id: build_qevercloud_integration_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\qevercloud_win_integration_qt6\include (set QEVERCLOUD_CACHED=1) else (set QEVERCLOUD_CACHED=0) | |
echo "QEVERCLOUD_CACHED=%QEVERCLOUD_CACHED%" | |
if %QEVERCLOUD_CACHED%==0 mkdir %RUNNER_WORKSPACE%\qevercloud_win_integration_qt6 | |
if %QEVERCLOUD_CACHED%==0 mkdir %RUNNER_WORKSPACE%\qevercloud_win_integration_qt6_src | |
if %QEVERCLOUD_CACHED%==0 git clone https://github.com/d1vanov/QEverCloud.git %RUNNER_WORKSPACE%\qevercloud_win_integration_qt6_src | |
if %QEVERCLOUD_CACHED%==0 cd %RUNNER_WORKSPACE%\qevercloud_win_integration_qt6_src | |
if %QEVERCLOUD_CACHED%==0 git checkout feature/copy-on-write-types | |
if %QEVERCLOUD_CACHED%==0 mkdir build | |
if %QEVERCLOUD_CACHED%==0 cd build | |
if %QEVERCLOUD_CACHED%==0 set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt6\Qt\6.7.3\win64_msvc2019_x64" | |
if %QEVERCLOUD_CACHED%==0 call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %QEVERCLOUD_CACHED%==0 cmake -G "NMake Makefiles" -DBUILD_SHARED_LIBS=ON -DBUILD_WITH_QT6=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\qevercloud_win_integration_qt6" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" .. | |
if %QEVERCLOUD_CACHED%==0 cmake --build . --target all | |
if %QEVERCLOUD_CACHED%==0 cmake --build . --target check | |
if %QEVERCLOUD_CACHED%==0 cmake --build . --target install | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
shell: cmd | |
- name: Cache libiconv | |
id: cache_libiconv | |
env: | |
LIBICONV_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libiconv' | |
key: libiconv-${{ env.LIBICONV_CACHE_VERSION }} | |
- name: Download libiconv | |
id: download_libiconv | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if not exist %RUNNER_WORKSPACE%\libiconv (set DOWNLOAD_LIBICONV=1) else (set DOWNLOAD_LIBICONV=0) | |
if %DOWNLOAD_LIBICONV%==1 mkdir %RUNNER_WORKSPACE%\libiconv | |
if %DOWNLOAD_LIBICONV%==1 curl -fsSL https://github.com/d1vanov/quentier-dependencies-windows/releases/download/continuous/libiconv-1.15-msvc2019_x64.zip -o %RUNNER_WORKSPACE%\libiconv\libiconv-1.15-msvc2019_x64.zip | |
if %DOWNLOAD_LIBICONV%==1 cd %RUNNER_WORKSPACE%\libiconv | |
if %DOWNLOAD_LIBICONV%==1 7z x libiconv-1.15-msvc2019_x64.zip | |
shell: cmd | |
- name: Cache zlib | |
id: cache_zlib | |
env: | |
ZLIB_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/zlib' | |
key: zlib-${{ env.ZLIB_CACHE_VERSION }} | |
- name: Download zlib | |
id: download_zlib | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if not exist %RUNNER_WORKSPACE%\zlib (set DOWNLOAD_ZLIB=1) else (set DOWNLOAD_ZLIB=0) | |
if %DOWNLOAD_ZLIB%==1 mkdir %RUNNER_WORKSPACE%\zlib | |
if %DOWNLOAD_ZLIB%==1 curl -fsSL https://github.com/d1vanov/quentier-dependencies-windows/releases/download/continuous/zlib-1.2.11-msvc2019_x64.zip -o %RUNNER_WORKSPACE%\zlib\zlib-1.2.11-msvc2019_x64.zip | |
if %DOWNLOAD_ZLIB%==1 cd %RUNNER_WORKSPACE%\zlib | |
if %DOWNLOAD_ZLIB%==1 7z x zlib-1.2.11-msvc2019_x64.zip | |
shell: cmd | |
- name: Cache libxml2 | |
id: cache_libxml2 | |
env: | |
LIBXML2_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libxml2' | |
key: libxml2-${{ env.LIBXML2_CACHE_VERSION }} | |
- name: Download libxml2 | |
id: download_libxml2 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if not exist %RUNNER_WORKSPACE%\libxml2 (set DOWNLOAD_LIBXML2=1) else (set DOWNLOAD_LIBXML2=0) | |
if %DOWNLOAD_LIBXML2%==1 mkdir %RUNNER_WORKSPACE%\libxml2 | |
if %DOWNLOAD_LIBXML2%==1 curl -fsSL https://github.com/d1vanov/quentier-dependencies-windows/releases/download/continuous/libxml2-2.9.7-msvc2019_x64.zip -o %RUNNER_WORKSPACE%\libxml2\libxml2-2.9.7-msvc2019_x64.zip | |
if %DOWNLOAD_LIBXML2%==1 cd %RUNNER_WORKSPACE%\libxml2 | |
if %DOWNLOAD_LIBXML2%==1 7z x libxml2-2.9.7-msvc2019_x64.zip | |
shell: cmd | |
- name: Cache libhunspell | |
id: cache_libhunspell | |
env: | |
LIBHUNSPELL_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libhunspell' | |
key: libhunspell-${{ env.LIBHUNSPELL_CACHE_VERSION }} | |
- name: Download libhunspell | |
id: download_libhunspell | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if not exist %RUNNER_WORKSPACE%\libhunspell (set DOWNLOAD_LIBHUNSPELL=1) else (set DOWNLOAD_LIBHUNSPELL=0) | |
if %DOWNLOAD_LIBHUNSPELL%==1 mkdir %RUNNER_WORKSPACE%\libhunspell | |
if %DOWNLOAD_LIBHUNSPELL%==1 curl -fsSL https://github.com/d1vanov/quentier-dependencies-windows/releases/download/continuous/libhunspell-1.7.0-msvc2019_x64.zip -o %RUNNER_WORKSPACE%\libhunspell\libhunspell-1.7.0-msvc2019_x64.zip | |
if %DOWNLOAD_LIBHUNSPELL%==1 cd %RUNNER_WORKSPACE%\libhunspell | |
if %DOWNLOAD_LIBHUNSPELL%==1 7z x libhunspell-1.7.0-msvc2019_x64.zip | |
shell: cmd | |
- name: Cache OpenSSL | |
id: cache_openssl | |
env: | |
OPENSSL_CACHE_VERSION: '6' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/openssl' | |
key: openssl-${{ env.OPENSSL_CACHE_VERSION }} | |
- name: Download openssl | |
id: download_openssl | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if not exist %RUNNER_WORKSPACE%\openssl (set DOWNLOAD_OPENSSL=1) else (set DOWNLOAD_OPENSSL=0) | |
if %DOWNLOAD_OPENSSL%==1 mkdir %RUNNER_WORKSPACE%\openssl | |
if %DOWNLOAD_OPENSSL%==1 curl -fsSL https://github.com/d1vanov/quentier-dependencies-windows/releases/download/continuous/openssl-1_1_1v-msvc2019_x64.zip -o %RUNNER_WORKSPACE%\openssl\openssl-1_1_1v-msvc2019_x64.zip | |
if %DOWNLOAD_OPENSSL%==1 cd %RUNNER_WORKSPACE%\openssl | |
if %DOWNLOAD_OPENSSL%==1 7z x openssl-1_1_1v-msvc2019_x64.zip | |
shell: cmd | |
- name: Cache qtkeychain Qt5 | |
id: cache_qtkeychain_qt5 | |
env: | |
QTKEYCHAIN_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qtkeychain_qt5' | |
key: qtkeychain-qt5-${{ env.QTKEYCHAIN_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '5.15.2' }} | |
- name: Download or build qtkeychain Qt5 | |
id: download_qtkeychain_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if not exist %RUNNER_WORKSPACE%\qtkeychain_qt5 (set QTKEYCHAIN_CACHED=0) else (set QTKEYCHAIN_CACHED=1) | |
echo "QTKEYCHAIN_CACHED=%QTKEYCHAIN_CACHED%" | |
if %QTKEYCHAIN_CACHED%==0 mkdir %RUNNER_WORKSPACE%\qtkeychain_qt5 | |
if %QTKEYCHAIN_CACHED%==0 curl -fsSL https://github.com/d1vanov/quentier-dependencies-windows/releases/download/continuous/qtkeychain-0.14.3-qt5-msvc2019_x64.zip -o %RUNNER_WORKSPACE%\qtkeychain_qt5\qtkeychain-0.14.3-qt5-msvc2019_x64.zip | |
if %QTKEYCHAIN_CACHED%==0 cd %RUNNER_WORKSPACE%\qtkeychain_qt5 | |
if %QTKEYCHAIN_CACHED%==0 set QTKEYCHAIN_DOWNLOADED=0 | |
if %QTKEYCHAIN_CACHED%==0 if exist qtkeychain-0.14.3-qt5-msvc2019_x64.zip set QTKEYCHAIN_DOWNLOADED=1 | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="1" echo "Downloaded prebuilt Qt5 QtKeychain" | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="1" 7z x qtkeychain-0.14.3-qt5-msvc2019_x64.zip | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" echo "Could not download prebuilt Qt5 QtKeychain, will build from source" | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" mkdir %RUNNER_WORKSPACE%\qtkeychain_qt5_src | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" git clone https://github.com/frankosterfeld/qtkeychain.git %RUNNER_WORKSPACE%\qtkeychain_qt5_src | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" cd %RUNNER_WORKSPACE%\qtkeychain_qt5_src | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" git checkout 0.14.3 | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" mkdir build | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" cd build | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt5\Qt\5.15.2\win64_msvc2019_x64" | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\qtkeychain_qt5" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" -DBUILD_TRANSLATION=ON .. | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" cmake --build . --target all | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" cmake --build . --target install | |
shell: cmd | |
if: ${{ matrix.qt_version == '5.15.2' }} | |
- name: Cache qtkeychain Qt6 | |
id: cache_qtkeychain_qt6 | |
env: | |
QTKEYCHAIN_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/qtkeychain_qt6' | |
key: qtkeychain-qt6-${{ env.QTKEYCHAIN_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '6.7.3' }} | |
- name: Download or build qtkeychain Qt6 | |
id: download_qtkeychain_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if not exist %RUNNER_WORKSPACE%\qtkeychain_qt6 (set QTKEYCHAIN_CACHED=0) else (set QTKEYCHAIN_CACHED=1) | |
echo "QTKEYCHAIN_CACHED=%QTKEYCHAIN_CACHED%" | |
if %QTKEYCHAIN_CACHED%==0 mkdir %RUNNER_WORKSPACE%\qtkeychain_qt6 | |
if %QTKEYCHAIN_CACHED%==0 curl -fsSL https://github.com/d1vanov/quentier-dependencies-windows/releases/download/continuous/qtkeychain-0.14.3-qt6-msvc2019_x64.zip -o %RUNNER_WORKSPACE%\qtkeychain_qt6\qtkeychain-0.14.3-qt6-msvc2019_x64.zip | |
if %QTKEYCHAIN_CACHED%==0 cd %RUNNER_WORKSPACE%\qtkeychain_qt6 | |
if %QTKEYCHAIN_CACHED%==0 set QTKEYCHAIN_DOWNLOADED=0 | |
if %QTKEYCHAIN_CACHED%==0 if exist qtkeychain-0.14.3-qt5-msvc2019_x64.zip set QTKEYCHAIN_DOWNLOADED=1 | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="1" echo "Downloaded prebuilt Qt6 QtKeychain" | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="1" 7z x qtkeychain-0.14.3-qt6-msvc2019_x64.zip | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" echo "Could not download prebuilt Qt6 QtKeychain, will build from source" | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" mkdir %RUNNER_WORKSPACE%\qtkeychain_qt6_src | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" git clone https://github.com/frankosterfeld/qtkeychain.git %RUNNER_WORKSPACE%\qtkeychain_qt6_src | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" cd %RUNNER_WORKSPACE%\qtkeychain_qt6_src | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" git checkout 0.14.3 | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" mkdir build | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" cd build | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt6\Qt\6.7.3\win64_msvc2019_x64" | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\qtkeychain_qt5" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" -DBUILD_TRANSLATION=ON -DBUILD_WITH_QT6=ON .. | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" cmake --build . --target all | |
if %QTKEYCHAIN_CACHED%==0 if "%QTKEYCHAIN_DOWNLOADED%"=="0" cmake --build . --target install | |
shell: cmd | |
if: ${{ matrix.qt_version == '6.7.3' }} | |
- name: Cache tidy-html5 | |
id: cache_tidy_html5 | |
env: | |
TIDY_HTML5_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/tidy_html5' | |
key: tidy-html5-${{ env.TIDY_HTML5_CACHE_VERSION }} | |
- name: Download tidy-html5 | |
id: download_tidy_html5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if not exist %RUNNER_WORKSPACE%\tidy_html5 (set DOWNLOAD_TIDY_HTML5=1) else (set DOWNLOAD_TIDY_HTML5=0) | |
if %DOWNLOAD_TIDY_HTML5%==1 mkdir %RUNNER_WORKSPACE%\tidy_html5 | |
if %DOWNLOAD_TIDY_HTML5%==1 curl -fsSL https://github.com/d1vanov/quentier-dependencies-windows/releases/download/continuous/tidy-html5-5.6.0-msvc2019_x64.zip -o %RUNNER_WORKSPACE%\tidy_html5\tidy-html5-5.6.0-msvc2019_x64.zip | |
if %DOWNLOAD_TIDY_HTML5%==1 cd %RUNNER_WORKSPACE%\tidy_html5 | |
if %DOWNLOAD_TIDY_HTML5%==1 7z x tidy-html5-5.6.0-msvc2019_x64.zip | |
shell: cmd | |
- name: Cache libquentier master Qt5 | |
id: cache_libquentier_master_qt5 | |
env: | |
LIBQUENTIER_CACHE_VERSION: '2' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_win_master_qt5' | |
key: libquentier-win-master-qt5-${{ env.LIBQUENTIER_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '5.15.2' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
- name: Download or build libquentier master Qt5 | |
id: download_or_build_libquentier_master_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\libquentier_win_master_qt5\include (set LIBQUENTIER_CACHED=1) else (set LIBQUENTIER_CACHED=0) | |
echo "LIBQUENTIER_CACHED=%LIBQUENTIER_CACHED%" | |
if %LIBQUENTIER_CACHED%==0 mkdir %RUNNER_WORKSPACE%\libquentier_win_master_qt5 | |
if %LIBQUENTIER_CACHED%==0 cmd.exe /c curl -fsSL https://github.com/d1vanov/libquentier/releases/download/continuous-master/libquentier_windows_qt5.zip -o %RUNNER_WORKSPACE%\libquentier_win_master_qt5\libquentier_windows_qt5.zip | |
if %LIBQUENTIER_CACHED%==0 cd %RUNNER_WORKSPACE%\libquentier_win_master_qt5 | |
if %LIBQUENTIER_CACHED%==0 set LIBQUENTIER_DOWNLOADED=0 | |
if %LIBQUENTIER_CACHED%==0 if exist libquentier_windows_qt5.zip set LIBQUENTIER_DOWNLOADED=1 | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="1" echo "Downloaded prebuilt Qt5 libquentier from master branch" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="1" 7z x libquentier_windows_qt5.zip | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" echo "Could not download prebuilt Qt5 libquentier from master branch, will build from source" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" mkdir %RUNNER_WORKSPACE%\libquentier_win_master_qt5_src | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" git clone https://github.com/d1vanov/libquentier.git %RUNNER_WORKSPACE%\libquentier_win_master_qt5_src | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cd %RUNNER_WORKSPACE%\libquentier_win_master_qt5_src | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" git checkout master | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" mkdir build | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cd build | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt5\Qt\5.15.2\win64_msvc2019_x64" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\libiconv\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\libxml2\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\libhunspell\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\openssl\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\qtkeychain_qt5\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\tidy_html5\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\qevercloud_win_master_qt5\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\libiconv\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\libxml2\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\libhunspell\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\openssl\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\qtkeychain_qt5\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\tidy_html5\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\qevercloud_win_master_qt5\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\libiconv\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\libxml2\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\libhunspell\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\openssl\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\qtkeychain_qt5\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\tidy_html5\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\qevercloud_win_master_qt5\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\libquentier_win_master_qt5" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" -DQEverCloud-qt5_DIR="%RUNNER_WORKSPACE%\qevercloud_win_master_qt5\lib\cmake\QEverCloud-qt5" -DBOOST_ROOT="%RUNNER_WORKSPACE%\boost\boost_1_86_0" -DTIDY_HTML5_ROOT="%RUNNER_WORKSPACE%\tidy_html5" -DOPENSSL_ROOT_DIR="%RUNNER_WORKSPACE%\openssl" .. | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target lupdate | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target lrelease | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target all | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target install | |
if: ${{ matrix.qt_version == '5.15.2' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
shell: cmd | |
- name: Cache libquentier development Qt5 | |
id: cache_libquentier_development_qt5 | |
env: | |
LIBQUENTIER_CACHE_VERSION: '6' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_win_development_qt5' | |
key: libquentier-win-development-qt5-${{ env.LIBQUENTIER_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '5.15.2' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
- name: Download or build libquentier development Qt5 | |
id: download_or_build_libquentier_development_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\libquentier_win_development_qt5\include (set LIBQUENTIER_CACHED=1) else (set LIBQUENTIER_CACHED=0) | |
echo "LIBQUENTIER_CACHED=%LIBQUENTIER_CACHED%" | |
if %LIBQUENTIER_CACHED%==0 mkdir %RUNNER_WORKSPACE%\libquentier_win_development_qt5 | |
if %LIBQUENTIER_CACHED%==0 cmd.exe /c curl -fsSL https://github.com/d1vanov/libquentier/releases/download/continuous-development/libquentier_windows_qt5.zip -o %RUNNER_WORKSPACE%\libquentier_win_development_qt5\libquentier_windows_qt5.zip | |
if %LIBQUENTIER_CACHED%==0 cd %RUNNER_WORKSPACE%\libquentier_win_development_qt5 | |
if %LIBQUENTIER_CACHED%==0 set LIBQUENTIER_DOWNLOADED=0 | |
if %LIBQUENTIER_CACHED%==0 if exist libquentier_windows_qt5.zip set LIBQUENTIER_DOWNLOADED=1 | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="1" echo "Downloaded prebuilt Qt5 libquentier from development branch" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="1" 7z x libquentier_windows_qt5.zip | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" echo "Could not download prebuilt Qt5 libquentier from development branch, will build from source" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" mkdir %RUNNER_WORKSPACE%\libquentier_win_development_qt5_src | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" git clone https://github.com/d1vanov/libquentier.git %RUNNER_WORKSPACE%\libquentier_win_development_qt5_src | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cd %RUNNER_WORKSPACE%\libquentier_win_development_qt5_src | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" git checkout development | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" mkdir build | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cd build | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt5\Qt\5.15.2\win64_msvc2019_x64" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\libiconv\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\libxml2\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\libhunspell\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\openssl\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\qtkeychain_qt5\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\tidy_html5\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\qevercloud_win_development_qt5\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\libiconv\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\libxml2\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\libhunspell\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\openssl\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\qtkeychain_qt5\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\tidy_html5\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\qevercloud_win_development_qt5\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\libiconv\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\libxml2\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\libhunspell\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\openssl\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\qtkeychain_qt5\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\tidy_html5\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\qevercloud_win_development_qt5\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\libquentier_win_development_qt5" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" -DQEverCloud-qt5_DIR="%RUNNER_WORKSPACE%\qevercloud_win_development_qt5\lib\cmake\QEverCloud-qt5" -DBOOST_ROOT="%RUNNER_WORKSPACE%\boost\boost_1_86_0" -DTIDY_HTML5_ROOT="%RUNNER_WORKSPACE%\tidy_html5" -DOPENSSL_ROOT_DIR="%RUNNER_WORKSPACE%\openssl" .. | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target lupdate | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target lrelease | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target all | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target install | |
if: ${{ matrix.qt_version == '5.15.2' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
shell: cmd | |
- name: Cache libquentier integration Qt5 | |
id: cache_libquentier_integration_qt5 | |
env: | |
LIBQUENTIER_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_win_integration_qt6' | |
key: libquentier-win-integration-qt5-${{ env.LIBQUENTIER_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '5.15.2' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
- name: Build libquentier integration Qt5 | |
id: build_libquentier_integration_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\libquentier_win_integration_qt5\include (set LIBQUENTIER_CACHED=1) else (set LIBQUENTIER_CACHED=0) | |
echo "LIBQUENTIER_CACHED=%LIBQUENTIER_CACHED%" | |
if %LIBQUENTIER_CACHED%==0 mkdir %RUNNER_WORKSPACE%\libquentier_win_integration_qt5_src | |
if %LIBQUENTIER_CACHED%==0 git clone https://github.com/d1vanov/libquentier.git %RUNNER_WORKSPACE%\libquentier_win_integration_qt5_src | |
if %LIBQUENTIER_CACHED%==0 cd %RUNNER_WORKSPACE%\libquentier_win_integration_qt5_src | |
if %LIBQUENTIER_CACHED%==0 git checkout feature-new-release-integration | |
if %LIBQUENTIER_CACHED%==0 mkdir build | |
if %LIBQUENTIER_CACHED%==0 cd build | |
if %LIBQUENTIER_CACHED%==0 set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt5\Qt\5.15.2\win64_msvc2019_x64" | |
if %LIBQUENTIER_CACHED%==0 call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\libiconv\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\libxml2\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\libhunspell\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\openssl\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\qtkeychain_qt5\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\tidy_html5\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\qevercloud_win_integration_qt5\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\libiconv\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\libxml2\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\libhunspell\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\openssl\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\qtkeychain_qt5\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\tidy_html5\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\qevercloud_win_integration_qt5\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\libiconv\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\libxml2\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\libhunspell\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\openssl\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\qtkeychain_qt5\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\tidy_html5\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\qevercloud_win_integration_qt5\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\libquentier_win_integration_qt5" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" -DQEverCloud-qt5_DIR="%RUNNER_WORKSPACE%\qevercloud_win_integration_qt5\lib\cmake\QEverCloud-qt5" -DBOOST_ROOT="%RUNNER_WORKSPACE%\boost\boost_1_86_0" -DTIDY_HTML5_ROOT="%RUNNER_WORKSPACE%\tidy_html5" -DOPENSSL_ROOT_DIR="%RUNNER_WORKSPACE%\openssl" .. | |
if %LIBQUENTIER_CACHED%==0 cmake --build . --target lupdate | |
if %LIBQUENTIER_CACHED%==0 cmake --build . --target lrelease | |
if %LIBQUENTIER_CACHED%==0 cmake --build . --target all | |
if %LIBQUENTIER_CACHED%==0 cmake --build . --target install | |
if: ${{ matrix.qt_version == '5.15.2' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
shell: cmd | |
- name: Cache libquentier master Qt6 | |
id: cache_libquentier_master_qt6 | |
env: | |
LIBQUENTIER_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_win_master_qt6' | |
key: libquentier-win-master-qt6-${{ env.LIBQUENTIER_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
- name: Download or build libquentier master Qt6 | |
id: download_or_build_libquentier_master_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\libquentier_win_master_qt6\include (set LIBQUENTIER_CACHED=1) else (set LIBQUENTIER_CACHED=0) | |
echo "LIBQUENTIER_CACHED=%LIBQUENTIER_CACHED%" | |
if %LIBQUENTIER_CACHED%==0 mkdir %RUNNER_WORKSPACE%\libquentier_win_master_qt6 | |
if %LIBQUENTIER_CACHED%==0 cmd.exe /c curl -fsSL https://github.com/d1vanov/libquentier/releases/download/continuous-master/libquentier_windows_qt6.zip -o %RUNNER_WORKSPACE%\libquentier_win_master_qt6\libquentier_windows_qt6.zip | |
if %LIBQUENTIER_CACHED%==0 cd %RUNNER_WORKSPACE%\libquentier_win_master_qt6 | |
if %LIBQUENTIER_CACHED%==0 set LIBQUENTIER_DOWNLOADED=0 | |
if %LIBQUENTIER_CACHED%==0 if exist libquentier_windows_qt6.zip set LIBQUENTIER_DOWNLOADED=1 | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="1" echo "Downloaded prebuilt Qt6 libquentier from master branch" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="1" 7z x libquentier_windows_qt6.zip | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" echo "Could not download prebuilt Qt6 libquentier from master branch, will build from source" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" mkdir %RUNNER_WORKSPACE%\libquentier_win_master_qt6_src | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" git clone https://github.com/d1vanov/libquentier.git %RUNNER_WORKSPACE%\libquentier_win_master_qt6_src | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cd %RUNNER_WORKSPACE%\libquentier_win_master_qt6_src | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" git checkout master | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" mkdir build | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cd build | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt6\Qt\6.7.3\win64_msvc2019_x64" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\libiconv\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\libxml2\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\libhunspell\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\openssl\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\qtkeychain_qt6\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\tidy_html5\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\qevercloud_win_master_qt6\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\libiconv\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\libxml2\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\libhunspell\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\openssl\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\qtkeychain_qt6\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\tidy_html5\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\qevercloud_win_master_qt6\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\libiconv\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\libxml2\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\libhunspell\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\openssl\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\qtkeychain_qt6\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\tidy_html5\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\qevercloud_win_master_qt6\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake -G "NMake Makefiles" -DBUILD_WITH_QT6=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\libquentier_win_master_qt6" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" -DQEverCloud-qt6_DIR="%RUNNER_WORKSPACE%\qevercloud_win_master_qt6\lib\cmake\QEverCloud-qt6" -DBOOST_ROOT="%RUNNER_WORKSPACE%\boost\boost_1_86_0" -DTIDY_HTML5_ROOT="%RUNNER_WORKSPACE%\tidy_html5" -DOPENSSL_ROOT_DIR="%RUNNER_WORKSPACE%\openssl" .. | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target lupdate | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target lrelease | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target all | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target install | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref != 'development' && github.base_ref != 'integration-0.6.0')) }} | |
shell: cmd | |
- name: Cache libquentier development Qt6 | |
id: cache_libquentier_development_qt6 | |
env: | |
LIBQUENTIER_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_win_development_qt6' | |
key: libquentier-win-development-qt6-${{ env.LIBQUENTIER_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
- name: Download or build libquentier development Qt6 | |
id: download_or_build_libquentier_development_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\libquentier_win_development_qt6\include (set LIBQUENTIER_CACHED=1) else (set LIBQUENTIER_CACHED=0) | |
echo "LIBQUENTIER_CACHED=%LIBQUENTIER_CACHED%" | |
if %LIBQUENTIER_CACHED%==0 mkdir %RUNNER_WORKSPACE%\libquentier_win_development_qt6 | |
if %LIBQUENTIER_CACHED%==0 cmd.exe /c curl -fsSL https://github.com/d1vanov/libquentier/releases/download/continuous-development/libquentier_windows_qt6.zip -o %RUNNER_WORKSPACE%\libquentier_win_development_qt6\libquentier_windows_qt6.zip | |
if %LIBQUENTIER_CACHED%==0 cd %RUNNER_WORKSPACE%\libquentier_win_development_qt6 | |
if %LIBQUENTIER_CACHED%==0 set LIBQUENTIER_DOWNLOADED=0 | |
if %LIBQUENTIER_CACHED%==0 if exist libquentier_windows_qt6.zip set LIBQUENTIER_DOWNLOADED=1 | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="1" echo "Downloaded prebuilt Qt6 libquentier from development branch" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="1" 7z x libquentier_windows_qt6.zip | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" echo "Could not download prebuilt Qt6 libquentier from development branch, will build from source" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" mkdir %RUNNER_WORKSPACE%\libquentier_win_development_qt6_src | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" git clone https://github.com/d1vanov/libquentier.git %RUNNER_WORKSPACE%\libquentier_win_development_qt6_src | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cd %RUNNER_WORKSPACE%\libquentier_win_development_qt6_src | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" git checkout development | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" mkdir build | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cd build | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt6\Qt\6.7.3\win64_msvc2019_x64" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\libiconv\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\libxml2\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\libhunspell\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\openssl\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\qtkeychain_qt6\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\tidy_html5\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set PATH=%RUNNER_WORKSPACE%\qevercloud_win_development_qt6\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\libiconv\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\libxml2\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\libhunspell\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\openssl\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\qtkeychain_qt6\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\tidy_html5\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set LIB=%RUNNER_WORKSPACE%\qevercloud_win_development_qt6\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\libiconv\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\libxml2\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\libhunspell\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\openssl\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\qtkeychain_qt6\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\tidy_html5\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" set INCLUDE=%RUNNER_WORKSPACE%\qevercloud_win_development_qt6\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake -G "NMake Makefiles" -DBUILD_WITH_QT6=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\libquentier_win_development_qt6" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" -DQEverCloud-qt6_DIR="%RUNNER_WORKSPACE%\qevercloud_win_development_qt6\lib\cmake\QEverCloud-qt6" -DBOOST_ROOT="%RUNNER_WORKSPACE%\boost\boost_1_86_0" -DTIDY_HTML5_ROOT="%RUNNER_WORKSPACE%\tidy_html5" -DOPENSSL_ROOT_DIR="%RUNNER_WORKSPACE%\openssl" .. | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target lupdate | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target lrelease | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target all | |
if %LIBQUENTIER_CACHED%==0 if "%LIBQUENTIER_DOWNLOADED%"=="0" cmake --build . --target install | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/development') || (github.event_name == 'pull_request' && github.base_ref == 'development')) }} | |
shell: cmd | |
- name: Cache libquentier integration Qt6 | |
id: cache_libquentier_integration_qt6 | |
env: | |
LIBQUENTIER_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/libquentier_win_integration_qt6' | |
key: libquentier-win-integration-qt6-${{ env.LIBQUENTIER_CACHE_VERSION }} | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
- name: Build libquentier integration Qt6 | |
id: build_libquentier_integration_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if exist %RUNNER_WORKSPACE%\libquentier_win_integration_qt6\include (set LIBQUENTIER_CACHED=1) else (set LIBQUENTIER_CACHED=0) | |
echo "LIBQUENTIER_CACHED=%LIBQUENTIER_CACHED%" | |
if %LIBQUENTIER_CACHED%==0 mkdir %RUNNER_WORKSPACE%\libquentier_win_integration_qt6_src | |
if %LIBQUENTIER_CACHED%==0 git clone https://github.com/d1vanov/libquentier.git %RUNNER_WORKSPACE%\libquentier_win_integration_qt6_src | |
if %LIBQUENTIER_CACHED%==0 cd %RUNNER_WORKSPACE%\libquentier_win_integration_qt6_src | |
if %LIBQUENTIER_CACHED%==0 git checkout feature-new-release-integration | |
if %LIBQUENTIER_CACHED%==0 mkdir build | |
if %LIBQUENTIER_CACHED%==0 cd build | |
if %LIBQUENTIER_CACHED%==0 set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt6\Qt\6.7.3\win64_msvc2019_x64" | |
if %LIBQUENTIER_CACHED%==0 call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\libiconv\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\libxml2\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\libhunspell\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\openssl\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\qtkeychain_qt6\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\tidy_html5\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set PATH=%RUNNER_WORKSPACE%\qevercloud_win_integration_qt6\bin;%PATH% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\libiconv\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\libxml2\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\libhunspell\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\openssl\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\qtkeychain_qt6\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\tidy_html5\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set LIB=%RUNNER_WORKSPACE%\qevercloud_win_integration_qt6\lib;%LIB% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\libiconv\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\libxml2\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\libhunspell\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\openssl\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\qtkeychain_qt6\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\tidy_html5\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 set INCLUDE=%RUNNER_WORKSPACE%\qevercloud_win_integration_qt6\include;%INCLUDE% | |
if %LIBQUENTIER_CACHED%==0 cmake -G "NMake Makefiles" -DBUILD_WITH_QT6=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%RUNNER_WORKSPACE%\libquentier_win_integration_qt6" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" -DQEverCloud-qt6_DIR="%RUNNER_WORKSPACE%\qevercloud_win_integration_qt6\lib\cmake\QEverCloud-qt6" -DBOOST_ROOT="%RUNNER_WORKSPACE%\boost\boost_1_86_0" -DTIDY_HTML5_ROOT="%RUNNER_WORKSPACE%\tidy_html5" -DOPENSSL_ROOT_DIR="%RUNNER_WORKSPACE%\openssl" .. | |
if %LIBQUENTIER_CACHED%==0 cmake --build . --target lupdate | |
if %LIBQUENTIER_CACHED%==0 cmake --build . --target lrelease | |
if %LIBQUENTIER_CACHED%==0 cmake --build . --target all | |
if %LIBQUENTIER_CACHED%==0 cmake --build . --target install | |
if: ${{ matrix.qt_version == '6.7.3' && ((github.event_name == 'push' && github.ref == 'refs/heads/integration-0.6.0') || (github.event_name == 'pull_request' && github.base_ref == 'integration-0.6.0')) }} | |
shell: cmd | |
- name: Cache Google breakpad | |
id: cache_google_breakpad | |
env: | |
GOOGLE_BREAKPAD_CACHE_VERSION: '1' | |
uses: actions/cache@v4 | |
with: | |
path: '${{ runner.workspace }}/breakpad' | |
key: breakpad-${{ env.GOOGLE_BREAKPAD_CACHE_VERSION }} | |
- name: Download Google breakpad | |
id: download_breakpad | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
run: | | |
if not exist %RUNNER_WORKSPACE%\breakpad (set DOWNLOAD_BREAKPAD=1) else (set DOWNLOAD_BREAKPAD=0) | |
if %DOWNLOAD_BREAKPAD%==1 mkdir %RUNNER_WORKSPACE%\breakpad | |
if %DOWNLOAD_BREAKPAD%==1 curl -fsSL https://github.com/d1vanov/quentier-dependencies-windows/releases/download/continuous/breakpad-msvc2019_x64.zip -o %RUNNER_WORKSPACE%\breakpad\breakpad-msvc2019_x64.zip | |
if %DOWNLOAD_BREAKPAD%==1 cd %RUNNER_WORKSPACE%\breakpad | |
if %DOWNLOAD_BREAKPAD%==1 7z x breakpad-msvc2019_x64.zip | |
shell: cmd | |
- name: Build, test and install Qt5 | |
id: build_test_install_qt5 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
GITHUB_EVENT_NAME: ${{ github.event_name }} | |
GITHUB_REF: ${{ github.ref }} | |
GITHUB_BASE_REF: ${{ github.base_ref }} | |
run: | | |
set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt5\Qt\5.15.2\win64_msvc2019_x64" | |
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
set PATH=%RUNNER_WORKSPACE%\libiconv\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\libxml2\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\libhunspell\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\openssl\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\qtkeychain_qt5\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\tidy_html5\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\breakpad\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\zlib\bin;%PATH% | |
set LIB=%RUNNER_WORKSPACE%\libiconv\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\libxml2\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\libhunspell\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\openssl\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\qtkeychain_qt5\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\tidy_html5\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\breakpad\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\zlib\lib;%LIB% | |
set INCLUDE=%RUNNER_WORKSPACE%\libiconv\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\libxml2\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\libhunspell\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\openssl\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\qtkeychain_qt5\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\tidy_html5\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\breakpad\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\zlib\include;%INCLUDE% | |
set BRANCH_NAME=master | |
if "%GITHUB_EVENT_NAME%"=="push" if "%GITHUB_REF%"=="refs/heads/development" set BRANCH_NAME=development | |
if "%GITHUB_EVENT_NAME%"=="pull_request" if "%GITHUB_BASE_REF%"=="development" set BRANCH_NAME=development | |
if "%GITHUB_EVENT_NAME%"=="push" if "%GITHUB_REF%"=="refs/heads/integration-0.6.0" set BRANCH_NAME=integration-0.6.0 | |
if "%GITHUB_EVENT_NAME%"=="pull_request" if "%GITHUB_BASE_REF%"=="integration-0.6.0" set BRANCH_NAME=integration-0.6.0 | |
if "%BRANCH_NAME%"=="master" set QEVERCLOUD_DIR=%RUNNER_WORKSPACE%\qevercloud_win_master_qt5 | |
if "%BRANCH_NAME%"=="development" set QEVERCLOUD_DIR=%RUNNER_WORKSPACE%\qevercloud_win_development_qt5 | |
if "%BRANCH_NAME%"=="integration-0.6.0" set QEVERCLOUD_DIR=%RUNNER_WORKSPACE%\qevercloud_win_integration_qt5 | |
set INCLUDE=%QEVERCLOUD_DIR%\include;%INCLUDE% | |
set LIB=%QEVERCLOUD_DIR%\lib;%LIB% | |
set PATH=%QEVERCLOUD_DIR%\bin;%PATH% | |
if "%BRANCH_NAME%"=="master" set LIBQUENTIER_DIR=%RUNNER_WORKSPACE%\libquentier_win_master_qt5 | |
if "%BRANCH_NAME%"=="development" set LIBQUENTIER_DIR=%RUNNER_WORKSPACE%\libquentier_win_development_qt5 | |
if "%BRANCH_NAME%"=="integration-0.6.0" set LIBQUENTIER_DIR=%RUNNER_WORKSPACE%\libquentier_win_integration_qt5 | |
set INCLUDE=%LIBQUENTIER_DIR%\include;%INCLUDE% | |
set LIB=%LIBQUENTIER_DIR%\lib;%LIB% | |
set PATH=%LIBQUENTIER_DIR%\bin;%PATH% | |
if "%BRANCH_NAME%"=="master" set DEFAULT_UPDATE_CHANNEL="master" | |
if "%BRANCH_NAME%"=="development" set DEFAULT_UPDATE_CHANNEL="development" | |
if "%BRANCH_NAME%"=="integration-0.6.0" set DEFAULT_UPDATE_CHANNEL="integration" | |
echo "BRANCH_NAME=%BRANCH_NAME%, QEVERCLOUD_DIR=%QEVERCLOUD_DIR%, LIBQUENTIER_DIR=%LIBQUENTIER_DIR%" | |
cd %GITHUB_WORKSPACE% | |
md build | |
cd build | |
md bin | |
md bin\quentier | |
copy %RUNNER_WORKSPACE%\breakpad\bin\common.pdb bin\quentier\common.pdb | |
copy %RUNNER_WORKSPACE%\breakpad\bin\crash_generation_client.pdb bin\quentier\crash_generation_client.pdb | |
copy %RUNNER_WORKSPACE%\breakpad\bin\crash_generation_server.pdb bin\quentier\crash_generation_server.pdb | |
copy %RUNNER_WORKSPACE%\breakpad\bin\exception_handler.pdb bin\quentier\exception_handler.pdb | |
cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX="%GITHUB_WORKSPACE%\build\installdir" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" -DQEverCloud-qt5_DIR="%QEVERCLOUD_DIR%\lib\cmake\QEverCloud-qt5" -DLibquentier-qt5_DIR="%LIBQUENTIER_DIR%\lib\cmake\Libquentier-qt5" -DBOOST_ROOT="%RUNNER_WORKSPACE%\boost\boost_1_86_0" -DBREAKPAD_ROOT="%RUNNER_WORKSPACE%\breakpad" -DINCLUDE_UPDATE_INFO=YES -DDEFAULT_UPDATE_CHANNEL="%DEFAULT_UPDATE_CHANNEL%" -DDEFAULT_UPDATE_PROVIDER="GITHUB" -DZLIB_LIBRARY="%RUNNER_WORKSPACE%\zlib\lib\libz.lib" -DNSIS_MAKE="C:/Program Files (x86)/NSIS/makensis.exe" -DTIDY_HTML5_ROOT="%RUNNER_WORKSPACE%\tidy_html5" -DLIBQUENTIER_BREAKPAD_SYMS="%LIBQUENTIER_DIR%\bin\libqt5quentier.syms" -DOPENSSL_ROOT_DIR="%RUNNER_WORKSPACE%\openssl" .. | |
cmake --build . --target all | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target check | |
cmake --build . --target install | |
if: ${{ matrix.qt_version == '5.15.2' }} | |
shell: cmd | |
- name: Build, test and install Qt6 | |
id: build_test_install_qt6 | |
env: | |
RUNNER_WORKSPACE: ${{ runner.workspace }} | |
GITHUB_EVENT_NAME: ${{ github.event_name }} | |
GITHUB_REF: ${{ github.ref }} | |
GITHUB_BASE_REF: ${{ github.base_ref }} | |
run: | | |
set CMAKE_PREFIX_PATH="%RUNNER_WORKSPACE%\Qt6\Qt\c6.7.3\win64_msvc2019_x64" | |
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
set PATH=%RUNNER_WORKSPACE%\libiconv\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\libxml2\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\libhunspell\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\openssl\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\qtkeychain_qt6\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\tidy_html5\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\breakpad\bin;%PATH% | |
set PATH=%RUNNER_WORKSPACE%\zlib\bin;%PATH% | |
set LIB=%RUNNER_WORKSPACE%\libiconv\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\libxml2\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\libhunspell\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\openssl\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\qtkeychain_qt6\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\tidy_html5\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\breakpad\lib;%LIB% | |
set LIB=%RUNNER_WORKSPACE%\zlib\lib;%LIB% | |
set INCLUDE=%RUNNER_WORKSPACE%\libiconv\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\libxml2\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\libhunspell\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\openssl\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\qtkeychain_qt6\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\tidy_html5\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\breakpad\include;%INCLUDE% | |
set INCLUDE=%RUNNER_WORKSPACE%\zlib\include;%INCLUDE% | |
set BRANCH_NAME=master | |
if "%GITHUB_EVENT_NAME%"=="push" if "%GITHUB_REF%"=="refs/heads/development" set BRANCH_NAME=development | |
if "%GITHUB_EVENT_NAME%"=="pull_request" if "%GITHUB_BASE_REF%"=="development" set BRANCH_NAME=development | |
if "%GITHUB_EVENT_NAME%"=="push" if "%GITHUB_REF%"=="refs/heads/integration-0.6.0" set BRANCH_NAME=integration-0.6.0 | |
if "%GITHUB_EVENT_NAME%"=="pull_request" if "%GITHUB_BASE_REF%"=="integration-0.6.0" set BRANCH_NAME=integration-0.6.0 | |
if "%BRANCH_NAME%"=="master" set QEVERCLOUD_DIR=%RUNNER_WORKSPACE%\qevercloud_win_master_qt6 | |
if "%BRANCH_NAME%"=="development" set QEVERCLOUD_DIR=%RUNNER_WORKSPACE%\qevercloud_win_development_qt6 | |
if "%BRANCH_NAME%"=="integration-0.6.0" set QEVERCLOUD_DIR=%RUNNER_WORKSPACE%\qevercloud_win_integration_qt6 | |
set INCLUDE=%QEVERCLOUD_DIR%\include;%INCLUDE% | |
set LIB=%QEVERCLOUD_DIR%\lib;%LIB% | |
set PATH=%QEVERCLOUD_DIR%\bin;%PATH% | |
if "%BRANCH_NAME%"=="master" set LIBQUENTIER_DIR=%RUNNER_WORKSPACE%\libquentier_win_master_qt6 | |
if "%BRANCH_NAME%"=="development" set LIBQUENTIER_DIR=%RUNNER_WORKSPACE%\libquentier_win_development_qt6 | |
if "%BRANCH_NAME%"=="integration-0.6.0" set LIBQUENTIER_DIR=%RUNNER_WORKSPACE%\libquentier_win_integration_qt6 | |
set INCLUDE=%LIBQUENTIER_DIR%\include;%INCLUDE% | |
set LIB=%LIBQUENTIER_DIR%\lib;%LIB% | |
set PATH=%LIBQUENTIER_DIR%\bin;%PATH% | |
if "%BRANCH_NAME%"=="master" set DEFAULT_UPDATE_CHANNEL="master" | |
if "%BRANCH_NAME%"=="development" set DEFAULT_UPDATE_CHANNEL="development" | |
if "%BRANCH_NAME%"=="integration-0.6.0" set DEFAULT_UPDATE_CHANNEL="integration" | |
echo "BRANCH_NAME=%BRANCH_NAME%, QEVERCLOUD_DIR=%QEVERCLOUD_DIR%, LIBQUENTIER_DIR=%LIBQUENTIER_DIR%" | |
cd %GITHUB_WORKSPACE% | |
md build | |
cd build | |
md bin | |
md bin\quentier | |
copy %RUNNER_WORKSPACE%\breakpad\bin\common.pdb bin\quentier\common.pdb | |
copy %RUNNER_WORKSPACE%\breakpad\bin\crash_generation_client.pdb bin\quentier\crash_generation_client.pdb | |
copy %RUNNER_WORKSPACE%\breakpad\bin\crash_generation_server.pdb bin\quentier\crash_generation_server.pdb | |
copy %RUNNER_WORKSPACE%\breakpad\bin\exception_handler.pdb bin\quentier\exception_handler.pdb | |
cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_WITH_QT6=ON -DCMAKE_INSTALL_PREFIX="%GITHUB_WORKSPACE%\build\installdir" -DCMAKE_PREFIX_PATH="%CMAKE_PREFIX_PATH%" -DQEverCloud-qt6_DIR="%QEVERCLOUD_DIR%\lib\cmake\QEverCloud-qt6" -DLibquentier-qt6_DIR="%LIBQUENTIER_DIR%\lib\cmake\Libquentier-qt6" -DBOOST_ROOT="%RUNNER_WORKSPACE%\boost\boost_1_86_0" -DBREAKPAD_ROOT="%RUNNER_WORKSPACE%\breakpad" -DINCLUDE_UPDATE_INFO=YES -DDEFAULT_UPDATE_CHANNEL="%DEFAULT_UPDATE_CHANNEL%" -DDEFAULT_UPDATE_PROVIDER="GITHUB" -DZLIB_LIBRARY="%RUNNER_WORKSPACE%\zlib\lib\libz.lib" -DNSIS_MAKE="C:/Program Files (x86)/NSIS/makensis.exe" -DTIDY_HTML5_ROOT="%RUNNER_WORKSPACE%\tidy_html5" -DLIBQUENTIER_BREAKPAD_SYMS="%LIBQUENTIER_DIR%\bin\libqt5quentier.syms" -DOPENSSL_ROOT_DIR="%RUNNER_WORKSPACE%\openssl" .. | |
cmake --build . --target all | |
cmake --build . --target lupdate | |
cmake --build . --target lrelease | |
cmake --build . --target check | |
cmake --build . --target install | |
if: ${{ matrix.qt_version == '6.7.3' }} | |
shell: cmd | |
- name: Create portable installation archive Qt5 | |
id: create_portable_installation_archive_qt5 | |
run: | | |
cd %GITHUB_WORKSPACE% | |
move "build\bin\quentier\SetupQuentier 0.6.0 Qt 5.15.2 MSVC2019 x64.exe" . | |
7z a -tzip -mx=9 -mfb=128 -mpass=10 Quentier-windows-portable-qt5-x64.zip build\installdir\* | |
if: ${{ matrix.qt_version == '5.15.2' }} | |
shell: cmd | |
- name: Create portable installation archive Qt6 | |
id: create_portable_installation_archive_qt6 | |
run: | | |
cd %GITHUB_WORKSPACE% | |
move "build\bin\quentier\SetupQuentier 0.6.0 Qt 6.7.3 MSVC2019 x64.exe" . | |
7z a -tzip -mx=9 -mfb=128 -mpass=10 Quentier-windows-portable-qt6-x64.zip build\installdir\* | |
if: ${{ matrix.qt_version == '6.7.3' }} | |
shell: cmd | |
- name: Upload Qt5 setup package | |
id: upload_setup_package_qt5 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: quentier_windows_qt5_setup | |
path: '${{ github.workspace }}\SetupQuentier 0.6.0 Qt 5.15.2 MSVC2019 x64.exe' | |
if: ${{ matrix.qt_version == '5.15.2' }} | |
- name: Upload Qt5 portable package | |
id: upload_portable_package_qt5 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: quentier_windows_qt5_portable | |
path: '${{ github.workspace }}\Quentier-windows-portable-qt5-x64.zip' | |
if: ${{ matrix.qt_version == '5.15.2' }} | |
- name: Upload Qt6 setup package | |
id: upload_setup_package_qt6 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: quentier_windows_qt6_setup | |
path: '${{ github.workspace }}\SetupQuentier 0.6.0 Qt 6.7.3 MSVC2019 x64.exe' | |
if: ${{ matrix.qt_version == '6.7.3' }} | |
- name: Upload Qt6 portable package | |
id: upload_portable_package_qt6 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: quentier_windows_qt6_portable | |
path: '${{ github.workspace }}\Quentier-windows-portable-qt6-x64.zip' | |
if: ${{ matrix.qt_version == '6.7.3' }} | |
create_new_release: | |
if: ${{ github.event_name == 'push' && !contains(github.event.head_commit.message, '[skip ci]') }} | |
runs-on: ubuntu-latest | |
needs: [build_linux, build_macos, build_windows] | |
steps: | |
- name: Install dependencies | |
id: install_deps | |
run: | | |
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key C99B11DEB97541F0 | |
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key 23F3D4EA75716059 | |
type -p curl >/dev/null || sudo apt install curl -y | |
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg | |
sudo chmod go+r /usr/share/keyrings/githubcli-archive-keyring.gpg | |
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \ | |
sudo apt update | |
sudo apt install -qq gh | |
sudo apt install -qq jq | |
sudo apt install -qq p7zip | |
- name: Delete previous continuous release | |
id: delete_previous_continuous_release | |
if: ${{ github.ref == 'refs/heads/master' || github.ref == 'refs/heads/development' || github.ref == 'refs/heads/integration-0.6.0' }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
export BRANCH_NAME=$(echo $GITHUB_REF | sed 's/.*\/\(.*\)$/\1/') | |
gh api /repos/d1vanov/quentier/releases/tags/continuous-${BRANCH_NAME} > /tmp/gh_get_release.json && exit_status=$? || exit_status=$? | |
if [ "${exit_status}" = 0 ]; then | |
export COMMIT_SHA=$(cat /tmp/gh_get_release.json | jq '.target_commitish') | |
if ! [ "${COMMIT_SHA}" = "${GITHUB_SHA}" ]; then | |
export PREVIOUS_CONTINUOUS_RELEASE_DELETED=0 | |
for i in {1..10} | |
do | |
echo "Trying to delete previous continuous release continuous-${BRANCH_NAME}" | |
gh release delete continuous-${BRANCH_NAME} -y -R d1vanov/quentier; | |
curl -X DELETE -H "Authorization: token ${GITHUB_TOKEN}" -H "Accept: application/vnd.github.v3+json" https://api.github.com/repos/d1vanov/quentier/git/refs/tags/continuous-${BRANCH_NAME}; | |
gh api /repos/d1vanov/quentier/releases/tags/continuous-${BRANCH_NAME} > /tmp/gh_get_release.json && exit_status=$? || exit_status=$? | |
if [ "${exit_status}" != 0 ]; then | |
echo "It appears that previous continuous release is deleted now" | |
export PREVIOUS_CONTINUOUS_RELEASE_DELETED=1 | |
break | |
fi | |
echo "Was able to receive information about the attempted to be deleted previous continuous release, waiting for 5 seconds before the next attempt" | |
sleep 5 | |
done | |
if [ "$PREVIOUS_CONTINUOUS_RELEASE_DELETED" != "1" ]; then | |
echo "Failed to delete previous continuous release after several attempts!" | |
fi | |
fi | |
fi | |
shell: bash | |
- name: Create new continuous master release | |
id: create_new_continuous_master_release | |
if: ${{ github.ref == 'refs/heads/master' }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
gh release create continuous-master --draft=false --prerelease --title "Continuous build (continuous-master)" --target $GITHUB_SHA -R d1vanov/quentier | |
- name: Create new continuous development release | |
id: create_new_continuous_development_release | |
if: ${{ github.ref == 'refs/heads/development' }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
gh release create continuous-development --draft=false --prerelease --title "Continuous build (continuous-development)" --target $GITHUB_SHA -R d1vanov/quentier | |
- name: Create new continuous integration release | |
id: create_new_continuous_integration_release | |
if: ${{ github.ref == 'refs/heads/integration-0.6.0' }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
gh release create continuous-integration --draft=false --prerelease --title "Temporary experimental integration release, do not use! (continuous-integration)" --target $GITHUB_SHA -R d1vanov/quentier | |
- name: Create new tagged release | |
id: create_new_tagged_release | |
if: ${{ github.ref != 'refs/heads/master' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0' }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
GITHUB_REF: ${{ github.ref }} | |
GITHUB_REF_NAME: ${{ github.ref_name }} | |
run: | | |
gh release create "$GITHUB_REF" --title "Release build ($GITHUB_REF_NAME)" --target $GITHUB_SHA -R d1vanov/quentier | |
- name: Download linux artifacts | |
id: download_linux_artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: quentier_linux | |
path: '${{ github.workspace }}/artifacts' | |
- name: Download macOS artifact | |
id: download_macos_artifact | |
uses: actions/download-artifact@v4 | |
with: | |
name: quentier_macos | |
path: '${{ github.workspace }}/artifacts' | |
- name: Download Windows Qt5 setup package | |
id: download_windows_qt5_setup_package | |
uses: actions/download-artifact@v4 | |
with: | |
name: quentier_windows_qt5_setup | |
path: '${{ github.workspace }}/artifacts' | |
- name: Download Windows Qt5 portable package | |
id: download_windows_qt5_portable_package | |
uses: actions/download-artifact@v4 | |
with: | |
name: quentier_windows_qt5_portable | |
path: '${{ github.workspace }}/artifacts' | |
- name: Download Windows Qt6 setup package | |
id: download_windows_qt6_setup_package | |
uses: actions/download-artifact@v4 | |
with: | |
name: quentier_windows_qt6_setup | |
path: '${{ github.workspace }}/artifacts' | |
- name: Download Windows Qt6 portable package | |
id: download_windows_qt6_portable_package | |
uses: actions/download-artifact@v4 | |
with: | |
name: quentier_windows_qt6_portable | |
path: '${{ github.workspace }}/artifacts' | |
- name: Upload Linux artifacts to continuous master release | |
id: upload_linux_artifacts_to_continuous_master_release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
for i in 0..3 | |
do | |
export UPLOADED=0 | |
gh release upload --clobber continuous-master $GITHUB_WORKSPACE/artifacts/Quentier*.AppImage* -R d1vanov/quentier && export UPLOADED=1 || true | |
if [ "$UPLOADED" = "1" ]; then | |
break | |
fi | |
done | |
if [ "$UPLOADED" != "1" ]; then | |
echo "Failed to upload artifacts to release" | |
exit 1 | |
fi | |
if: ${{ github.ref == 'refs/heads/master' }} | |
shell: bash | |
- name: Upload Linux artifacts to continuous development release | |
id: upload_linux_artifacts_to_continuous_development_release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
for i in 0..3 | |
do | |
export UPLOADED=0 | |
gh release upload --clobber continuous-development $GITHUB_WORKSPACE/artifacts/Quentier*.AppImage* -R d1vanov/quentier && export UPLOADED=1 || true | |
if [ "$UPLOADED" = "1" ]; then | |
break | |
fi | |
done | |
if [ "$UPLOADED" != "1" ]; then | |
echo "Failed to upload artifact to release" | |
exit 1 | |
fi | |
if: ${{ github.ref == 'refs/heads/development' }} | |
shell: bash | |
- name: Upload Linux artifacts to continuous integration release | |
id: upload_linux_artifacts_to_continuous_integration_release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
for i in 0..3 | |
do | |
export UPLOADED=0 | |
gh release upload --clobber continuous-integration $GITHUB_WORKSPACE/artifacts/Quentier*.AppImage* -R d1vanov/quentier && export UPLOADED=1 || true | |
if [ "$UPLOADED" = "1" ]; then | |
break | |
fi | |
done | |
if [ "$UPLOADED" != "1" ]; then | |
echo "Failed to upload artifact to release" | |
exit 1 | |
fi | |
if: ${{ github.ref == 'refs/heads/integration-0.6.0' }} | |
shell: bash | |
- name: Upload macOS artifact to continuous master release | |
id: upload_macos_artifact_to_continuous_master_release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
for i in 0..3 | |
do | |
export UPLOADED=0 | |
gh release upload --clobber continuous-master $GITHUB_WORKSPACE/artifacts/Quentier_mac_x86_64.zip -R d1vanov/quentier && export UPLOADED=1 || true | |
if [ "$UPLOADED" = "1" ]; then | |
break | |
fi | |
done | |
if [ "$UPLOADED" != "1" ]; then | |
echo "Failed to upload artifact to release" | |
exit 1 | |
fi | |
if: ${{ github.ref == 'refs/heads/master' }} | |
shell: bash | |
- name: Upload macOS artifact to continuous development release | |
id: upload_macos_artifact_to_continuous_development_release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
for i in 0..3 | |
do | |
export UPLOADED=0 | |
gh release upload --clobber continuous-development $GITHUB_WORKSPACE/artifacts/Quentier_mac_x86_64.zip -R d1vanov/quentier && export UPLOADED=1 || true | |
if [ "$UPLOADED" = "1" ]; then | |
break | |
fi | |
done | |
if [ "$UPLOADED" != "1" ]; then | |
echo "Failed to upload artifact to release" | |
exit 1 | |
fi | |
if: ${{ github.ref == 'refs/heads/development' }} | |
shell: bash | |
- name: Upload macOS artifact to continuous integration release | |
id: upload_macos_artifact_to_continuous_integration_release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
for i in 0..3 | |
do | |
export UPLOADED=0 | |
gh release upload --clobber continuous-integration $GITHUB_WORKSPACE/artifacts/Quentier_mac_x86_64.zip -R d1vanov/quentier && export UPLOADED=1 || true | |
if [ "$UPLOADED" = "1" ]; then | |
break | |
fi | |
done | |
if [ "$UPLOADED" != "1" ]; then | |
echo "Failed to upload artifact to release" | |
exit 1 | |
fi | |
if: ${{ github.ref == 'refs/heads/integration-0.6.0' }} | |
shell: bash | |
- name: Upload Windows artifacts to continuous master release | |
id: upload_windows_artifacts_to_continuous_master_release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
for i in 0..3 | |
do | |
export UPLOADED=0 | |
gh release upload --clobber continuous-master $GITHUB_WORKSPACE/artifacts/Setup*.exe $GITHUB_WORKSPACE/artifacts/Quentier-windows-portable-qt5-x64.zip $GITHUB_WORKSPACE/artifacts/Quentier-windows-portable-qt6-x64.zip -R d1vanov/quentier && export UPLOADED=1 || true | |
if [ "$UPLOADED" = "1" ]; then | |
break | |
fi | |
done | |
if [ "$UPLOADED" != "1" ]; then | |
echo "Failed to upload artifacts to release" | |
exit 1 | |
fi | |
if: ${{ github.ref == 'refs/heads/master' }} | |
shell: bash | |
- name: Upload Windows artifacts to continuous development release | |
id: upload_windows_artifacts_to_continuous_development_release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
for i in 0..3 | |
do | |
export UPLOADED=0 | |
gh release upload --clobber continuous-development $GITHUB_WORKSPACE/artifacts/Setup*.exe $GITHUB_WORKSPACE/artifacts/Quentier-windows-portable-qt5-x64.zip $GITHUB_WORKSPACE/artifacts/Quentier-windows-portable-qt6-x64.zip -R d1vanov/quentier && export UPLOADED=1 || true | |
if [ "$UPLOADED" = "1" ]; then | |
break | |
fi | |
done | |
if [ "$UPLOADED" != "1" ]; then | |
echo "Failed to upload artifacts to release" | |
exit 1 | |
fi | |
if: ${{ github.ref == 'refs/heads/development' }} | |
shell: bash | |
- name: Upload Windows artifacts to continuous integration release | |
id: upload_windows_artifacts_to_continuous_integration_release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
for i in 0..3 | |
do | |
export UPLOADED=0 | |
gh release upload --clobber continuous-integration $GITHUB_WORKSPACE/artifacts/Setup*.exe $GITHUB_WORKSPACE/artifacts/Quentier-windows-portable-qt5-x64.zip $GITHUB_WORKSPACE/artifacts/Quentier-windows-portable-qt6-x64.zip -R d1vanov/quentier && export UPLOADED=1 || true | |
if [ "$UPLOADED" = "1" ]; then | |
break | |
fi | |
done | |
if [ "$UPLOADED" != "1" ]; then | |
echo "Failed to upload artifacts to release" | |
exit 1 | |
fi | |
if: ${{ github.ref == 'refs/heads/integration-0.6.0' }} | |
shell: bash | |
- name: Ensure continuous master release is not a draft | |
id: ensure_continuous_master_is_not_a_draft | |
if: ${{ github.ref == 'refs/heads/master' }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
GITHUB_REF: ${{ github.ref }} | |
run: | | |
gh release edit continuous-master --draft=false -R d1vanov/quentier | |
- name: Ensure continuous development release is not a draft | |
id: ensure_continuous_development_is_not_a_draft | |
if: ${{ github.ref == 'refs/heads/development' }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
GITHUB_REF: ${{ github.ref }} | |
run: | | |
gh release edit continuous-development --draft=false -R d1vanov/quentier | |
- name: Ensure continuous integration release is not a draft | |
id: ensure_continuous_integration_is_not_a_draft | |
if: ${{ github.ref == 'refs/heads/integration-0.6.0' }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
GITHUB_REF: ${{ github.ref }} | |
run: | | |
gh release edit continuous-integration --draft=false -R d1vanov/quentier | |
- name: Upload Linux artifact to tagged release | |
id: upload_linux_artifact_to_tagged_release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
export TAG_NAME=$(echo $GITHUB_REF | sed 's/.*\/\(.*\)$/\1/') | |
for i in 0..3 | |
do | |
export UPLOADED=0 | |
gh release upload --clobber ${TAG_NAME} $GITHUB_WORKSPACE/artifacts/Quentier*.AppImage* -R d1vanov/quentier && export UPLOADED=1 || true | |
if [ "$UPLOADED" = "1" ]; then | |
break | |
fi | |
done | |
if [ "$UPLOADED" != "1" ]; then | |
echo "Failed to upload artifacts to release" | |
exit 1 | |
fi | |
if: ${{ github.ref != 'refs/heads/master' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0' }} | |
shell: bash | |
- name: Upload macOS artifact to tagged release | |
id: upload_macos_artifact_to_tagged_release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
export TAG_NAME=$(echo $GITHUB_REF | sed 's/.*\/\(.*\)$/\1/') | |
for i in 0..3 | |
do | |
export UPLOADED=0 | |
gh release upload --clobber ${TAG_NAME} $GITHUB_WORKSPACE/artifacts/Quentier_mac_x86_64.zip -R d1vanov/libquentier && export UPLOADED=1 || true | |
if [ "$UPLOADED" = "1" ]; then | |
break | |
fi | |
done | |
if [ "$UPLOADED" != "1" ]; then | |
echo "Failed to upload artifact to release" | |
exit 1 | |
fi | |
if: ${{ github.ref != 'refs/heads/master' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0' }} | |
shell: bash | |
- name: Upload Windows artifacts to tagged release | |
id: upload_windows_artifacts_to_tagged_release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
export TAG_NAME=$(echo $GITHUB_REF | sed 's/.*\/\(.*\)$/\1/') | |
mv $GITHUB_WORKSPACE/artifacts/libquentier_windows_x86.zip /tmp/libquentier.zip | |
for i in 0..3 | |
do | |
export UPLOADED=0 | |
gh release upload --clobber ${TAG_NAME} $GITHUB_WORKSPACE/artifacts/Setup*.exe $GITHUB_WORKSPACE/artifacts/Quentier-windows-portable-qt5-x64.zip $GITHUB_WORKSPACE/artifacts/Quentier-windows-portable-qt6-x64.zip -R d1vanov/libquentier && export UPLOADED=1 || true | |
if [ "$UPLOADED" = "1" ]; then | |
break | |
fi | |
done | |
if [ "$UPLOADED" != "1" ]; then | |
echo "Failed to upload artifacts to release" | |
exit 1 | |
fi | |
if: ${{ github.ref != 'refs/heads/master' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0'}} | |
shell: bash | |
- name: Ensure tagged release is not a draft | |
id: ensure_tagged_release_is_not_a_draft | |
if: ${{ github.ref != 'refs/heads/master' && github.ref != 'refs/heads/development' && github.ref != 'refs/heads/integration-0.6.0'}} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
GITHUB_REF_NAME: ${{ github.ref_name }} | |
run: | | |
gh release edit "$GITHUB_REF_NAME" --draft=false -R d1vanov/quentier |