MetaMask / metamask-mobile

Mobile web browser providing access to websites that use the Ethereum blockchain
https://metamask.io
Other
2.18k stars 1.12k forks source link

CI: Add retry logic to prevent builds from failing while installing nvm #11832

Closed cortisiko closed 1 month ago

cortisiko commented 1 month ago

What is this about?

Some workflows tend to be unstable at random build steps prior to test execution. This is more prevalent on non-main builds (builds that run against feature branches).

For instance:

To improve stability, we should add retry logic to the prep_enviroment step to prevent random failures from prematurely causing builds to fail.

Scenario

No response

Design

No response

Technical Details

No response

Threat Modeling Framework

No response

Acceptance Criteria

No response

Stakeholder review needed before the work gets merged

References

No response

cortisiko commented 1 month ago

I'm closing this issue as not done since no action is required on our side. NVM already has built-in retry logic for when the curl command fails.

The main challenge we faced here was that bitrise builds failed while trying to install the node. This appears to be a sporadic issue that occasionally fails due to rate-limiting or throttling. Some have reported similar errors in the NVM repository, as seen here: https://github.com/nvm-sh/nvm/issues/3074. This suggests that the problem originates with NVM and is something others have encountered.