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

[LOCAL][RN][CI] Improve stability of the Hermes pipeline #45142

Merged
merged 4 commits into from
Jun 25, 2024

Conversation

cipolleschi
Copy link
Contributor

@cipolleschi cipolleschi commented Jun 24, 2024

Summary:

The stability of the building Hermes pipeline was terrible due to how caches work in Github Actions.

I refactored the jobs to use a misxture of caches and artifacts to improve the jobs stability.
Now if a cache fails, we rebuild, as it should be, and we use Artifacts to move the prebuilts from a job to the next in the hermes build pipeline.

Artifacts are a bit slower, but not ratelimited, so we should not encounter 429s that makes the build faile.

Changelog:

[Internal] Stabilize the pipelines

Test Plan:

GHA is green.

@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Jun 24, 2024
@cipolleschi cipolleschi changed the base branch from main to 0.75-stable June 24, 2024 15:38
@cipolleschi cipolleschi changed the base branch from 0.75-stable to 0.74-stable June 24, 2024 15:46
@cipolleschi cipolleschi changed the base branch from 0.74-stable to 0.75-stable June 24, 2024 15:47
@cipolleschi cipolleschi force-pushed the cipolleschi/improve-build-hermes-mac-stability branch from 6fe235d to 57ccdf8 Compare June 24, 2024 15:51
Summary:
This change is the first step in refactoring GHA so that they can be reused more easily across jobs.
Its goal is also to be more reliable w.r.t. caches.

That this change do:
* moves `prepare_hermes_workspace` to a composite action
	* saves the `prepare_hermes_workspace` caches only on main
	* uploads the destination folder as an artifact so that we can use it later in the run
* makes the `test-all`, `nightly` and `publish-release` workflow use the new composite action
* updates the `setup-hermes-workspace` to download and use the artifact uploaded by `prepare_hermes_workspace`

[Internal] - Factor out the prepare_hermes_workspace action

Pull Request resolved: #45071

Test Plan: GHA in CI

Reviewed By: cortinico

Differential Revision: D58808087

Pulled By: cipolleschi

fbshipit-source-id: 42c46bcf75fc73b2edfda9be62b5d0fe8a919a5d
@cipolleschi cipolleschi force-pushed the cipolleschi/improve-build-hermes-mac-stability branch 7 times, most recently from 44d5ad2 to b460a60 Compare June 24, 2024 16:42
@analysis-bot
Copy link

Platform Engine Arch Size (bytes) Diff
android hermes arm64-v8a 20,443,793 -35,898
android hermes armeabi-v7a n/a --
android hermes x86 n/a --
android hermes x86_64 n/a --
android jsc arm64-v8a 23,642,476 -34,590
android jsc armeabi-v7a n/a --
android jsc x86 n/a --
android jsc x86_64 n/a --

Base commit: 986cf18
Branch: main

@cipolleschi cipolleschi force-pushed the cipolleschi/improve-build-hermes-mac-stability branch 12 times, most recently from 92b0f04 to e60c265 Compare June 25, 2024 09:58
@cipolleschi cipolleschi force-pushed the cipolleschi/improve-build-hermes-mac-stability branch 4 times, most recently from 438c1e0 to 8370225 Compare June 25, 2024 10:59
@cipolleschi cipolleschi force-pushed the cipolleschi/improve-build-hermes-mac-stability branch 2 times, most recently from 6ac7e34 to 5644821 Compare June 25, 2024 12:35
@cipolleschi cipolleschi force-pushed the cipolleschi/improve-build-hermes-mac-stability branch from 5644821 to 941259b Compare June 25, 2024 12:38
@cipolleschi cipolleschi marked this pull request as ready for review June 25, 2024 12:48
@blakef blakef self-requested a review June 25, 2024 12:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. p: Facebook Partner: Facebook Partner Pick Request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants