mirror of https://github.com/lumapu/ahoy.git
				
				
			
				 2 changed files with 69 additions and 241 deletions
			
			
		| @ -1,223 +0,0 @@ | |||||
| name: Ahoy Development |  | ||||
| 
 |  | ||||
| on: |  | ||||
|   push: |  | ||||
|     branches: development* |  | ||||
|     paths-ignore: |  | ||||
|     - '**.md' # Do no build on *.md changes |  | ||||
| 
 |  | ||||
| jobs: |  | ||||
|   check: |  | ||||
|     name: Check Repository |  | ||||
|     runs-on: ubuntu-latest |  | ||||
|     if: github.repository == 'lumapu/ahoy' && github.ref_name == 'development03' |  | ||||
|     continue-on-error: true |  | ||||
|     steps: |  | ||||
|     - uses: actions/checkout@v4 |  | ||||
| 
 |  | ||||
|   build-en: |  | ||||
|     name: Build (EN) |  | ||||
|     needs: check |  | ||||
|     runs-on: ubuntu-latest |  | ||||
|     continue-on-error: true |  | ||||
|     strategy: |  | ||||
|       matrix: |  | ||||
|         variant: |  | ||||
|           - opendtufusion |  | ||||
|           - opendtufusion-ethernet |  | ||||
|           - esp8266 |  | ||||
|           - esp8266-all |  | ||||
|           - esp8266-minimal |  | ||||
|           - esp8266-prometheus |  | ||||
|           - esp8285 |  | ||||
|           - esp32-wroom32 |  | ||||
|           - esp32-wroom32-minimal |  | ||||
|           - esp32-wroom32-prometheus |  | ||||
|           - esp32-wroom32-ethernet |  | ||||
|           - esp32-s2-mini |  | ||||
|           - esp32-c3-mini |  | ||||
|     steps: |  | ||||
|     - uses: actions/checkout@v4 |  | ||||
|     - uses: benjlevesque/short-sha@v3.0 |  | ||||
|       id: short-sha |  | ||||
|       with: |  | ||||
|         length: 7 |  | ||||
| 
 |  | ||||
|     - name: Cache Pip |  | ||||
|       uses: actions/cache@v4 |  | ||||
|       with: |  | ||||
|         path: ~/.cache/pip |  | ||||
|         key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} |  | ||||
|         restore-keys: | |  | ||||
|           ${{ runner.os }}-pip- |  | ||||
| 
 |  | ||||
|     - name: Cache PlatformIO |  | ||||
|       uses: actions/cache@v4 |  | ||||
|       with: |  | ||||
|         path: ~/.platformio |  | ||||
|         key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }} |  | ||||
| 
 |  | ||||
|     - name: Setup Python |  | ||||
|       uses: actions/setup-python@v5 |  | ||||
|       with: |  | ||||
|         python-version: "3.x" |  | ||||
| 
 |  | ||||
|     - name: Install PlatformIO |  | ||||
|       run: | |  | ||||
|         python -m pip install setuptools --upgrade pip |  | ||||
|         pip install --upgrade platformio |  | ||||
| 
 |  | ||||
|     - name: Run PlatformIO |  | ||||
|       run:  pio run -d src -e ${{ matrix.variant }} |  | ||||
| 
 |  | ||||
|     - name: Compress .elf |  | ||||
|       uses: edgarrc/action-7z@v1 |  | ||||
|       with: |  | ||||
|         args: 7z a -t7z -mx=9 src/.pio/build/${{ matrix.variant }}/firmware.elf.7z ./src/.pio/build/${{ matrix.variant }}/firmware.elf |  | ||||
| 
 |  | ||||
|     - name: Rename Firmware |  | ||||
|       run: python scripts/getVersion.py ${{ matrix.variant }} >> $GITHUB_OUTPUT |  | ||||
| 
 |  | ||||
