name: Build All Firmware Variants on: #pull_request: # branches: # - master # paths-ignore: # - config/** # - data/** # - docs/** # - '**/*.md' push: branches: - master paths-ignore: - config/** - data/** - docs/** - '**/*.md' jobs: build: name: Build all Environments if: github.repository == 'knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S' runs-on: ubuntu-latest strategy: matrix: platform: # Knutwurst Base Environments - i3_MEGA_1stgen #- i3_MEGA_1stgen_TMC #- i3_MEGA_1stgen_BLTOUCH_10 #- i3_MEGA_1stgen_BLTOUCH_11 #- i3_MEGA_1stgen_TMC_BLTOUCH_10 #- i3_MEGA_1stgen_TMC_BLTOUCH_11 #- i3_MEGA #- i3_MEGA_TMC #- i3_MEGA_BLTOUCH_10 #- i3_MEGA_BLTOUCH_11 #- i3_MEGA_TMC_BLTOUCH_10 #- i3_MEGA_TMC_BLTOUCH_11 #- i3_MEGA_S #- i3_MEGA_S_TMC #- i3_MEGA_S_BLTOUCH_10 #- i3_MEGA_S_BLTOUCH_11 #- i3_MEGA_S_TMC_BLTOUCH_10 #- i3_MEGA_S_TMC_BLTOUCH_11 #- i3_MEGA_S_DGUS #- i3_MEGA_S_DGUS_TMC #- i3_MEGA_S_DGUS_BLTOUCH_10 #- i3_MEGA_S_DGUS_BLTOUCH_11 #- i3_MEGA_S_DGUS_TMC_BLTOUCH_10 #- i3_MEGA_S_DGUS_TMC_BLTOUCH_11 #- i3_MEGA_X #- i3_MEGA_X_TMC #- i3_MEGA_X_BLTOUCH_10 #- i3_MEGA_X_BLTOUCH_11 #- i3_MEGA_X_TMC_BLTOUCH_10 #- i3_MEGA_X_TMC_BLTOUCH_11 #- i3_MEGA_P #- i3_MEGA_P_TMC #- i3_MEGA_P_BLTOUCH_10 #- i3_MEGA_P_BLTOUCH_11 #- i3_MEGA_P_TMC_BLTOUCH_10 #- i3_MEGA_P_TMC_BLTOUCH_11 steps: - name: Select Python 3.7 uses: actions/setup-python@v1 with: python-version: '3.7' # Version range or exact version of a Python version to use, using semvers version range syntax. architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified - name: Install PlatformIO run: | pip install -U https://github.com/platformio/platformio-core/archive/develop.zip platformio update - name: Install dependencies run: | python -m pip install --upgrade pip pip install platformio - uses: actions/checkout@master - name: Run PlatformIO run: platformio run --environment ${{ matrix.platform }} - name: Rename Output Files run: | CUSTOM_BUILD_VERSION=$(egrep -o "([0-9]{1,}\.)+[0-9]{1,}" Marlin/src/inc/Version.h -m2 | tail -n1) && \ mv .pio/build/${{ matrix.platform }}/firmware.hex .pio/build/${{ matrix.platform }}/${{ matrix.platform }}_v$CUSTOM_BUILD_VERSION.hex - name: Archive artifacts uses: actions/upload-artifact@master with: name: Knutwurst_${{ matrix.platform }}_v$CUSTOM_BUILD_VERSION path: | .pio/build/${{ matrix.platform }}/${{ matrix.platform }}_v*.hex - name: Archive artifacts ino single ZIP uses: actions/upload-artifact@master with: name: Knutwurst_i3_Mega_Firmware_v$CUSTOM_BUILD_VERSION path: | .pio/build/${{ matrix.platform }}/${{ matrix.platform }}_v*.hex