From edd417a6060d50277d2244a7d65f74fb31e96bcc Mon Sep 17 00:00:00 2001 From: Holden Ramsey Date: Sat, 8 Feb 2025 23:18:03 -0500 Subject: [PATCH 1/2] CMake: Make Test Dependencies Private --- .github/workflows/linux.yml | 1 + test/AutoPilotPlugins/CMakeLists.txt | 2 +- test/Geo/CMakeLists.txt | 2 +- test/MissionManager/CMakeLists.txt | 9 +++++---- test/MissionManager/MissionItemTest.cc | 1 + test/MissionManager/MissionItemTest.h | 2 +- test/Terrain/CMakeLists.txt | 4 ++-- test/Vehicle/CMakeLists.txt | 5 ++--- test/Vehicle/SendMavCommandWithSignallingTest.h | 3 --- 9 files changed, 14 insertions(+), 15 deletions(-) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 0faecf7ab60..914f688de63 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -12,6 +12,7 @@ on: - '.github/workflows/linux.yml' - 'deploy/linux/**' - 'src/**' + - 'test/**' - 'CMakeLists.txt' # concurrency: diff --git a/test/AutoPilotPlugins/CMakeLists.txt b/test/AutoPilotPlugins/CMakeLists.txt index 4e6e34e7ad6..eea773e8a11 100644 --- a/test/AutoPilotPlugins/CMakeLists.txt +++ b/test/AutoPilotPlugins/CMakeLists.txt @@ -11,11 +11,11 @@ target_link_libraries(AutoPilotPluginsTest Qt6::Test APMAutoPilotPlugin AutoPilotPlugins + CommonAutoPilotPlugin PX4AutoPilotPlugin Vehicle PUBLIC Qt6::Core - CommonAutoPilotPlugin qgcunittest ) diff --git a/test/Geo/CMakeLists.txt b/test/Geo/CMakeLists.txt index 9f44c6ffc09..95e7bbc22ae 100644 --- a/test/Geo/CMakeLists.txt +++ b/test/Geo/CMakeLists.txt @@ -8,10 +8,10 @@ qt_add_library(GeoTest target_link_libraries(GeoTest PRIVATE + Qt6::Positioning Qt6::Test Geo PUBLIC - Qt6::Positioning qgcunittest ) diff --git a/test/MissionManager/CMakeLists.txt b/test/MissionManager/CMakeLists.txt index 37a93e1d73f..86140683b64 100644 --- a/test/MissionManager/CMakeLists.txt +++ b/test/MissionManager/CMakeLists.txt @@ -29,18 +29,19 @@ qt_add_library(MissionManagerTest target_link_libraries(MissionManagerTest PRIVATE + Qt6::Positioning Qt6::Test API + FactSystem FirmwarePlugin + MissionManager + QmlControls Settings + TerrainTest Utilities Vehicle - TerrainTest PUBLIC - Qt6::Positioning - MissionManager qgcunittest - QmlControls ) target_include_directories(MissionManagerTest PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) diff --git a/test/MissionManager/MissionItemTest.cc b/test/MissionManager/MissionItemTest.cc index fa9f7101a60..c64ec743003 100644 --- a/test/MissionManager/MissionItemTest.cc +++ b/test/MissionManager/MissionItemTest.cc @@ -11,6 +11,7 @@ #include "MissionItemTest.h" #include "SimpleMissionItem.h" #include "PlanMasterController.h" +#include "MissionItem.h" #include "MultiSignalSpy.h" #include diff --git a/test/MissionManager/MissionItemTest.h b/test/MissionManager/MissionItemTest.h index 2bf269e7276..0670c7a5375 100644 --- a/test/MissionManager/MissionItemTest.h +++ b/test/MissionManager/MissionItemTest.h @@ -10,8 +10,8 @@ #pragma once #include "UnitTest.h" -#include "MissionItem.h" +class MissionItem; class PlanMasterController; /// Unit test for the MissionItem Object diff --git a/test/Terrain/CMakeLists.txt b/test/Terrain/CMakeLists.txt index 264b3b353ce..ebf9eb1b06b 100644 --- a/test/Terrain/CMakeLists.txt +++ b/test/Terrain/CMakeLists.txt @@ -10,11 +10,11 @@ qt_add_library(TerrainTest target_link_libraries(TerrainTest PRIVATE + Qt6::Positioning Qt6::Test + Terrain PUBLIC - Qt6::Positioning qgcunittest - Terrain ) target_include_directories(TerrainTest PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) diff --git a/test/Vehicle/CMakeLists.txt b/test/Vehicle/CMakeLists.txt index bfbc35b94cc..362a55f4bcf 100644 --- a/test/Vehicle/CMakeLists.txt +++ b/test/Vehicle/CMakeLists.txt @@ -23,12 +23,11 @@ qt_add_library(VehicleTest target_link_libraries(VehicleTest PRIVATE Qt6::Test - PUBLIC Comms - qgcunittest Vehicle - INTERFACE VehicleComponentsTest + PUBLIC + qgcunittest ) target_include_directories(VehicleTest PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) diff --git a/test/Vehicle/SendMavCommandWithSignallingTest.h b/test/Vehicle/SendMavCommandWithSignallingTest.h index 4ac19a688d2..40b01e38676 100644 --- a/test/Vehicle/SendMavCommandWithSignallingTest.h +++ b/test/Vehicle/SendMavCommandWithSignallingTest.h @@ -12,9 +12,6 @@ #include "UnitTest.h" #include "Vehicle.h" -#include -#include - class SendMavCommandWithSignallingTest : public UnitTest { Q_OBJECT From aca7832b04fbd7389658f7691b0e03ac95da104d Mon Sep 17 00:00:00 2001 From: Holden Ramsey Date: Sat, 8 Feb 2025 23:34:47 -0500 Subject: [PATCH 2/2] CI: Fix CPM_Modules Caching --- .github/actions/cache/action.yml | 2 +- .github/workflows/android-linux.yml | 2 +- .github/workflows/android-macos.yml | 2 +- .github/workflows/android-windows.yml | 2 +- .github/workflows/custom.yml | 2 +- .github/workflows/docs_deploy.yml | 3 ++- .github/workflows/ios.yml | 2 +- .github/workflows/linux.yml | 2 +- .github/workflows/macos.yml | 2 +- .github/workflows/windows.yml | 2 +- 10 files changed, 11 insertions(+), 10 deletions(-) diff --git a/.github/actions/cache/action.yml b/.github/actions/cache/action.yml index 70e3cee042b..2ce882b3e93 100644 --- a/.github/actions/cache/action.yml +++ b/.github/actions/cache/action.yml @@ -13,7 +13,7 @@ inputs: cpm-modules: description: Path to CPM Modules required: false - default: $GITHUB_WORKSPACE/cpm-modules + default: $RUNNER_TEMP/shadow_build_dir/cpm-modules ccache-version: description: ccache Version to Install required: false diff --git a/.github/workflows/android-linux.yml b/.github/workflows/android-linux.yml index 23bee6d66af..8166f5d0ad6 100644 --- a/.github/workflows/android-linux.yml +++ b/.github/workflows/android-linux.yml @@ -41,7 +41,7 @@ jobs: QT_ANDROID_KEYSTORE_STORE_PASS: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }} QT_ANDROID_KEYSTORE_KEY_PASS: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }} QT_ANDROID_ABIS: ${{ matrix.BuildType == 'Release' && 'armeabi-v7a;arm64-v8a' || 'arm64-v8a' }} - CPM_SOURCE_CACHE: ${{ github.workspace }}/cpm_modules + CPM_SOURCE_CACHE: ${{ runner.temp }}/shadow_build_dir/cpm_modules steps: - name: Checkout repo diff --git a/.github/workflows/android-macos.yml b/.github/workflows/android-macos.yml index e8e54f02c47..907d3a90f80 100644 --- a/.github/workflows/android-macos.yml +++ b/.github/workflows/android-macos.yml @@ -28,7 +28,7 @@ jobs: QT_ANDROID_KEYSTORE_STORE_PASS: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }} QT_ANDROID_KEYSTORE_KEY_PASS: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }} QT_ANDROID_ABIS: 'arm64-v8a' - CPM_SOURCE_CACHE: ${{ github.workspace }}/cpm_modules + CPM_SOURCE_CACHE: ${{ runner.temp }}/shadow_build_dir/cpm_modules steps: - name: Checkout repo diff --git a/.github/workflows/android-windows.yml b/.github/workflows/android-windows.yml index 69abb5b6e33..d2dd40b52b1 100644 --- a/.github/workflows/android-windows.yml +++ b/.github/workflows/android-windows.yml @@ -41,7 +41,7 @@ jobs: QT_ANDROID_KEYSTORE_STORE_PASS: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }} QT_ANDROID_KEYSTORE_KEY_PASS: ${{ secrets.ANDROID_KEYSTORE_PASSWORD }} QT_ANDROID_ABIS: 'arm64-v8a' - CPM_SOURCE_CACHE: ${{ github.workspace }}\cpm_modules + CPM_SOURCE_CACHE: ${{ runner.temp }}\shadow_build_dir\cpm_modules steps: - name: Checkout repo diff --git a/.github/workflows/custom.yml b/.github/workflows/custom.yml index 53f6a3a8f6d..9e0b0321a22 100644 --- a/.github/workflows/custom.yml +++ b/.github/workflows/custom.yml @@ -36,7 +36,7 @@ jobs: ARTIFACT: QGroundControl-installer.exe QT_VERSION: 6.8.1 GST_VERSION: 1.22.12 - CPM_SOURCE_CACHE: ${{ github.workspace }}\cpm_modules + CPM_SOURCE_CACHE: ${{ runner.temp }}\shadow_build_dir\cpm_modules steps: - name: Checkout repo diff --git a/.github/workflows/docs_deploy.yml b/.github/workflows/docs_deploy.yml index 2e4de6e6db2..0088ff0245e 100644 --- a/.github/workflows/docs_deploy.yml +++ b/.github/workflows/docs_deploy.yml @@ -9,10 +9,11 @@ on: - 'v*' paths: - 'docs/**' + - 'package*.json' pull_request: paths: - 'docs/**' - + - 'package*.json' workflow_dispatch: env: diff --git a/.github/workflows/ios.yml b/.github/workflows/ios.yml index bfb54fab705..b4e3c44f74d 100644 --- a/.github/workflows/ios.yml +++ b/.github/workflows/ios.yml @@ -24,7 +24,7 @@ jobs: PACKAGE: QGroundControl QT_VERSION: 6.8.1 GST_VERSION: 1.22.12 - CPM_SOURCE_CACHE: ${{ github.workspace }}/cpm_modules + CPM_SOURCE_CACHE: ${{ runner.temp }}/shadow_build_dir/cpm_modules steps: - name: Checkout repo diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 914f688de63..5eb2ae8fc4a 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -37,7 +37,7 @@ jobs: PACKAGE: QGroundControl-x86_64 QT_VERSION: 6.8.1 GST_VERSION: 1.22.12 - CPM_SOURCE_CACHE: ${{ github.workspace }}/cpm_modules + CPM_SOURCE_CACHE: ${{ runner.temp }}/shadow_build_dir/cpm_modules steps: - name: Checkout repo diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 482d6c48357..37ffede8b08 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -34,7 +34,7 @@ jobs: ARTIFACT: QGroundControl.dmg PACKAGE: QGroundControl QT_VERSION: 6.8.1 - CPM_SOURCE_CACHE: ${{ github.workspace }}/cpm_modules + CPM_SOURCE_CACHE: ${{ runner.temp }}/shadow_build_dir/cpm_modules steps: - name: Checkout repo diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 7faaf06eace..3b6544e8a67 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -36,7 +36,7 @@ jobs: PACKAGE: QGroundControl-installer QT_VERSION: 6.8.1 GST_VERSION: 1.22.12 - CPM_SOURCE_CACHE: ${{ github.workspace }}\cpm_modules + CPM_SOURCE_CACHE: ${{ runner.temp }}\shadow_build_dir\cpm_modules steps: - name: Checkout repo