@@ -33,29 +33,44 @@ jobs:
3333      run : | 
3434        platformio run -d ${{ matrix.project }} 
3535
36-      - name : Create release tag 
37-       id : create_tag 
36+      - name : Create output directory 
37+       run : mkdir -p release_zips 
38+ 
39+     - name : Zip firmware files 
3840      run : | 
39-         echo "RELEASE_TAG=release-$(date +%Y%m%d%H%M%S)" >> $GITHUB_ENV 
41+         out="release_zips/${{ matrix.project }}.zip" 
42+         zip -j "$out" \ 
43+           ${{ matrix.project }}/.pio/build/**/bootloader.bin \ 
44+           ${{ matrix.project }}/.pio/build/**/firmware.bin \ 
45+           ${{ matrix.project }}/.pio/build/**/flash_args \ 
46+           ${{ matrix.project }}/.pio/build/**/partitions.bin \ 
47+           ${{ matrix.project }}/.pio/build/**/ota_data_initial.bin || true  
4048
41-      - name : Create GitHub draft release 
42-       uses : softprops/action-gh-release@v1 
49+      - name : Upload zip as artifact 
50+       uses : actions/upload-artifact@v4 
4351      with :
44-         tag_name : ${{ env.RELEASE_TAG }} 
45-         name : Firmware Release ${{ env.RELEASE_TAG }} 
46-         draft : true 
47-       env :
48-         GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }} 
52+         name : ${{ matrix.project }}.zip 
53+         path : release_zips/${{ matrix.project }}.zip 
4954
50-     - name : Upload firmware to release 
55+   release :
56+     needs : build 
57+     runs-on : ubuntu-latest 
58+ 
59+     steps :
60+     - name : Download all artifacts 
61+       uses : actions/download-artifact@v4 
62+ 
63+     - name : Create release tag 
64+       id : tag 
65+       run : echo "tag=release-$(date +%Y%m%d%H%M%S)" >> $GITHUB_ENV 
66+ 
67+     - name : Create GitHub draft release 
5168      uses : softprops/action-gh-release@v1 
5269      with :
70+         tag_name : ${{ env.tag }} 
71+         name : Firmware Release ${{ env.tag }} 
72+         draft : true 
5373        files : | 
54-           ${{ matrix.project }}/.pio/build/**/bootloader.bin 
55-           ${{ matrix.project }}/.pio/build/**/firmware.bin 
56-           ${{ matrix.project }}/.pio/build/**/flash_args 
57-           ${{ matrix.project }}/.pio/build/**/partitions.bin 
58-           ${{ matrix.project }}/.pio/build/**/ota_data_initial.bin 
59-          tag_name : ${{ env.RELEASE_TAG }} 
74+           **/*.zip 
6075       env :
6176        GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }} 
0 commit comments