feat(repo): add nightly tests for several node versions (#15908)
This commit is contained in:
parent
15f6714ab0
commit
ae3a55fbf7
147
.github/workflows/e2e-matrix.yml
vendored
147
.github/workflows/e2e-matrix.yml
vendored
@ -20,6 +20,18 @@ jobs:
|
|||||||
os:
|
os:
|
||||||
- ubuntu-latest
|
- ubuntu-latest
|
||||||
- macos-latest
|
- macos-latest
|
||||||
|
node_version:
|
||||||
|
- 19
|
||||||
|
- 18
|
||||||
|
- 16
|
||||||
|
exclude:
|
||||||
|
# run just node v18 on macos
|
||||||
|
- os: macos-latest
|
||||||
|
node_version: 19
|
||||||
|
- os: macos-latest
|
||||||
|
node_version: 16
|
||||||
|
|
||||||
|
name: Cache install (${{ matrix.os }}, node v${{ matrix.node_version }})
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
@ -27,14 +39,15 @@ jobs:
|
|||||||
- name: Set node
|
- name: Set node
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
node-version: 16
|
node-version: ${{ matrix.node_version }}
|
||||||
|
|
||||||
- name: Cache node_modules
|
- name: Cache node_modules
|
||||||
id: cache-modules
|
id: cache-modules
|
||||||
uses: actions/cache@v3
|
uses: actions/cache@v3
|
||||||
with:
|
with:
|
||||||
|
lookup-only: true
|
||||||
path: '**/node_modules'
|
path: '**/node_modules'
|
||||||
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }}
|
key: ${{ runner.os }}-modules-${{ matrix.node_version }}-${{ hashFiles('**/yarn.lock') }}
|
||||||
|
|
||||||
- name: Install packages
|
- name: Install packages
|
||||||
if: steps.cache-modules.outputs.cache-hit != 'true'
|
if: steps.cache-modules.outputs.cache-hit != 'true'
|
||||||
@ -51,7 +64,9 @@ jobs:
|
|||||||
- ubuntu-latest
|
- ubuntu-latest
|
||||||
- macos-latest
|
- macos-latest
|
||||||
node_version:
|
node_version:
|
||||||
- '16'
|
- 19
|
||||||
|
- 18
|
||||||
|
- 16
|
||||||
package_manager:
|
package_manager:
|
||||||
- npm
|
- npm
|
||||||
- yarn
|
- yarn
|
||||||
@ -85,7 +100,7 @@ jobs:
|
|||||||
- e2e-vite
|
- e2e-vite
|
||||||
- e2e-webpack
|
- e2e-webpack
|
||||||
- e2e-workspace-create
|
- e2e-workspace-create
|
||||||
- e2e-e2e-workspace-create-npm
|
- e2e-workspace-create-npm
|
||||||
include:
|
include:
|
||||||
# os short names
|
# os short names
|
||||||
- os: ubuntu-latest
|
- os: ubuntu-latest
|
||||||
@ -149,7 +164,7 @@ jobs:
|
|||||||
codeowners: 'S04SJ6PL98X'
|
codeowners: 'S04SJ6PL98X'
|
||||||
- project: e2e-workspace-create
|
- project: e2e-workspace-create
|
||||||
codeowners: 'S04SYHYKGNP'
|
codeowners: 'S04SYHYKGNP'
|
||||||
- project: e2e-e2e-workspace-create-npm
|
- project: e2e-workspace-create-npm
|
||||||
codeowners: 'S04SYHYKGNP'
|
codeowners: 'S04SYHYKGNP'
|
||||||
exclude:
|
exclude:
|
||||||
# exclude react-native tests from ubuntu
|
# exclude react-native tests from ubuntu
|
||||||
@ -159,14 +174,123 @@ jobs:
|
|||||||
project: e2e-detox
|
project: e2e-detox
|
||||||
- os: ubuntu-latest
|
- os: ubuntu-latest
|
||||||
project: e2e-expo
|
project: e2e-expo
|
||||||
# run just npm v16 on macos
|
# exclude non-CNW/Lerna tests from non-LTS node versions
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-add-nx-to-monorepo
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-angular-core
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-angular-extensions
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-cra-to-nx
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-cypress
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-detox
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-esbuild
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-expo
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-jest
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-js
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-linter
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-make-angular-cli-faster
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-next
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-node
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-nx-init
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-nx-misc
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-nx-plugin
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-lerna-smoke-tests
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-react
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-react-native
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-web
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-rollup
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-storybook
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-storybook-angular
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-vite
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-webpack
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-add-nx-to-monorepo
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-angular-core
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-angular-extensions
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-cra-to-nx
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-cypress
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-detox
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-esbuild
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-expo
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-jest
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-js
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-linter
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-make-angular-cli-faster
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-next
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-node
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-nx-init
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-nx-misc
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-nx-plugin
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-lerna-smoke-tests
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-react
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-react-native
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-web
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-rollup
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-storybook
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-storybook-angular
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-vite
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-webpack
|
||||||
|
# run just npm v18 on macos
|
||||||
- os: macos-latest
|
- os: macos-latest
|
||||||
package_manager: yarn
|
package_manager: yarn
|
||||||
- os: macos-latest
|
- os: macos-latest
|
||||||
package_manager: pnpm
|
package_manager: pnpm
|
||||||
|
- os: macos-latest
|
||||||
|
node_version: 16
|
||||||
|
- os: macos-latest
|
||||||
|
node_version: 19
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
|
|
||||||
name: ${{ matrix.os_name }}/${{ matrix.package_manager }} ${{ join(matrix.project) }}
|
name: ${{ matrix.os_name }}/${{ matrix.package_manager }}/${{ matrix.node_version }} ${{ join(matrix.project) }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
@ -191,7 +315,7 @@ jobs:
|
|||||||
uses: actions/cache@v3
|
uses: actions/cache@v3
|
||||||
with:
|
with:
|
||||||
path: '**/node_modules'
|
path: '**/node_modules'
|
||||||
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }}
|
key: ${{ runner.os }}-modules-${{ matrix.node_version }}-${{ hashFiles('**/yarn.lock') }}
|
||||||
|
|
||||||
- name: Install packages
|
- name: Install packages
|
||||||
if: steps.cache-modules.outputs.cache-hit != 'true'
|
if: steps.cache-modules.outputs.cache-hit != 'true'
|
||||||
@ -318,13 +442,12 @@ jobs:
|
|||||||
// message
|
// message
|
||||||
let lastProject;
|
let lastProject;
|
||||||
let result = `
|
let result = `
|
||||||
**Node** v16
|
|
||||||
\`\`\`
|
\`\`\`
|
||||||
| Failed project | PM | OS |
|
| Failed project | PM | OS | Node |
|
||||||
|--------------------------------|------|-------|`;
|
|--------------------------------|------|-------|------|`;
|
||||||
failedProjects.forEach(matrix => {
|
failedProjects.forEach(matrix => {
|
||||||
const project = matrix.project !== lastProject ? matrix.project : '...';
|
const project = matrix.project !== lastProject ? matrix.project : '...';
|
||||||
result += `\n| ${project.padEnd(30)} | ${matrix.package_manager.padEnd(4)} | ${matrix.os_name} |`
|
result += `\n| ${project.padEnd(30)} | ${matrix.package_manager.padEnd(4)} | ${matrix.os_name} | v${matrix.node_version.pad(3)} |`
|
||||||
lastProject = matrix.project;
|
lastProject = matrix.project;
|
||||||
});
|
});
|
||||||
result += `\`\`\``;
|
result += `\`\`\``;
|
||||||
|
|||||||
129
.github/workflows/e2e-windows.yml
vendored
129
.github/workflows/e2e-windows.yml
vendored
@ -15,6 +15,14 @@ permissions: {}
|
|||||||
jobs:
|
jobs:
|
||||||
preinstall:
|
preinstall:
|
||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
node_version:
|
||||||
|
- 19
|
||||||
|
- 18
|
||||||
|
- 16
|
||||||
|
|
||||||
|
name: Cache install (node v${{ matrix.node_version }})
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
@ -22,14 +30,14 @@ jobs:
|
|||||||
- name: Set node
|
- name: Set node
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
node-version: 16
|
node-version: ${{ matrix.node_version }}
|
||||||
|
|
||||||
- name: Cache node_modules
|
- name: Cache node_modules
|
||||||
id: cache-modules
|
id: cache-modules
|
||||||
uses: actions/cache@v3
|
uses: actions/cache@v3
|
||||||
with:
|
with:
|
||||||
path: '**/node_modules'
|
path: '**/node_modules'
|
||||||
key: windows-modules-${{ hashFiles('**/yarn.lock') }}
|
key: windows-modules-${{ matrix.node_version }}-${{ hashFiles('**/yarn.lock') }}
|
||||||
|
|
||||||
- name: Install packages
|
- name: Install packages
|
||||||
if: steps.cache-modules.outputs.cache-hit != 'true'
|
if: steps.cache-modules.outputs.cache-hit != 'true'
|
||||||
@ -44,7 +52,9 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
node_version:
|
node_version:
|
||||||
- '16'
|
- 19
|
||||||
|
- 18
|
||||||
|
- 16
|
||||||
package_manager:
|
package_manager:
|
||||||
- npm
|
- npm
|
||||||
project:
|
project:
|
||||||
@ -73,7 +83,7 @@ jobs:
|
|||||||
- e2e-vite
|
- e2e-vite
|
||||||
- e2e-webpack
|
- e2e-webpack
|
||||||
- e2e-workspace-create
|
- e2e-workspace-create
|
||||||
- e2e-e2e-workspace-create-npm
|
- e2e-workspace-create-npm
|
||||||
include:
|
include:
|
||||||
# codeowner groups
|
# codeowner groups
|
||||||
- project: e2e-add-nx-to-monorepo
|
- project: e2e-add-nx-to-monorepo
|
||||||
@ -126,11 +136,105 @@ jobs:
|
|||||||
codeowners: 'S04SJ6PL98X'
|
codeowners: 'S04SJ6PL98X'
|
||||||
- project: e2e-workspace-create
|
- project: e2e-workspace-create
|
||||||
codeowners: 'S04SYHYKGNP'
|
codeowners: 'S04SYHYKGNP'
|
||||||
- project: e2e-e2e-workspace-create-npm
|
- project: e2e-workspace-create-npm
|
||||||
codeowners: 'S04SYHYKGNP'
|
codeowners: 'S04SYHYKGNP'
|
||||||
|
exclude:
|
||||||
|
# exclude non-CNW/Lerna tests from non-LTS node versions
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-add-nx-to-monorepo
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-angular-core
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-angular-extensions
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-cra-to-nx
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-cypress
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-esbuild
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-jest
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-js
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-linter
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-make-angular-cli-faster
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-next
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-node
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-nx-init
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-nx-misc
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-nx-plugin
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-lerna-smoke-tests
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-react
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-web
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-rollup
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-storybook
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-storybook-angular
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-vite
|
||||||
|
- node_version: 16
|
||||||
|
project: e2e-webpack
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-add-nx-to-monorepo
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-angular-core
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-angular-extensions
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-cra-to-nx
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-cypress
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-esbuild
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-jest
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-js
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-linter
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-make-angular-cli-faster
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-next
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-node
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-nx-init
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-nx-misc
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-nx-plugin
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-lerna-smoke-tests
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-react
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-web
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-rollup
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-storybook
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-storybook-angular
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-vite
|
||||||
|
- node_version: 19
|
||||||
|
project: e2e-webpack
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
|
|
||||||
name: ${{ matrix.project }}
|
name: ${{ matrix.project }} (v${{ matrix.node_version }})
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
@ -149,7 +253,7 @@ jobs:
|
|||||||
uses: actions/cache@v3
|
uses: actions/cache@v3
|
||||||
with:
|
with:
|
||||||
path: '**/node_modules'
|
path: '**/node_modules'
|
||||||
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }}
|
key: ${{ runner.os }}-modules-${{ matrix.node_version }}-${{ hashFiles('**/yarn.lock') }}
|
||||||
|
|
||||||
- name: Install packages
|
- name: Install packages
|
||||||
if: steps.cache-modules.outputs.cache-hit != 'true'
|
if: steps.cache-modules.outputs.cache-hit != 'true'
|
||||||
@ -245,14 +349,13 @@ jobs:
|
|||||||
|
|
||||||
// message
|
// message
|
||||||
let result = `
|
let result = `
|
||||||
**Node** v16
|
*OS* Windows
|
||||||
**OS** Windows
|
*Package manager* npm
|
||||||
**Package manager** npm
|
|
||||||
\`\`\`
|
\`\`\`
|
||||||
| Failed project |
|
| Failed project | Node |
|
||||||
|--------------------------------|`;
|
|--------------------------------|------|`;
|
||||||
failedProjects.forEach(matrix => {
|
failedProjects.forEach(matrix => {
|
||||||
result += `\n| ${matrix.project.padEnd(30)} |`
|
result += `\n| ${matrix.project.padEnd(30)} | v${matrix.node_version.pad(3)} |`
|
||||||
});
|
});
|
||||||
result += `\`\`\``;
|
result += `\`\`\``;
|
||||||
const message = result.split('\n').map(l => l.trim()).join('\n');
|
const message = result.split('\n').map(l => l.trim()).join('\n');
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user