From eb25d565afbd5a34e07c062af8a9cade6073f4bc Mon Sep 17 00:00:00 2001 From: Carlos Pereira Atencio Date: Wed, 8 May 2024 15:27:25 +0100 Subject: [PATCH] CI: Add GH Actions workflow to build on each commit. --- .github/workflows/build.yml | 46 +++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..4c6f7e7 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,46 @@ +name: Build MicroPython + module + +on: + push: + branches: '*' + pull_request: + branches: '*' + +jobs: + build: + strategy: + matrix: + # macos-13 is x86_64, and macos-14 is arm64 + os: [ubuntu-22.04, macos-13, macos-14] + fail-fast: false + runs-on: ${{ matrix.os }} + name: build.py ${{ matrix.os }} + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: actions/setup-python@v5 + with: + python-version: '3.11' + - uses: carlosperate/arm-none-eabi-gcc-action@v1 + with: + release: 10.3-2021.10 + - name: Install CMake v3.22 via PyPI + run: python -m pip install cmake==3.28.3 + - name: Check Versions + run: | + arm-none-eabi-gcc --version + cmake --version + python --version + uname -a + - name: Initialise micro:bit MicroPython submodules + run: git -C micropython-microbit-v2 submodule update --init + - name: Build mpy-cross + run: make -C micropython-microbit-v2/lib/micropython/mpy-cross -j2 + - name: Build MicroPython with C++ module + run: make -C micropython-microbit-v2/src USER_C_MODULES=../../.. -j2 + - name: Upload hex file + uses: actions/upload-artifact@v4 + with: + name: MICROBIT-MICROPYTHON-${{ github.sha }}-${{ matrix.os }}.hex + path: src/MICROBIT.hex