|     - name: Create Artifact |  | ||||
|       uses: actions/upload-artifact@v4 |  | ||||
|       with: |  | ||||
|         name: dev-${{ matrix.variant }} |  | ||||
|         path: firmware/* |  | ||||
| 
 |  | ||||
|   build-de: |  | ||||
|     name: Build (DE) |  | ||||
|     needs: check |  | ||||
|     runs-on: ubuntu-latest |  | ||||
|     continue-on-error: true |  | ||||
|     strategy: |  | ||||
|       matrix: |  | ||||
|         variant: |  | ||||
|           - opendtufusion-de |  | ||||
|           - opendtufusion-ethernet-de |  | ||||
|           - esp8266-de |  | ||||
|           - esp8266-all-de |  | ||||
|           - esp8266-prometheus-de |  | ||||
|           - esp8285-de |  | ||||
|           - esp32-wroom32-de |  | ||||
|           - esp32-wroom32-prometheus-de |  | ||||
|           - esp32-wroom32-ethernet-de |  | ||||
|           - esp32-s2-mini-de |  | ||||
|           - esp32-c3-mini-de |  | ||||
|     steps: |  | ||||
|     - uses: actions/checkout@v4 |  | ||||
|     - uses: benjlevesque/short-sha@v3.0 |  | ||||
|       id: short-sha |  | ||||
|       with: |  | ||||
|         length: 7 |  | ||||
| 
 |  | ||||
|     - name: Cache Pip |  | ||||
|       uses: actions/cache@v4 |  | ||||
|       with: |  | ||||
|         path: ~/.cache/pip |  | ||||
|         key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} |  | ||||
|         restore-keys: | |  | ||||
|           ${{ runner.os }}-pip- |  | ||||
| 
 |  | ||||
|     - name: Cache PlatformIO |  | ||||
|       uses: actions/cache@v4 |  | ||||
|       with: |  | ||||
|         path: ~/.platformio |  | ||||
|         key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }} |  | ||||
| 
 |  | ||||
|     - name: Setup Python |  | ||||
|       uses: actions/setup-python@v5 |  | ||||
|       with: |  | ||||
|         python-version: "3.x" |  | ||||
| 
 |  | ||||
|     - name: Install PlatformIO |  | ||||
|       run: | |  | ||||
|         python -m pip install setuptools --upgrade pip |  | ||||
|         pip install --upgrade platformio |  | ||||
| 
 |  | ||||
|     - name: Run PlatformIO |  | ||||
|       run:  pio run -d src -e ${{ matrix.variant }} |  | ||||
| 
 |  | ||||
|     - name: Compress .elf |  | ||||
|       uses: edgarrc/action-7z@v1 |  | ||||
|       with: |  | ||||
|         args: 7z a -t7z -mx=9 src/.pio/build/${{ matrix.variant }}/firmware.elf.7z ./src/.pio/build/${{ matrix.variant }}/firmware.elf |  | ||||
| 
 |  | ||||
|     - name: Rename Firmware |  | ||||
|       run: python scripts/getVersion.py ${{ matrix.variant }} >> $GITHUB_OUTPUT |  | ||||
| 
 |  | ||||
|     - name: Create Artifact |  | ||||
|       uses: actions/upload-artifact@v4 |  | ||||
|       with: |  | ||||
|         name: dev-${{ matrix.variant }} |  | ||||
|         path: firmware/* |  | ||||
| 
 |  | ||||
|   deploy: |  | ||||
|     name: Update Artifacts / Deploy |  | ||||
|     needs: [build-en, build-de] |  | ||||
|     runs-on: ubuntu-latest |  | ||||
|     continue-on-error: false |  | ||||
|     steps: |  | ||||
|     - uses: actions/checkout@v4 |  | ||||
|     #- name: Copy boot_app0.bin |  | ||||
|     #  run: cp ~/.platformio/packages/framework-arduinoespressif32/tools/partitions/boot_app0.bin src/.pio/build/opendtufusion/ota.bin |  | ||||
| 
 |  | ||||
|     - name: Get Artifacts |  | ||||
|       uses: actions/download-artifact@v4 |  | ||||
|       with: |  | ||||
|         merge-multiple: true |  | ||||
|         path: firmware |  | ||||
| 
 |  | ||||
|     - name: Get Version from code |  | ||||
|       id: version_name |  | ||||
|       run: python scripts/getVersion.py ${{ matrix.variant }} >> $GITHUB_OUTPUT |  | ||||
| 
 |  | ||||
|     - name: Set Version |  | ||||
|       uses: cschleiden/replace-tokens@v1 |  | ||||
|       with: |  | ||||
|         files: manual/User_Manual.md |  | ||||
|       env: |  | ||||
|           VERSION: ${{ steps.version_name.outputs.name }} |  | ||||
| 
 |  | ||||
| 
 |  | ||||
|     - name: Create ESP Web Tools Manifest |  | ||||
|       working-directory: src |  | ||||
|       run: python ../scripts/buildManifest.py |  | ||||
| 
 |  | ||||
|     - name: Copy install html |  | ||||
|       run: mv scripts/gh-action-dev-build-flash.html firmware/install.html |  | ||||
| 
 |  | ||||
|     - name: Copy Changes.md |  | ||||
|       run: mv src/CHANGES.md firmware/CHANGES.md |  | ||||
| 
 |  | ||||
| 
 |  | ||||
|     - name: Rename firmware directory |  | ||||
|       run: mv firmware ${{ steps.version_name.outputs.name }} |  | ||||
| 
 |  | ||||
|     - name: delete environment Artifacts |  | ||||
|       uses: geekyeggo/delete-artifact@v4 |  | ||||
|       with: |  | ||||
|         name: dev-* |  | ||||
| 
 |  | ||||
|     - name: Deploy |  | ||||
|       uses: nogsantos/scp-deploy@master |  | ||||
|       with: |  | ||||
|         src: ${{ steps.version_name.outputs.name }}/ |  | ||||
|         host: ${{ secrets.FW_SSH_HOST }} |  | ||||
|         remote: ${{ secrets.FW_SSH_DIR }}/dev |  | ||||
|         port: ${{ secrets.FW_SSH_PORT }} |  | ||||
|         user: ${{ secrets.FW_SSH_USER }} |  | ||||
|         key: ${{ secrets.FW_SSH_KEY }} |  | ||||
| 
 |  | ||||
|     - name: Clean elf files (7z compressed) for Artifact |  | ||||
|       run: | |  | ||||
|         rm -f \ |  | ||||
|           ${{ steps.version_name.outputs.name }}/*/*.elf.7z |  | ||||
| 
 |  | ||||
|     - name: Create Artifact |  | ||||
|       uses: actions/upload-artifact@v4 |  | ||||
|       with: |  | ||||
|         name: dev-${{ steps.version_name.outputs.name }} |  | ||||
|         path: | |  | ||||
|           ${{ steps.version_name.outputs.name }}/* |  | ||||
|           manual/User_Manual.md |  | ||||
|           manual/Getting_Started.md |  | ||||
					Loading…
					
					
				
		Reference in new issue