diff --git a/.github/workflows/default.yml b/.github/workflows/default.yml new file mode 100644 index 0000000..86789fb --- /dev/null +++ b/.github/workflows/default.yml @@ -0,0 +1,56 @@ +on: + push: + pull_request: + branches: + - main + page_build: + release: + types: + - created + +jobs: + build: + runs-on: ubuntu-latest + environment: default + strategy: + fail-fast: false + matrix: + node: [feedc0de, comred, peter, mick] + steps: + - name: Checkout (without submodules) + uses: actions/checkout@v2 + + - name: Checkout and install esp-idf + uses: 0xFEEDC0DE64/checkout_install_esp_idf@main + + - name: Fast Submodule Checkout components/arduino-esp32 + uses: 0xFEEDC0DE64/fast_submodule_checkout@main + with: + submodule: components/arduino-esp32 + + - name: Checkout remaining submodules + run: git submodule update --init --recursive $(git submodule | awk '{ if ($2 != "esp-idf" && $2 != "components/arduino-esp32") print $2 }') + + - name: Setup ccache + uses: 0xFEEDC0DE64/setup_ccache@main + with: + key: ${{ runner.os }}-ccache-${{ matrix.node }} + + - name: Build firmware + run: | + export CCACHE_MAXSIZE=400M CCACHE_BASEDIR="$(pwd)" + . export.sh + ./switchconf.sh ${{ matrix.node }} + idf.py --ccache build + ccache -s + + - name: Upload Build Artifact + uses: actions/upload-artifact@v2.2.4 + with: + name: bobbyquad_${{ matrix.node }} + path: | + build_${{ matrix.node }}/bobbyquad_${{ matrix.node }}.bin + build_${{ matrix.node }}/bobbyquad_${{ matrix.node }}.elf + build_${{ matrix.node }}/bootloader/bootloader.bin + build_${{ matrix.node }}/bootloader/bootloader.elf + build_${{ matrix.node }}/partition_table/partition-table.bin diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 38b5841..f701ce2 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,8 +1,5 @@ on: push: - pull_request: - branches: - - main page_build: release: types: