--- name: Build and deploy nightly release on: push: branches: - 'nightly_filenames' schedule: - cron: '0 2 * * *' # run at 2 AM UTC concurrency: group: 'nightly' cancel-in-progress: true jobs: build: name: Build firmware runs-on: ubuntu-latest strategy: matrix: target: - nv14 - t12 - t16 - t18 - t8;zorro - tlite;tpro - tx12 - tx16s - x10;x10-access - x12s - x7;x7-access - x9d;x9dp;x9dp2019 - x9lite;x9lites - xlite;xlites container: image: ghcr.io/edgetx/edgetx-commit-tests volumes: - ${{ github.workspace }}:/src steps: - name: Check out the repo uses: actions/checkout@v2 with: submodules: recursive - name: Build firmware ${{ matrix.target }} env: FLAVOR: ${{ matrix.target }} EDGETX_VERSION_SUFFIX: nightly run: ./tools/build-gh.sh - name: Package firmware ${{ matrix.target }} uses: 'actions/upload-artifact@v2' with: name: edgetx-firmware-nightly path: | fw.json LICENSE *.bin retention-days: 15 if-no-files-found: error deploy: name: Deploy release runs-on: ubuntu-latest needs: build steps: - name: Download artifacts uses: actions/download-artifact@v2 with: name: edgetx-firmware-nightly path: edgetx-firmware-nightly - name: Compose release filename run: echo "release_filename=edgetx-firmware-nightly-${GITHUB_SHA::8}.zip" >> $GITHUB_ENV - name: Zip release file uses: montudor/action-zip@v1 with: args: zip -qq -r ${{ env.release_filename }} ./edgetx-firmware-nightly - name: Deploy release uses: marvinpinto/action-automatic-releases@latest with: repo_token: "${{ secrets.GITHUB_TOKEN }}" automatic_release_tag: 'nightly' prerelease: true files: | *.zip