Skip to content

Commit 2c74ad6

Browse files
committed
Don't upload "channel update info files" related to manual builds to S3 on release
Arduino IDE offers an update to the user when a newer version is available. The availability of an update is determined by comparing the user's IDE version against data file ("channel update info file") stored on Arduino's download server. These "channel update info files" are automatically generated by the build workflow. Previously the release process was fully automated, including the upload of the "channel update info files" to the server. As a temporary workaround for limitations of the GitHub Actions runner machines used to produce the automated builds, some release builds are now produced manually: - Linux build (because the Ubuntu 18.04 runner was shut down and newer runner versions produce builds incompatible with older Linux versions) - macOS Apple Silicon build (because GitHub hosted Apple Silicon runners are not available) The automatic upload of the "channel update info files" produced by the build workflow is problematic because if users receive update offers before the "channel update info files" are updated for the manually produced builds, they can receive an update to a different build than intended: - Users of older Linux versions would update to a build that won't start on their machine - macOS Apple Silicon users would update to macOS x86 build that is less performant on their machine For this reason, the build workflow is adjusted to no longer upload the Linux and macOS "channel update info files" to the download server on release. These files will now be manually uploaded after they have been updated to provide the manually produced builds. This workaround will be reverted once a fully automated release system is regained.
1 parent 9fff553 commit 2c74ad6

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

.github/workflows/build.yml

+9
Original file line numberDiff line numberDiff line change
@@ -245,6 +245,15 @@ jobs:
245245
file_glob: true
246246
body: ${{ needs.changelog.outputs.BODY }}
247247

248+
# Temporary measure to prevent release update offers before the manually produced builds are uploaded.
249+
# The step must be removed once fully automated builds are regained.
250+
- name: Remove "channel update info files" related to manual builds
251+
run: |
252+
# See: https://github.com/arduino/arduino-ide/issues/2018
253+
rm "${{ env.JOB_TRANSFER_ARTIFACT }}/stable-linux.yml"
254+
# See: https://github.com/arduino/arduino-ide/issues/408
255+
rm "${{ env.JOB_TRANSFER_ARTIFACT }}/stable-mac.yml"
256+
248257
- name: Publish Release [S3]
249258
if: github.repository == 'arduino/arduino-ide'
250259
uses: docker://plugins/s3

0 commit comments

Comments
 (0)