From f7ee395eba7135a619de9fe5e9f6877cd7076f99 Mon Sep 17 00:00:00 2001 From: Dan Paulat Date: Sun, 16 Mar 2025 18:05:10 -0500 Subject: [PATCH 1/2] Add cache for conan artifacts --- .github/workflows/ci.yml | 15 ++++++++++++--- .github/workflows/clang-tidy-review.yml | 13 ++++++++++--- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 408cacf5..474bff6f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,6 +33,7 @@ jobs: qt_arch_dir: msvc2022_64 qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport qt_tools: '' + conan_path: '%USERPROFILE%\.conan2' conan_package_manager: '' conan_profile: scwx-win64_msvc2022 appimage_arch: '' @@ -48,6 +49,7 @@ jobs: qt_arch_dir: gcc_64 qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport qt_tools: '' + conan_path: '~/.conan2' conan_package_manager: --conf tools.system.package_manager:mode=install --conf tools.system.package_manager:sudo=True conan_profile: scwx-linux_gcc-11 appimage_arch: x86_64 @@ -64,6 +66,7 @@ jobs: qt_arch_dir: gcc_64 qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport qt_tools: '' + conan_path: '~/.conan2' conan_package_manager: --conf tools.system.package_manager:mode=install --conf tools.system.package_manager:sudo=True conan_profile: scwx-linux_clang-17 appimage_arch: x86_64 @@ -80,6 +83,7 @@ jobs: qt_arch_dir: gcc_arm64 qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport qt_tools: '' + conan_path: '~/.conan2' conan_package_manager: --conf tools.system.package_manager:mode=install --conf tools.system.package_manager:sudo=True conan_profile: scwx-linux_gcc-11_armv8 appimage_arch: aarch64 @@ -130,13 +134,18 @@ jobs: shell: pwsh run: | pip install geopandas ` - GitPython + GitPython ` + conan + + - name: Cache Conan Packages + uses: actions/cache@v4 + with: + path: ${{ matrix.conan_path }} + key: ${{ matrix.name }}-build-${{ matrix.conan_profile }}-${{ hashFiles('./source/conanfile.py', './source/tools/conan/profiles/*') }} - name: Install Conan Packages shell: pwsh run: | - pip install conan - conan profile detect -e conan config install ` ./source/tools/conan/profiles/${{ matrix.conan_profile }} ` -tf profiles diff --git a/.github/workflows/clang-tidy-review.yml b/.github/workflows/clang-tidy-review.yml index dcc99a46..e7bd9281 100644 --- a/.github/workflows/clang-tidy-review.yml +++ b/.github/workflows/clang-tidy-review.yml @@ -24,6 +24,8 @@ jobs: qt_arch_aqt: linux_gcc_64 qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport qt_tools: '' + conan_cache_name: linux_clang_x64 + conan_path: '~/.conan2' conan_package_manager: --conf tools.system.package_manager:mode=install --conf tools.system.package_manager:sudo=True conan_profile: scwx-linux_clang-17 compiler_packages: clang-17 clang-tidy-17 @@ -68,14 +70,19 @@ jobs: shell: pwsh run: | pip install geopandas ` - GitPython + GitPython ` + conan pip install --break-system-packages clang-tidy-review/post/clang_tidy_review + - name: Cache Conan Packages + uses: actions/cache@v4 + with: + path: ${{ matrix.conan_path }} + key: ${{ matrix.conan_cache_name }}-build-${{ matrix.conan_profile }}-${{ hashFiles('./source/conanfile.py', './source/tools/conan/profiles/*') }} + - name: Install Conan Packages shell: pwsh run: | - pip install conan - conan profile detect -e conan config install ` ./source/tools/conan/profiles/${{ matrix.conan_profile }} ` -tf profiles From e667155cd5d99d0b593010a9b6227882b4acd463 Mon Sep 17 00:00:00 2001 From: Dan Paulat Date: Sun, 16 Mar 2025 20:55:15 -0500 Subject: [PATCH 2/2] Tweak cache path, update cache name --- .github/workflows/ci.yml | 8 ++------ .github/workflows/clang-tidy-review.yml | 6 ++---- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 474bff6f..f6682484 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,7 +33,6 @@ jobs: qt_arch_dir: msvc2022_64 qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport qt_tools: '' - conan_path: '%USERPROFILE%\.conan2' conan_package_manager: '' conan_profile: scwx-win64_msvc2022 appimage_arch: '' @@ -49,7 +48,6 @@ jobs: qt_arch_dir: gcc_64 qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport qt_tools: '' - conan_path: '~/.conan2' conan_package_manager: --conf tools.system.package_manager:mode=install --conf tools.system.package_manager:sudo=True conan_profile: scwx-linux_gcc-11 appimage_arch: x86_64 @@ -66,7 +64,6 @@ jobs: qt_arch_dir: gcc_64 qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport qt_tools: '' - conan_path: '~/.conan2' conan_package_manager: --conf tools.system.package_manager:mode=install --conf tools.system.package_manager:sudo=True conan_profile: scwx-linux_clang-17 appimage_arch: x86_64 @@ -83,7 +80,6 @@ jobs: qt_arch_dir: gcc_arm64 qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport qt_tools: '' - conan_path: '~/.conan2' conan_package_manager: --conf tools.system.package_manager:mode=install --conf tools.system.package_manager:sudo=True conan_profile: scwx-linux_gcc-11_armv8 appimage_arch: aarch64 @@ -140,8 +136,8 @@ jobs: - name: Cache Conan Packages uses: actions/cache@v4 with: - path: ${{ matrix.conan_path }} - key: ${{ matrix.name }}-build-${{ matrix.conan_profile }}-${{ hashFiles('./source/conanfile.py', './source/tools/conan/profiles/*') }} + path: ~/.conan2 + key: build-${{ matrix.conan_profile }}-${{ hashFiles('./source/conanfile.py', './source/tools/conan/profiles/*') }} - name: Install Conan Packages shell: pwsh diff --git a/.github/workflows/clang-tidy-review.yml b/.github/workflows/clang-tidy-review.yml index e7bd9281..f8c4495e 100644 --- a/.github/workflows/clang-tidy-review.yml +++ b/.github/workflows/clang-tidy-review.yml @@ -24,8 +24,6 @@ jobs: qt_arch_aqt: linux_gcc_64 qt_modules: qtimageformats qtmultimedia qtpositioning qtserialport qt_tools: '' - conan_cache_name: linux_clang_x64 - conan_path: '~/.conan2' conan_package_manager: --conf tools.system.package_manager:mode=install --conf tools.system.package_manager:sudo=True conan_profile: scwx-linux_clang-17 compiler_packages: clang-17 clang-tidy-17 @@ -77,8 +75,8 @@ jobs: - name: Cache Conan Packages uses: actions/cache@v4 with: - path: ${{ matrix.conan_path }} - key: ${{ matrix.conan_cache_name }}-build-${{ matrix.conan_profile }}-${{ hashFiles('./source/conanfile.py', './source/tools/conan/profiles/*') }} + path: ~/.conan2 + key: build-${{ matrix.conan_profile }}-${{ hashFiles('./source/conanfile.py', './source/tools/conan/profiles/*') }} - name: Install Conan Packages shell: pwsh