Updated documentation #81
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: PlatformIO CI | |
| on: | |
| push: | |
| branches: [ main ] | |
| jobs: | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: 24 | |
| - name: Install frontend dependencies | |
| working-directory: frontend | |
| run: npm ci | |
| - name: ESLint | |
| working-directory: frontend | |
| run: npm run lint | |
| - name: Prettier check | |
| working-directory: frontend | |
| run: npm run format:check | |
| - name: Install cppcheck | |
| run: sudo apt-get install -y cppcheck | |
| - name: cppcheck | |
| run: | | |
| cppcheck --enable=warning,performance,portability \ | |
| --suppress=missingInclude \ | |
| --suppress=unusedFunction \ | |
| --suppress=ctuOneDefinitionRuleViolation \ | |
| --inline-suppr \ | |
| --error-exitcode=1 \ | |
| --quiet \ | |
| lib/btremote lib/commands lib/configuration lib/hubwebserver \ | |
| lib/i2csync lib/imu lib/inputdevices lib/logging lib/lpfuart \ | |
| lib/megahub lib/portstatus lib/statusmonitor \ | |
| src/ | |
| - name: clang-format check | |
| run: | | |
| find lib src -name "*.cpp" -o -name "*.h" -o -name "*.c" \ | |
| | grep -v "lib/lua/" | grep -v "lib/ydlidar/" \ | |
| | xargs clang-format --dry-run --Werror | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cache/pip | |
| ~/.platformio/.cache | |
| key: ${{ runner.os }}-pio | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.11' | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: 24 | |
| - name: Install frontend dependencies | |
| working-directory: frontend | |
| run: npm ci | |
| - name: Run frontend tests | |
| working-directory: frontend | |
| run: npm test | |
| - name: Install PlatformIO Core | |
| run: pip install --upgrade platformio | |
| - name: Prepare configuration | |
| run: cp ./config/secrets.ini.template ./config/secrets.ini | |
| - name: Run native unit tests | |
| run: pio test -e native | |
| - name: Build PlatformIO Project | |
| run: pio run | |
| - uses: JamesIves/[email protected] | |
| with: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| BRANCH: gh-pages | |
| FOLDER: ./data/bt | |
| CLEAN: true |