docs: add SPIFFS change detection and binary copying to release workflows

This commit is contained in:
Manuel Weiser 2025-02-21 17:42:04 +01:00
parent b0b3d41c84
commit 1a8cf7a58f
2 changed files with 23 additions and 6 deletions

View File

@ -74,6 +74,12 @@ jobs:
# Copy firmware binary
cp .pio/build/esp32dev/firmware.bin .pio/build/esp32dev/filaman_${VERSION}.bin
# Copy SPIFFS binary if SPIFFS changed
if [[ "${{ steps.check_spiffs.outputs.SPIFFS_CHANGED }}" == "true" ]]; then
echo "SPIFFS changes detected, copying SPIFFS binary..."
cp .pio/build/esp32dev/spiffs.bin .pio/build/esp32dev/webpage_${VERSION}.bin
fi
# Create full binary (always)
(cd .pio/build/esp32dev && \
esptool.py --chip esp32 merge_bin \
@ -87,12 +93,6 @@ jobs:
0x10000 firmware.bin \
0x390000 spiffs.bin)
# Only copy SPIFFS binary if data changed
if [[ "${{ steps.check_data.outputs.DATA_CHANGED }}" == "true" ]]; then
echo "Data changes detected, copying SPIFFS binary..."
cp .pio/build/esp32dev/spiffs.bin .pio/build/esp32dev/webpage_${VERSION}.bin
fi
# Verify file sizes
echo "File sizes:"
(cd .pio/build/esp32dev && ls -lh *.bin)

View File

@ -36,6 +36,17 @@ jobs:
else
echo "DATA_CHANGED=false" >> $GITHUB_OUTPUT
fi
- name: Check for SPIFFS changes
id: check_spiffs
run: |
git fetch --unshallow || true
CHANGED_FILES=$(git diff --name-only HEAD^..HEAD)
if echo "$CHANGED_FILES" | grep -q "^data/\|^html/"; then
echo "SPIFFS_CHANGED=true" >> $GITHUB_OUTPUT
else
echo "SPIFFS_CHANGED=false" >> $GITHUB_OUTPUT
fi
- name: Build Firmware
run: |
@ -49,6 +60,12 @@ jobs:
# Copy firmware binary
cp .pio/build/esp32dev/firmware.bin .pio/build/esp32dev/filaman_${VERSION}.bin
# Copy SPIFFS binary if SPIFFS changed
if [[ "${{ steps.check_spiffs.outputs.SPIFFS_CHANGED }}" == "true" ]]; then
echo "SPIFFS changes detected, copying SPIFFS binary..."
cp .pio/build/esp32dev/spiffs.bin .pio/build/esp32dev/webpage_${VERSION}.bin
fi
# Create full binary (always)
(cd .pio/build/esp32dev && \
esptool.py --chip esp32 merge_bin \