From 23c3fd9365e59aeef6c8a9811a48a572799a03f8 Mon Sep 17 00:00:00 2001 From: "Alexander V. Wolf" Date: Mon, 26 Feb 2024 15:58:18 +0700 Subject: [PATCH] let's try use macOS 14 for all CI instances --- .github/workflows/ci.yml | 42 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 39 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index eee829f79e0a8f..9301f71289fb7c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -88,7 +88,7 @@ jobs: # CI on macOS (Qt5) ci-macos-qt5: name: "macOS (x86_64; qt5)" - runs-on: macos-latest + runs-on: macos-14-large if: "!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]') && !contains(github.actor, 'transifex') && contains(github.event.head_commit.message, '[qt5]')" # @TODO Enable gpsd on macOS instance for CI testing @@ -123,9 +123,9 @@ jobs: run: ctest --output-on-failure # CI on macOS (Qt6) - ci-macos-qt6: + ci-macos-x86-qt6: name: "macOS (x86_64; qt6)" - runs-on: macos-latest + runs-on: macos-14-large if: "!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]') && !contains(github.actor, 'transifex')" # @TODO Enable gpsd on macOS instance for CI testing @@ -159,3 +159,39 @@ jobs: working-directory: build run: ctest --output-on-failure + # CI on macOS (Qt6) + ci-macos-arm-qt6: + name: "macOS (arm64; qt6)" + runs-on: macos-14-xlarge + if: "!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]') && !contains(github.actor, 'transifex')" + + # @TODO Enable gpsd on macOS instance for CI testing + # @BODY At the moment after installing gpsd (brew install gpsd) library can be found by cmake, but not headers! Apparently we should add some magic for environment variables or something else on macOS Catalina to make headers available for cmake/make + steps: + - name: Install dependencies + env: + HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: 1 + run: | + brew update + brew install qt@6 nlopt exiv2 + + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Configure CMake + shell: bash + run: | + export PATH="/usr/local/opt/qt@6/bin:$PATH" + mkdir -p build + cd build + cmake -DCMAKE_BUILD_TYPE=Debug -DENABLE_TESTING=On ${{ github.workspace }} + + - name: Compile + working-directory: build + run: make -j3 + + - name: Run unit tests + uses: coactions/setup-xvfb@v1 + with: + working-directory: build + run: ctest --output-on-failure