From 27292774d75ad5c100bc31a1d9f4b097d0554cfd Mon Sep 17 00:00:00 2001 From: per1234 Date: Mon, 22 Mar 2021 21:05:56 -0700 Subject: [PATCH] Create separate tester artifacts for each build Previously, a single workflow artifact was created by the "Arduino IDE" GitHub Actions workflow. This artifact contained the builds for each operating system, including all three versions of the Windows build. This resulted in beta testers needing to do a >1 GB download for every build, even though they likely needed only ~200 MB of what they downloaded. Producing separate workflows makes it easier for beta testers to participate in the development and is less wasteful of resources. --- .github/workflows/build.yml | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c0462aeb..999563ba 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -183,3 +183,36 @@ jobs: PLUGIN_BUCKET: ${{ secrets.DOWNLOADS_BUCKET }} AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + + artifacts: + name: ${{ matrix.artifact.name }} artifact + needs: build + if: always() && needs.build.result != 'skipped' + runs-on: ubuntu-latest + + strategy: + matrix: + artifact: + - path: "*Linux_64bit.zip" + name: Linux_X86-64 + - path: "*macOS_64bit.dmg" + name: macOS + - path: "*Windows_64bit.exe" + name: Windows_X86-64_interactive_installer + - path: "*Windows_64bit.msi" + name: Windows_X86-64_MSI + - path: "*Windows_64bit.zip" + name: Windows_X86-64_zip + + steps: + - name: Download job transfer artifact + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_TRANSFER_ARTIFACT }} + path: ${{ env.JOB_TRANSFER_ARTIFACT }} + + - name: Upload tester build artifact + uses: actions/upload-artifact@v2 + with: + name: ${{ matrix.artifact.name }} + path: ${{ env.JOB_TRANSFER_ARTIFACT }}/${{ matrix.artifact.path }}