2 on: [push, pull_request]
8 - name: Inject slug/short variables
9 uses: rlespinasse/github-slug-action@v3.x
12 uses: actions/checkout@v2
15 uses: actions/setup-python@v1
18 uses: actions/cache@v2
21 key: ${{ runner.os }}-pip-${{ matrix.target }}
23 - name: Install PlatformIO
25 python -m pip install --upgrade pip
26 pip install platformio
28 - name: Cache PlatformIO
29 uses: actions/cache@v2
32 key: ${{ runner.os }}-platformio
34 - name: Run PlatformIO Tests
36 platformio platform install native
37 platformio platform update
39 PLATFORMIO_BUILD_FLAGS="-DRegulatory_Domain_ISM_2400" pio test -e native
42 runs-on: ubuntu-latest
44 targets: ${{ steps.set-targets.outputs.targets }}
47 uses: actions/checkout@v2
49 run: echo "::set-output name=targets::[$(grep -r "\[env:" src/targets | sed 's/.*://' | sed s/.$// | egrep "(STLINK|UART)" | grep -v DEPRECATED | tr '\n' ',' | sed 's/,$/"\n/' | sed 's/,/","/'g | sed 's/^/"/')]"
56 target: ${{fromJSON(needs.targets.outputs.targets)}}
57 runs-on: ubuntu-latest
60 - name: Inject slug/short variables
61 uses: rlespinasse/github-slug-action@v3.x
64 uses: actions/checkout@v2
67 uses: actions/setup-python@v1
70 uses: actions/cache@v2
73 key: ${{ runner.os }}-pip-${{ matrix.target }}
75 - name: Install PlatformIO
77 python -m pip install --upgrade pip
78 pip install platformio
80 - name: Cache PlatformIO
81 uses: actions/cache@v2
84 key: ${{ runner.os }}-platformio
86 - name: Run PlatformIO
88 platformio platform update
89 platformio platform install native
92 case ${{matrix.target}} in
94 export REG=-DRegulatory_Domain_ISM_2400
97 export REG=-DRegulatory_Domain_AU_915
101 PLATFORMIO_BUILD_FLAGS="$REG -DUSE_DIVERSITY" pio run -e ${{ matrix.target }}
102 # Minimal/default features
103 PLATFORMIO_BUILD_FLAGS="$REG !-DUSE_DIVERSITY" pio run -e ${{ matrix.target }}
104 mv .pio/build ~/artifacts/AU_915
106 - name: Store Artifacts
107 uses: actions/upload-artifact@v2-preview
109 name: ExpressLRS-${{ env.GITHUB_REF_SLUG_URL }}-${{ github.run_number }}
110 path: ~/artifacts/**/*.bin
111 continue-on-error: true