diff --git a/.github/workflows/e2e-nm-react-native-workflow.yml b/.github/workflows/e2e-nm-react-native-workflow.yml new file mode 100644 index 000000000000..280f9807f03d --- /dev/null +++ b/.github/workflows/e2e-nm-react-native-workflow.yml @@ -0,0 +1,56 @@ +on: + schedule: + - cron: '0 */4 * * *' + push: + branches: + - master + paths: + - .github/actions/prepare/action.yml + - .github/workflows/e2e-nm-react-native-workflow.yml + - scripts/e2e-setup-ci.sh + - packages/yarnpkg-nm/sources/hoist.ts + - packages/yarnpkg-nm/sources/buildNodeModulesTree.ts + - packages/plugin-nm/sources/NodeModulesLinker.ts + pull_request: + paths: + - .github/actions/prepare/action.yml + - .github/workflows/e2e-nm-react-native-workflow.yml + - scripts/e2e-setup-ci.sh + - packages/yarnpkg-nm/sources/hoist.ts + - packages/yarnpkg-nm/sources/buildNodeModulesTree.ts + - packages/plugin-nm/sources/NodeModulesLinker.ts + +name: 'E2E NM React Native' +jobs: + chore: + strategy: + matrix: + platform: + - ubuntu-latest + - windows-latest + + name: 'Validating React Native install via node-modules linker on ${{matrix.platform}}' + runs-on: ${{matrix.platform}} + + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '17' + + - uses: ./.github/actions/prepare + + - name: 'Running the integration test' + run: | + source scripts/e2e-setup-ci.sh nm + + yarn dlx @react-native-community/cli init MyProject + cd MyProject + yarn react-native build-android + + shell: bash + env: + YARN_ENABLE_GLOBAL_CACHE: true + YARN_COMPRESSION_LEVEL: 0 diff --git a/README.md b/README.md index 615fd4d34a0b..345425c39e16 100644 --- a/README.md +++ b/README.md @@ -150,6 +150,7 @@ On top of our classic integration tests, we also run Yarn every day against the - [![](https://github.com/yarnpkg/berry/actions/workflows/e2e-nm-angular-workflow.yml/badge.svg?event=schedule)](https://github.com/yarnpkg/berry/actions/workflows/e2e-nm-angular-workflow.yml) - [![](https://github.com/yarnpkg/berry/actions/workflows/e2e-nm-babel-workflow.yml/badge.svg?event=schedule)](https://github.com/yarnpkg/berry/actions/workflows/e2e-nm-babel-workflow.yml) - [![](https://github.com/yarnpkg/berry/actions/workflows/e2e-nm-berry-workflow.yml/badge.svg?event=schedule)](https://github.com/yarnpkg/berry/actions/workflows/e2e-nm-berry-workflow.yml) +- [![](https://github.com/yarnpkg/berry/actions/workflows/e2e-nm-react-native-workflow.yml/badge.svg?event=schedule)](https://github.com/yarnpkg/berry/actions/workflows/e2e-nm-react-native-workflow.yml) - [![](https://github.com/yarnpkg/berry/actions/workflows/e2e-nyc-workflow.yml/badge.svg?event=schedule)](https://github.com/yarnpkg/berry/actions/workflows/e2e-nyc-workflow.yml) - [![](https://github.com/yarnpkg/berry/actions/workflows/e2e-parcel-workflow.yml/badge.svg?event=schedule)](https://github.com/yarnpkg/berry/actions/workflows/e2e-parcel-workflow.yml) - [![](https://github.com/yarnpkg/berry/actions/workflows/e2e-pnp-angular-workflow.yml/badge.svg?event=schedule)](https://github.com/yarnpkg/berry/actions/workflows/e2e-pnp-angular-workflow.yml)