diff --git a/.github/workflows/build-test-macos-arm64.yml b/.github/workflows/build-test-macos-arm64.yml new file mode 100644 index 000000000..3c8f9835c --- /dev/null +++ b/.github/workflows/build-test-macos-arm64.yml @@ -0,0 +1,46 @@ +name: Build and Test on MacOS ARCH64 + +on: ["push", "pull_request"] +jobs: + build-and-test: + # Ref: https://github.com/actions/runner-images/tree/main/images/macos + strategy: + matrix: + os: [macos-13-xlarge] + runs-on: ${{ matrix.os }} + steps: + - name: Git checkout + uses: actions/checkout@v2 + with: + submodules: "true" + + - name: Set up Go 1.21 + uses: actions/setup-go@v2 + with: + go-version: 1.21 + + - run: clang --version + - run: cargo --version + - run: rustc --print sysroot + + - name: Delete rust cargo + run: rm -rf /root/.cargo/bin + shell: bash + - name: Install LLVM 12 + run: brew install llvm@12 + shell: bash + - name: Install rust nightly toolchain + uses: actions-rs/toolchain@v1 + with: + toolchain: 1.73 + override: true + components: clippy, rustfmt + - name: Grammar test + working-directory: ./kclvm + run: export PATH=$PATH:$PWD/../_build/dist/Darwin/kclvm/bin:/opt/homebrew/opt/llvm@12/bin/ && make && make test-grammar + shell: bash + + - uses: actions/upload-artifact@v3 + with: + name: kcl-darwin-arm64 + path: _build/dist/Darwin/kclvm