From 9508cb46ba40706eb6bfe12b28b0a0cb1a30c441 Mon Sep 17 00:00:00 2001 From: Darcy Shen Date: Mon, 8 Jan 2024 19:06:00 +0800 Subject: [PATCH] [73_5] Enable ci on macOS arm64 --- .github/workflows/ci-macos-arm64.yml | 91 ++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 .github/workflows/ci-macos-arm64.yml diff --git a/.github/workflows/ci-macos-arm64.yml b/.github/workflows/ci-macos-arm64.yml new file mode 100644 index 0000000000..279069b793 --- /dev/null +++ b/.github/workflows/ci-macos-arm64.yml @@ -0,0 +1,91 @@ +name: Build and Test on macOS + +on: + push: + branches: [ branch-1.2 ] + paths: + - 'src/**' + - '!src/Plugins/Windows/**' + - 'tests/**' + - 'xmake.lua' + - 'xmake/packages.lua' + - 'xmake/research.lua' + - '.github/workflows/ci-macos-arm64.yml' + pull_request: + branches: [ branch-1.2 ] + paths: + - 'src/**' + - '!src/Plugins/Windows/**' + - 'tests/**' + - 'xmake.lua' + - 'xmake/packages.lua' + - 'xmake/research.lua' + - '.github/workflows/ci-macos-arm64.yml' + +jobs: + macosbuild: + strategy: + matrix: + os: [macOS-latest] + arch: [arm64] + runs-on: macOS-latest + timeout-minutes: 45 + if: always() + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 1 + - name: cache xmake + uses: actions/cache@v2 + with: + path: | + ${{github.workspace}}/build/.build_cache + /Users/runner/.xmake + key: ${{ runner.os }}-arm64-${{ hashFiles('**/xmake.lua') }} + - name: Install Qt + uses: jurplel/install-qt-action@v3 + with: + version: 6.5.3 + target: 'desktop' + cache: 'true' + + - name: set XMAKE_GLOBALDIR + run: echo "XMAKE_GLOBALDIR=${{ runner.workspace }}/xmake-global" >> $GITHUB_ENV + + - uses: xmake-io/github-action-setup-xmake@v1 + with: + xmake-version: v2.8.5 + actions-cache-folder: '.xmake-cache' + + - name: xmake repo --update + run: xmake repo --update + + - name: cache packages from xrepo + uses: actions/cache@v3 + with: + path: | + ${{ env.XMAKE_GLOBALDIR }}/.xmake/packages + key: ${{ runner.os }}-xrepo-qt${{ matrix.qt_ver }}-${{ hashFiles('**/packages.lua') }} + + - name: cache xmake + uses: actions/cache@v3 + with: + path: | + ${{ runner.workspace }}/build/.build_cache + key: ${{ runner.os }}-xmake-build-${{ hashFiles('**/xmake.lua') }} + + - name: config + run: xmake config --policies=build.ccache -o ${{ runner.workspace }}/build -m releasedbg --yes + - name: build + run: xmake build --yes -vD research && xmake build --yes -vD --group=tests + - name: C++ tests + run: xmake run --yes --verbose --diagnosis --group=tests + env: + QT_QPA_PLATFORM: offscreen + - name: Scheme tests + run: xmake run --yes -vD --group=scheme_tests + - name: integration test + run: xmake run --yes -vD --group=integration_tests + env: + QT_QPA_PLATFORM: offscreen +