build.yaml 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. name: Build and Pack
  2. on: [push]
  3. jobs:
  4. build:
  5. runs-on: ubuntu-latest
  6. steps:
  7. - uses: actions/checkout@v2
  8. - name: Cache PlatformIO
  9. uses: actions/cache@v2
  10. with:
  11. path: ~/.platformio
  12. key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }}
  13. - name: Set up Python
  14. uses: actions/setup-python@v2
  15. - name: Install PlatformIO
  16. run: |
  17. python -m pip install --upgrade pip
  18. pip install --upgrade platformio
  19. - name: Set outputs
  20. id: vars
  21. run: echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
  22. - name: Set Versions
  23. run: echo "${{ github.ref_name }} / ${{ steps.vars.outputs.sha_short }}" > "sd-card/html/version.txt"
  24. - name: Build Firmware
  25. # run: touch firmware.bin # Testing
  26. run: cd code; platformio run --environment esp32cam; cp .pio/build/esp32cam/firmware.bin ../firmware__${{ github.ref_name }}__${{ steps.vars.outputs.sha_short }}.bin
  27. - name: Upload Firmware Artifact
  28. uses: actions/upload-artifact@v3
  29. with:
  30. name: firmware__${{ github.ref_name }}__${{ steps.vars.outputs.sha_short }}
  31. path: firmware__${{ github.ref_name }}__${{ steps.vars.outputs.sha_short }}.bin
  32. - name: Upload Web interface Artifact
  33. uses: actions/upload-artifact@v3
  34. with:
  35. name: web-interface__${{ github.ref_name }}__${{ steps.vars.outputs.sha_short }}
  36. path: ./sd-card/html/*