Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Generate v1 and v2 format test data artifacts #80

Merged
merged 1 commit into from
Jan 23, 2024
Merged

Generate v1 and v2 format test data artifacts #80

merged 1 commit into from
Jan 23, 2024

Conversation

per1234
Copy link
Collaborator

@per1234 per1234 commented Jan 23, 2024

A significant change was made to the nature of GitHub Actions workflow artifacts starting from the 2.x release of the @actions/artifact package, which was introduced in the 4.0.0 release of the "actions/upload-artifact" GitHub Actions action.

It is necessary to provide integration test coverage for compatibility of the "arduino/report-size-deltas" action with the v2 format artifacts produced by actions/upload-artifact@v4. It is also important to continue to cover compatibility with the v1 format artifacts produced by actions/upload-artifact@v3, to support users who have not gotten around to updating that action dependency in their sketch compilation workflows (especially since the breaking change introduced by actions/upload-artifact@v4 will make it necessary to adjust the configuration of the workflow (per1234/.github#109)).

The chosen approach is to configure the "Upload test sketches report artifact" workflow to use actions/upload-artifact@v3 when uploading one of the test data artifacts and actions/upload-artifact@v4 when uploading the other. Even though the produced test data would not occur under real world usage, it is the cleanest way (the alternative being to create and maintain separate copies of the system implemented in the report-target-pr branch for each major version of the actions/upload-artifact action) to provide effective integration test coverage.

A significant change was made to the nature of GitHub Actions workflow artifacts starting from the 2.x release of the
`@actions/artifact` package, which was introduced in the 4.0.0 release of the "actions/upload-artifact" GitHub Actions
action.

It is necessary to provide integration test coverage for compatibility of the "arduino/report-size-deltas" action with
the v2 format artifacts produced by actions/upload-artifact@v4. It is also important to continue to cover compatibility
with the v1 format artifacts produced by actions/upload-artifact@v3, to support users who have not gotten around to
updating that action dependency in their sketch compilation workflows (especially since the breaking change introduced
by actions/upload-artifact@v4 will make it necessary to adjust the configuration of the workflow).

The chosen approach is to configure the "Upload test sketches report artifact" workflow to use
actions/upload-artifact@v3 when upload one of the test data artifacts and actions/upload-artifact@v4 when uploading the
other. Even though the produced test data would not occur under real world usage, it is the cleanest way (the
alternative being to create and maintain separate copies of the system implemented in the `report-target-pr` branch for
each major version of the actions/upload-artifact action) to provide effective integration test coverage.
@per1234 per1234 added type: enhancement Proposed improvement topic: infrastructure Related to project infrastructure labels Jan 23, 2024
@per1234 per1234 self-assigned this Jan 23, 2024
@per1234 per1234 merged commit 35726ce into arduino:report-target-pr Jan 23, 2024
11 checks passed
@per1234 per1234 deleted the v4-artifact-coverage branch January 23, 2024 19:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic: infrastructure Related to project infrastructure type: enhancement Proposed improvement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant