From da59a06495dd3f7b5d2d4450a18f17046883bebb Mon Sep 17 00:00:00 2001 From: Michael Jackson Date: Mon, 5 Feb 2024 09:16:16 -0500 Subject: [PATCH] DEV: Enable Apple ARM64 CI Support Signed-off-by: Michael Jackson --- .github/workflows/macos_arm64.yml | 70 +++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 .github/workflows/macos_arm64.yml diff --git a/.github/workflows/macos_arm64.yml b/.github/workflows/macos_arm64.yml new file mode 100644 index 0000000000..4d011d3d92 --- /dev/null +++ b/.github/workflows/macos_arm64.yml @@ -0,0 +1,70 @@ +name: macos + +on: + pull_request: + branches: + - develop + - master + push: + branches: + - develop + - master + +jobs: + build: + env: + VCPKG_BINARY_SOURCES: 'clear;nuget,GitHub,readwrite' + strategy: + fail-fast: false + matrix: + os: + - macos-14 + runs-on: ${{matrix.os}} + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + submodules: true + - uses: actions/checkout@v4 + - name: Checkout VCPKG + run: | + git clone https://www.github.com/microsoft/vcpkg && cd vcpkg && ./bootstrap-vcpkg.sh + + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: '3.10' + - name: Install Python dependencies + run: | + python -m pip install --upgrade pip + pip install sphinx myst-parser sphinx-markdown-tables sphinx_rtd_theme numpy + - name: Add C++ Problem Matcher + uses: ammaraskar/gcc-problem-matcher@0.2.0 + - name: Install Dependencies - 2 + run: | + brew install ninja + - name: Install Sphinx + run: | + sudo pip3 install sphinx myst-parser sphinx-markdown-tables sphinx_rtd_theme numpy + - name: Setup NuGet Credentials + shell: bash + run: | + mono `${{github.workspace}}/vcpkg/vcpkg fetch nuget | tail -n 1` \ + sources add \ + -source "https://nuget.pkg.github.com/BlueQuartzSoftware/index.json" \ + -storepasswordincleartext \ + -name "GitHub" \ + -username "BlueQuartzSoftware" \ + -password "${{secrets.GITHUB_TOKEN}}" + mono `${{github.workspace}}/vcpkg/vcpkg fetch nuget | tail -n 1` \ + setapikey "${{secrets.GITHUB_TOKEN}}" \ + -source "https://nuget.pkg.github.com/BlueQuartzSoftware/index.json" + - name: Configure + run: | + export PATH=$PATH:${{github.workspace}}/vcpkg; export VCPKG_INSTALLATION_ROOT=${{github.workspace}}/vcpkg; cmake --preset ci-macos-arm64 ${{github.workspace}} + - name: Build + run: | + export PATH=$PATH:${{github.workspace}}/vcpkg; export VCPKG_INSTALLATION_ROOT=${{github.workspace}}/vcpkg; cmake --build --preset ci-macos-arm64 + - name: Test + run: | + export PATH=$PATH:${{github.workspace}}/vcpkg; export VCPKG_INSTALLATION_ROOT=${{github.workspace}}/vcpkg; ctest --preset ci-macos-arm64