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

Download artifacts from CI to speed up testing (#37971) #38612

Merged

Commits on Jul 25, 2023

  1. Download artifacts from CI to speed up testing (#37971)

    Summary:
    Testing releases takes a lot of time because we have to build locally several configurations.
    However, the artifacts that we build locally are also built in CI.
    
    The goal of this PR is to implement a mechanism to download those artifacts from the CI instead of build locally, so that testing the release locally can take much less time.
    
    As an example, the full test cycle can take more than 2 hours given that we need to repackage and rebuilt the app from the template.
    
    My plan is to add a table with the time saved once the PR is done
    
    - [x] Download Hermes tarball for RNTester iOS
    - [x] Download Hermes APK for RNTester Android
    - [x] Download JSC APK for RNTester Android
    - [x] Download Packaged version of React Native to create a new app
    - [x] Use the downloaded React Native to initialize an app from the template
    - [x] Download Maven Local prebuilt in CI and use it for Template Android app
    
    | Setup | Before [s] | After [s] | Notes |
    | --- | --- | --- | --- |
    | iOS RNTester Hermes | 339.68 | 194.86 | Time saved by downloading Hermes rather then building it |
    | iOS RNTester JSC | 129.80 | 123.35 | Not significant, expected as this workflow did not change
    | Android RNTester Hermes | 1188.82 | 5.28 | Huge improvement: we download the APK rather then build |
    | Android RNTester JSC | 103.10  | 6.28 | Huge improvement: we download the APK rather then build  |
    | Creating the RNTestProject | 2074.82  | 191.16 | We download Maven, the packaged version of RN and Hermes instead of building from scratch |
    
    [Internal] - Speed up Release testing by downloading the CircleCI artifacts
    
    Pull Request resolved: #37971
    
    Test Plan: - Tested the script locally
    
    Reviewed By: cortinico, dmytrorykun
    
    Differential Revision: D46859120
    
    Pulled By: cipolleschi
    
    fbshipit-source-id: 8878ebaccf6edb801f8e9884e2bf3946380aa748
    Riccardo Cipolleschi authored and cipolleschi committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    1800ab9 View commit details
    Browse the repository at this point in the history