-
Notifications
You must be signed in to change notification settings - Fork 648
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
convert circleci workflows to github actions #1301
convert circleci workflows to github actions #1301
Conversation
Thanks for putting this together! I think the windows failures are unrelated and will have fix landing shortly. I am curious about what we could do for the android test cases that don't currently seem to be included. |
If we can identify a suitable docker image for the android jobs, I'd be happy to make another PR for these. Let me know please. |
@robandpdx I think we want to do largely the same as React Native here for the android tests. I see their PR is coming along as well (facebook/react-native#42931), but it's not obvious to me how to answer the question of which docker image is being used. I think their android tests are being invoked here. |
bc1eacf
to
5b5465c
Compare
@mattbfb Are the android tests being run in circleci currently? Can you point me to the circleci config please? |
@robandpdx Sure thing 👍 https://github.com/facebook/hermes/blob/main/.circleci/config.yml is our current config. https://github.com/facebook/hermes/blob/main/.circleci/config.yml#L641 is an instance of android testing. |
@mattbfb Thanks! I'll add that. Any idea what this error is with the linux job in my fork? Fresh rebase today. |
@robandpdx Hm, I'm not sure. Is there any way we can debug these as they run in GitHub actions? |
@mattbfb The best way to debug this is probably to run the commands from the workflow in a fresh ubuntu 20.04 linux vm. |
The Error
The Error
|
77d3f5c
to
27e6df4
Compare
@robandpdx I did some digging through the build; the first error appears to be because the testing step expects Hermes to be cloned and built from the directory contained in the The second error appears to be a lack of a running android instance. Does the image being used contain (and launch) an Android simulator? The CircleCI version used an image that had an android simulator, and launched it using the |
@mattbfb Thank you for the help here. I'll see if I adjust the
The |
27e6df4
to
97c8cb0
Compare
97c8cb0
to
f991706
Compare
@robandpdx I think that's all correct, and I see tests now appear to be passing! |
@mattbfb has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
@robandpdx This one is looking good and on its way to land. Thanks! Can you perform the same porting for the "Static Hermes" project (https://github.com/facebook/hermes/tree/static_h)? It has a CircleCI build in the same location, but with a much simpler implementation (https://github.com/facebook/hermes/blob/static_h/.circleci/config.yml) |
@mattbfb I can. I'm in a holding pattern currently because our engagement has run out of hours. I believe more hours will be allocated to this effort in the not so distant future. When/if that happens, I'll get it done. |
Summary: <!-- Thanks for submitting a pull request! We appreciate you spending the time to work on these changes. Please provide enough information so that others can review your pull request. The two fields below are mandatory. Before submitting a pull request, please make sure the following is done: 1. Fork [the repository](https://github.com/facebook/hermes) and create your branch from `main`. 2. If you've fixed a bug or added code that should be tested, add tests! 3. Ensure it builds and the test suite passes. [tips](https://github.com/facebook/hermes/blob/HEAD/doc/BuildingAndRunning.md) 4. Format your code with `.../hermes/utils/format.sh` 5. If you haven't already, complete the CLA. --> This pull request converts the CircleCI workflows to GitHub actions workflows. ### Errors The `linux` job fails with the following unit test failure... <details> <summary>Error</summary> ``` -- Testing: 1976 tests, 4 threads -- Testing: 0 .. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. FAIL: Hermes-Unit :: VMRuntime/./HermesVMRuntimeTests/GCReturnUnusedMemoryTest.CollectReturnsFreeMemory (1808 of 1976) ******************** TEST 'Hermes-Unit :: VMRuntime/./HermesVMRuntimeTests/GCReturnUnusedMemoryTest.CollectReturnsFreeMemory' FAILED ******************** Note: Google Test filter = GCReturnUnusedMemoryTest.CollectReturnsFreeMemory [==========] Running 1 test from 1 test case. [----------] Global test environment set-up. [----------] 1 test from GCReturnUnusedMemoryTest [ RUN ] GCReturnUnusedMemoryTest.CollectReturnsFreeMemory /home/runner/work/hermes/hermes/hermes/unittests/VMRuntime/GCReturnUnusedMemoryTest.cpp:68: Failure Expected: (*before) < (*touched), actual: 3009 vs 3009 [ FAILED ] GCReturnUnusedMemoryTest.CollectReturnsFreeMemory (5 ms) [----------] 1 test from GCReturnUnusedMemoryTest (5 ms total) [----------] Global test environment tear-down [==========] 1 test from 1 test case ran. (5 ms total) [ PASSED ] 0 tests. [ FAILED ] 1 test, listed below: [ FAILED ] GCReturnUnusedMemoryTest.CollectReturnsFreeMemory 1 FAILED TEST ******************** Testing: 0 .. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90.. Testing Time: 13.21s ******************** Failing Tests (1): Hermes-Unit :: VMRuntime/./HermesVMRuntimeTests/GCReturnUnusedMemoryTest.CollectReturnsFreeMemory Expected Passes : 1848 Unsupported Tests : 127 Unexpected Failures: 1 ``` </details> Pull Request resolved: facebook#1301 Test Plan: The workflows was tested in my fork. [Here is the latest workflow run in my fork](https://github.com/robandpdx-org/hermes/actions/runs/7832320547). https://fburl.com/workplace/f6mz6tmw Reviewed By: neildhar Differential Revision: D56482430 Pulled By: mattbfb fbshipit-source-id: 903f63c5b3874a758551deb8e9ee8ff8f8bd19bb
Summary
This pull request converts the CircleCI workflows to GitHub actions workflows.
Errors
The
linux
job fails with the following unit test failure...Error
Test Plan
The workflows was tested in my fork. Here is the latest workflow run in my fork.
https://fburl.com/workplace/f6mz6tmw