Commit Graph

38 Commits

Author SHA1 Message Date
Héctor Ramos b531612b2c Collect unit test results in test_android job
Summary:
Explicitly generate a XML file with unit test results, and convert this file to JUnit format for display in Circle.

Run in Circle: https://circleci.com/gh/hramos/react-native/1869

![screen shot 2018-03-28 at 12 07 15 pm](https://user-images.githubusercontent.com/165856/38050644-9712b6c6-3280-11e8-953c-a2eb722edf39.png)

[INTERNAL] [MINOR] [.circleci] - Collect, process, and display Android unit test results on Circle
Closes https://github.com/facebook/react-native/pull/18608

Differential Revision: D7433151

Pulled By: hramos

fbshipit-source-id: 7c18b552d7790b238b4c2a720fb316dff8fd7ec3
2018-03-28 13:22:58 -07:00
Héctor Ramos 15b25d854a Cache C++ downloads
Summary: Closes https://github.com/facebook/react-native/pull/18595

Differential Revision: D7419532

Pulled By: hramos

fbshipit-source-id: 0b64763f91efea8300c4cde4703e8496dbda8c49
2018-03-27 14:33:24 -07:00
Héctor Ramos de1040fcff Cache apt dependencies in test_android
Summary: Closes https://github.com/facebook/react-native/pull/18576

Differential Revision: D7415216

Pulled By: hramos

fbshipit-source-id: 9b7199fe5fb91a26ba0881e426a85395b2923f26
2018-03-27 09:28:32 -07:00
Héctor Ramos 6f588b31be Fix Android job
Summary:
Yarn is not used in the Android step, not directly

Test Plan
Circle

Release Notes

[GENERAL][MINOR][.circleci] - Fix Android CI job
Closes https://github.com/facebook/react-native/pull/18421

Differential Revision: D7314158

Pulled By: hramos

fbshipit-source-id: ad40346b6a1c1f63a1b952fd05cbe9398d9c59a1
2018-03-16 18:56:08 -07:00
Héctor Ramos 6f6084db69 Explicitly set path to yarn
Summary:
Due to issues with Circle's Docker images ([link](https://twitter.com/circleci/status/974694807091073024)), jobs are failing with an error "yarn not found".

Test Plan
Run on Circle

Release Notes
[GENERAL][MINOR][.circleci] - Fix Circle issue
Closes https://github.com/facebook/react-native/pull/18419

Differential Revision: D7312052

Pulled By: hramos

fbshipit-source-id: 2768b9c69046a2f80518430024d3e7afbbd7de65
2018-03-16 17:22:05 -07:00
Héctor Ramos 1ff1e573f1 Add existing Android checks to Circle.
Summary:
Moving towards reusing existing scripts to ensure local and CI tests are kept in sync.
Closes https://github.com/facebook/react-native/pull/18307

Differential Revision: D7222664

Pulled By: hramos

fbshipit-source-id: ecce91e32159c55b19c29eab69a6754642f02236
2018-03-09 17:24:19 -08:00
Héctor Ramos c9d756285a Clear cache to resolve iOS, tvOS workflow
Summary:
tvOS and iOS workflows were flaky, apparently due to a stale cache that contained a problematic version of the Metro dependency. Thanks to motiz88 for identifying the potential cause of flakiness in https://github.com/react-native-community/react-native-releases/issues/2#issuecomment-371905315.

https://circleci.com/workflow-run/440180a2-e888-4f27-bec9-b8e5d9be6708

[GENERAL] [MINOR] [CI] - Resolve iOS, tvOS failures in Circle
Closes https://github.com/facebook/react-native/pull/18304

Differential Revision: D7220150

Pulled By: hramos

fbshipit-source-id: 0f5e68c779dfce44e6deb8b813a3ac9e25a2ab97
2018-03-09 15:11:46 -08:00
Héctor Ramos 498cf7e2d7 Reënable iOS and tvOS tests
Summary:
Although the test suites have a handful of failing tests, the jobs themselves do not fail.

Let's get these tests back into the fold so that we may track our progress getting these back to a good state.

cc dlowder-salesforce

Run tests on Circle, and confirm everything is green: https://circleci.com/workflow-run/4dd1a84b-502d-4ad6-aa41-64c768392a6b

If you go into the test iOS and test tvOS jobs, you will see that we are collecting test results at the top. These results show the failing individual tests.
Closes https://github.com/facebook/react-native/pull/18171

Differential Revision: D7151558

Pulled By: hramos

fbshipit-source-id: f105ec8bc97e80ed1b8358cde3f13a1ad3b271c2
2018-03-04 18:15:57 -08:00
Héctor Ramos b181b7797f Check PATENTS does not creep into files
Summary:
Some files have crept into the repo with the old license header. These are usually from PRs that were opened prior to the re-licensing of the project.

Let the script run, prior to fixing the errant files. The script outputs the following:

```
PATENTS crept into some new files?
 --- /dev/fd/63	2018-03-01 01:42:48.250153746 +0000
+++ /dev/fd/62	2018-03-01 01:42:48.250153746 +0000
@@ -1 +1,9 @@
+Libraries/NativeAnimation/Nodes/RCTTrackingAnimatedNode.h
+Libraries/NativeAnimation/Nodes/RCTTrackingAnimatedNode.m
+ReactAndroid/src/main/java/com/facebook/react/animated/TrackingAnimatedNode.java
+ReactAndroid/src/main/java/com/facebook/react/views/text/CustomLetterSpacingSpan.java
+ReactCommon/yoga/yoga/YGLayout.cpp
+ReactCommon/yoga/yoga/YGLayout.h
+ReactCommon/yoga/yoga/YGStyle.cpp
+ReactCommon/yoga/yoga/YGStyle.h
 scripts/circleci/check_license.sh
Exited with code 1
```

Fix the headers in these files and run the script again. No output, exit code 0.
Closes https://github.com/facebook/react-native/pull/18143

Reviewed By: sophiebits

Differential Revision: D7119356

Pulled By: hramos

fbshipit-source-id: d238e4d4a3ae320a2c8e625c2fa29690057a4814
2018-03-01 08:22:05 -08:00
Héctor Ramos 1346bf8405 Timeout Android instrumentation steps
Summary:
Sporadically, the instrumentation tests step will timeout while waiting for the apk to install on the emulator. By adding a 5 minute timeout, the command will be retried in these cases, where hopefully the install will go through.

Test Plan

Tested on Circle.
Closes https://github.com/facebook/react-native/pull/18127

Differential Revision: D7101890

Pulled By: hramos

fbshipit-source-id: 4dcc77153d794e9747df58ea40c011bc316b6c83
2018-02-27 13:09:55 -08:00
Héctor Ramos c87d03a8b2 Update danger token
Summary: Closes https://github.com/facebook/react-native/pull/18111

Differential Revision: D7099636

Pulled By: hramos

fbshipit-source-id: fc95ba83c34e0061c13fb831ea3496d7e8f3793a
2018-02-27 10:01:40 -08:00
Héctor Ramos 617362b6f7 Bump buck to v2018.02.16.01
Summary:
This should fix our current Android test failures.
Closes https://github.com/facebook/react-native/pull/18002

Differential Revision: D7014218

Pulled By: hramos

fbshipit-source-id: 2933baf9fd05f3ad33306c3ca7b62da8af568db0
2018-02-16 13:37:28 -08:00
Héctor Ramos cc6d0937c3 Add disabled tests to CircleCI config
Summary:
These tests have not run for one reason or another since the migration from Travis. They are not passing, and are commented out to avoid flagging new PRs as breaking. These tests need to be fixed and re-enabled ASAP.
Closes https://github.com/facebook/react-native/pull/17959

Differential Revision: D6976781

Pulled By: hramos

fbshipit-source-id: 712a09877d0597c12cafa741779b471680b7d2db
2018-02-13 08:16:51 -08:00
Mike Grabowski f7729a5933 Broken publish step on CI
Summary:
Every `job` is run in a separate container and so, `checkout` step is required for the Git host to be added to `~/.ssh/known_hosts`. Without this step, it will timeout after 10 minutes waiting for you to add (yes) or reject (no) from known hosts (we get this prompt when we checkout from a host for the very first time).
Closes https://github.com/facebook/react-native/pull/17956

Differential Revision: D6968130

Pulled By: hramos

fbshipit-source-id: 6d62166fd375f8f408cf5f18b188f841d035d97f
2018-02-12 12:33:42 -08:00
Héctor Ramos 51b6749c07 bump Android cache key
Summary: Closes https://github.com/facebook/react-native/pull/17934

Differential Revision: D6956755

Pulled By: hramos

fbshipit-source-id: 518171156638effc279f17b38c379e029ed23ba0
2018-02-09 17:31:14 -08:00
Héctor Ramos 2ef9b7f2da Checkout code prior to deploy
Summary: Closes https://github.com/facebook/react-native/pull/17917

Differential Revision: D6944553

Pulled By: hramos

fbshipit-source-id: 013f5e75bd61d939fe650729c9c388a78bede330
2018-02-08 17:17:56 -08:00
Héctor Ramos 40b17926bb Move approval to separate deploy workflow
Summary: Closes https://github.com/facebook/react-native/pull/17916

Differential Revision: D6943605

Pulled By: hramos

fbshipit-source-id: 0e86f01aa38c15e5bc179c5e517f079eb34d495f
2018-02-08 15:53:41 -08:00
Héctor Ramos 4f078d3fe2 Consolidate checkout and yarn steps
Summary:
Add checkout steps to reduce number of checkout/yarn calls

Tested on Circle CI.
Closes https://github.com/facebook/react-native/pull/17915

Differential Revision: D6942564

Pulled By: hramos

fbshipit-source-id: 72aff33eb099e24d63a80ec7d0630afedc21b630
2018-02-08 15:20:09 -08:00
Héctor Ramos 2f02dd4c8c Revert PR #17312 due to buck failures in continuous integration tests
Summary:
Circle is currently failing on the `android` step due to a dependency issue introduced by the aforementioned PR. I am currently waiting for an internal diff to be reviewed which will restore this PR alongside the necessary dependency.
Closes https://github.com/facebook/react-native/pull/17902

Differential Revision: D6937173

Pulled By: hramos

fbshipit-source-id: f732a397521cc5df36f503e618318ef6d69aeaa6
2018-02-08 07:38:37 -08:00
Héctor Ramos fa11faecb6 Switch e2e to yarn
Summary:
Addresses CI build failures due to use of scoped packages by metro.
Closes https://github.com/facebook/react-native/pull/17878

Differential Revision: D6914937

Pulled By: hramos

fbshipit-source-id: e6ce97561035f4deb128cd1e30d81ab4edea3e4c
2018-02-06 13:04:50 -08:00
Héctor Ramos 613afbab7f Rename workflow steps
Summary:
Trivial - shorten the workflow steps to ease reading of current status when looking at workflows dashboard.
Closes https://github.com/facebook/react-native/pull/17874

Differential Revision: D6912599

Pulled By: hramos

fbshipit-source-id: c4bb08923eb790960b883a7a5f6e4652663982d8
2018-02-06 10:02:42 -08:00
Héctor Ramos 9227ba73ab Update build-js-bundle run step
Summary:
Always build the JavaScript bundle, to ensure failures here are surfaced regardless of failures that may happen earlier in this workflow
Closes https://github.com/facebook/react-native/pull/17824

Differential Revision: D6872794

Pulled By: hramos

fbshipit-source-id: bab3b9cfa6cecb578e9a3cffae27e1ce355588d2
2018-02-01 10:48:25 -08:00
Héctor Ramos 365a4d4b43 Run more checks in parallel
Summary: Closes https://github.com/facebook/react-native/pull/17808

Differential Revision: D6866937

Pulled By: hramos

fbshipit-source-id: 34c9aa93a5274b57da81eb5bbece2ce3e5296846
2018-01-31 17:17:52 -08:00
Héctor Ramos 22a2553405 Move danger to bots directory
Summary:
No logic change here. Part of a plan to consolidate CI-only files amongst .circleci and bots/ directories.
Closes https://github.com/facebook/react-native/pull/17807

Differential Revision: D6865976

Pulled By: hramos

fbshipit-source-id: 48607a80dcf8cac1c3c033c18bf5d6dd4cd8e6bf
2018-01-31 16:42:41 -08:00
Héctor Ramos a2f3ba864e Generate JUnit test reports for iOS builds
Summary: Closes https://github.com/facebook/react-native/pull/17794

Differential Revision: D6850015

Pulled By: hramos

fbshipit-source-id: bd230a5aa6fe14fb760f7b0c5f0989bf6ee1e8ea
2018-01-31 15:02:58 -08:00
Héctor Ramos da8bec9f8b Switch to yarn
Summary:
Switch to Yarn in order to more closely match internal Facebook environment.
Closes https://github.com/facebook/react-native/pull/17193

Differential Revision: D6572337

Pulled By: hramos

fbshipit-source-id: 331b1f331937e8ce3b787d48561e2e655d4a1cc9
2018-01-30 14:01:48 -08:00
Héctor Ramos 17bd6c8e84 Move JS Bundle build step into Android
Summary:
Current setup prevents Android signal from being obtained when JavaScript environment is affected.

Proposed setup will configure Android build environment, surfacing any issues affecting Android even when a JavaScript bundle cannot be built.

We cannot proceed with unit tests and instrumentation tests if JavaScript is affected, but we will at least still get some signal from running BUCK.
Closes https://github.com/facebook/react-native/pull/17709

Differential Revision: D6775966

Pulled By: hramos

fbshipit-source-id: e50916c39060ed4e8ca880fcecc2830a51539bbd
2018-01-22 12:03:47 -08:00
Héctor Ramos f50af7f8a4 update npm cache key
Summary: Closes https://github.com/facebook/react-native/pull/17708

Differential Revision: D6775450

Pulled By: hramos

fbshipit-source-id: f8b04655dac942c84765ee01359c5f1589e00b76
2018-01-22 11:30:42 -08:00
Héctor Ramos 4e767013ed Fix buck failures on master
Summary:
WIP.
Closes https://github.com/facebook/react-native/pull/17295

Differential Revision: D6628523

Pulled By: hramos

fbshipit-source-id: ac2833e99de9e94340b8027469cc74a5b7379962
2017-12-22 11:30:26 -08:00
Héctor Ramos 5ea5683d01 Separate JavaScript lint/flow checks from tests
Summary:
This should help make it clearer, at a glance, which specific step is failing.

Run on Circle. Workflows will now show that Node 8 JS tests are green, but Node 6 JS tests are not. Lint/flow checks are also not green. Previously, it would be necessary to open the two test-node workflows to investigate which particular test failed. Given these tests and checks tend to break often, the additional clarity would be helpful.

<img width="485" alt="screen shot 2017-12-20 at 9 40 07 am" src="https://user-images.githubusercontent.com/165856/34220526-ce3d3b26-e569-11e7-803f-0e4bf1090f2f.png">
Closes https://github.com/facebook/react-native/pull/17293

Differential Revision: D6612623

Pulled By: hramos

fbshipit-source-id: c84351da50916e72e52c4271e2a31c16f6cdfbb9
2017-12-20 11:38:09 -08:00
Héctor Ramos 3362da421c Remove website deploys
Summary:
⚛️📱�
Closes https://github.com/facebook/react-native/pull/17047

Differential Revision: D6464319

Pulled By: hramos

fbshipit-source-id: d47f561eeb3232ebbff03f9e5c7ed80c078c9c75
2017-12-01 15:46:23 -08:00
Mike Grabowski 088ff3a171 Updates CircleCI config
Summary:
Contains changes needed for the `publish` step to be fixed.
Closes https://github.com/facebook/react-native/pull/16913

Differential Revision: D6415385

Pulled By: hramos

fbshipit-source-id: 1837aaf06e866a727bf77024eb5dc29d423a90a4
2017-11-27 11:01:31 -08:00
Héctor Ramos bd9cb37ccf Update buck to v2017.11.16.01
Summary:
Android tests on CI have been failing since late October due to dd016f334c which makes use of a new Buck feature, `required_for_source_only_abi`. Circle was using an older September release. In this PR, we update to the latest release.

Green is good. Red is bad.

Wait for Circle to run.

[INTERNAL][BUGFIX][./circleci/config.yml] - Update Buck version
Closes https://github.com/facebook/react-native/pull/16861

Differential Revision: D6355335

Pulled By: hramos

fbshipit-source-id: 411d0b229f0dfb7e9dfc07c300b6546bf7afcdfe
2017-11-16 18:18:37 -08:00
Héctor Ramos e11d496e9d Additional markdown adjustments
Summary:
Follow up to 9ec9567390
Closes https://github.com/facebook/react-native/pull/16759

Differential Revision: D6285219

Pulled By: hramos

fbshipit-source-id: 7012d257a5a6cff06cb2d94203a9379e4b7e3c4e
2017-11-09 09:55:05 -08:00
Héctor Ramos 601abd2503 Add Danger and publish to npm
Summary:
Run on Circle
Closes https://github.com/facebook/react-native/pull/16350

Differential Revision: D6066460

Pulled By: hramos

fbshipit-source-id: 667e1cc8b2b32f6aa1c8b995618d6362cd71d9e5
2017-10-16 12:13:32 -07:00
Mike Grabowski c0e6d415ce Migrate Travis over to Circle
Summary:
This pull request migrates Travis to Circle and pre-starts iOS simulators / tvOS ones as advised in documentation to speed up builds. It also uses Xcode 9.0 to build and test apps.

Note that podspec test is failing and it's been failing for a while on Travis as well (since podspec has been changed to use Cxx bridge by default). I've notified few folks here of that and we are looking to fix this test, but it's not related to the scope of this PR.

Also, previously, podspec tests were only runninng on master (disabled for PR builds) where I think it makes more sense to run them on PR builds as well (all in all, we want to prevent breakage before merging). That said, I've removed `if` check to make it run on all builds.

Other small changes:
- cache `node_modules` properly (previously defined as restore_cache and save_cache but not referenced in following jobs)
Closes https://github.com/facebook/react-native/pull/16354

Differential Revision: D6054858

Pulled By: hramos

fbshipit-source-id: 5165bef0985f4257febced14873be5bcb80b9f51
2017-10-13 16:19:36 -07:00
Mike Grabowski 4d77c74c76 Fix Analyze step on CI
Summary:
Recent changes that introduced Circle 2 (thanks ide and hramos for work on this) include special step for analyzing code. It takes PR number and processes the build.

Unfortunately, that breaks all non-PR builds (including ones scheduled by me as a part of release step).

This PR simply checks if such env variable is set and stops executing in case it's undefined.

Also, I have updated the order of the tests so that most important (unit tests) are no longer shadowed by temporary eslint and flow breakage. The reason for this change is that flow has been broken for ~20 days which shadowed breakage in unit tests (addressed in my other PR).

You can see build breaking before this change: https://circleci.com/gh/facebook/react-native/22391
And being green after: https://circleci.com/gh/facebook/react-native/22530
Closes https://github.com/facebook/react-native/pull/16302

Differential Revision: D6031348

Pulled By: hramos

fbshipit-source-id: f1127a87faa872f413e9fcb780bdc1d5d587de2c
2017-10-11 13:46:53 -07:00
Hector Ramos 8fa9984b11 Migrate to Circle 2.0
Summary:
Following the migration guide. Let's see what happens here.
Closes https://github.com/facebook/react-native/pull/14955

Differential Revision: D5877682

Pulled By: hramos

fbshipit-source-id: 2a40560120b5d8d28bc6c52cc5e5916fd1bba336
2017-09-21 14:01:30 -07:00