Skip to content

esp32 port

esp32 port #156

Workflow file for this run

name: esp32 port
on:
push:
pull_request:
paths:
- '.github/workflows/*.yml'
- 'tools/**'
- 'py/**'
- 'extmod/**'
- 'shared/**'
- 'lib/**'
- 'drivers/**'
- 'ports/esp32/**'
schedule:
# Scheduled run exists to keep master branch ESP-IDF cache entry hot
# and prevent creating many redundant per-branch cache entries instead.
- cron: "20 0 * * *"
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build_idf:
strategy:
fail-fast: false
matrix:
ci_func: # names are functions in ci.sh
- esp32_build_cmod_spiram_s2
- esp32_build_s3_c3
- esp32_build_c2_c5_c6
- esp32_build_p4
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
# Needs to be kept in synch with code_size.yml
- id: idf_ver
name: Read the ESP-IDF version (including Python version) and set outputs.IDF_VER
run: tools/ci.sh esp32_idf_ver | tee "${GITHUB_OUTPUT}"
- name: Cached ESP-IDF install
id: cache_esp_idf
uses: actions/cache@v5
with:
path: |
./esp-idf/
~/.espressif/
!~/.espressif/dist/
~/.cache/pip/
key: esp-idf-${{ steps.idf_ver.outputs.IDF_VER }}
- name: Install ESP-IDF packages
if: steps.cache_esp_idf.outputs.cache-hit != 'true'
run: tools/ci.sh esp32_idf_setup
# Needs to be kept in synch with code_size.yml
- name: ccache
uses: hendrikmuhs/[email protected]
with:
key: esp32-${{ matrix.ci_func }}
- name: Build ci_${{matrix.ci_func }}
run: tools/ci.sh ${{ matrix.ci_func }}