056ab7918f
Reverts vercel/next.js#51406 This pnpm bump seems to be causing lockfile issues with the react versions which causes context issues since we need to share the same react version in the monorepo.
181 lines
6 KiB
YAML
181 lines
6 KiB
YAML
trigger:
|
|
# Only run latest commit for branches:
|
|
batch: true
|
|
# Do not run Azure CI for docs-only/example-only changes:
|
|
paths:
|
|
include:
|
|
- '*'
|
|
exclude:
|
|
- bench
|
|
- docs
|
|
- errors
|
|
- examples
|
|
# Do not run Azure on `canary`, `main`, or release tags. This unnecessarily
|
|
# increases the backlog, and the change was already tested on the PR.
|
|
branches:
|
|
include:
|
|
- '*'
|
|
exclude:
|
|
- canary
|
|
- main
|
|
- refs/tags/*
|
|
|
|
pr:
|
|
# Do not run Azure CI for docs-only/example-only changes:
|
|
paths:
|
|
include:
|
|
- '*'
|
|
exclude:
|
|
- bench
|
|
- docs
|
|
- errors
|
|
- examples
|
|
|
|
variables:
|
|
PNPM_CACHE_FOLDER: $(Pipeline.Workspace)/.pnpm-store
|
|
PNPM_VERSION: 7.24.3
|
|
NEXT_TELEMETRY_DISABLED: '1'
|
|
node_16_version: ^16.8.0
|
|
|
|
stages:
|
|
- stage: Test
|
|
jobs:
|
|
- job: test_integration
|
|
pool:
|
|
vmImage: 'windows-2019'
|
|
steps:
|
|
- task: NodeTool@0
|
|
inputs:
|
|
versionSpec: $(node_16_version)
|
|
displayName: 'Install Node.js'
|
|
|
|
- bash: |
|
|
node scripts/run-for-change.js --not --type docs --exec echo "##vso[task.setvariable variable=isDocsOnly]No"
|
|
displayName: 'Check Docs Only Change'
|
|
|
|
- script: npm i -g pnpm@$(PNPM_VERSION)
|
|
condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
- script: pnpm config set store-dir $(PNPM_CACHE_FOLDER)
|
|
condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
- script: pnpm store path
|
|
condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
- script: pnpm install && pnpm run build
|
|
condition: eq(variables['isDocsOnly'], 'No')
|
|
displayName: 'Install and build'
|
|
|
|
- script: npx playwright@1.28.1 install chromium
|
|
condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
- script: |
|
|
node run-tests.js -c 1 test/integration/production/test/index.test.js test/integration/css-client-nav/test/index.test.js test/integration/rewrites-has-condition/test/index.test.js
|
|
condition: eq(variables['isDocsOnly'], 'No')
|
|
displayName: 'Run tests'
|
|
|
|
- job: test_unit
|
|
pool:
|
|
vmImage: 'windows-2019'
|
|
steps:
|
|
- script: |
|
|
wmic datafile where name="C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe" get Version /value
|
|
displayName: 'List Chrome version'
|
|
|
|
- task: NodeTool@0
|
|
inputs:
|
|
versionSpec: $(node_16_version)
|
|
displayName: 'Install Node.js'
|
|
|
|
- bash: |
|
|
node scripts/run-for-change.js --not --type docs --exec echo "##vso[task.setvariable variable=isDocsOnly]No"
|
|
displayName: 'Check Docs Only Change'
|
|
|
|
- script: npm i -g pnpm@$(PNPM_VERSION)
|
|
condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
- script: pnpm config set store-dir $(PNPM_CACHE_FOLDER)
|
|
condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
- script: pnpm store path
|
|
condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
- script: pnpm install && pnpm run build
|
|
condition: eq(variables['isDocsOnly'], 'No')
|
|
displayName: 'Install and build'
|
|
|
|
- script: node run-tests.js --type unit
|
|
condition: eq(variables['isDocsOnly'], 'No')
|
|
displayName: 'Run tests'
|
|
|
|
# - job: test_e2e_dev
|
|
# pool:
|
|
# vmImage: 'windows-2019'
|
|
# steps:
|
|
# - task: NodeTool@0
|
|
# inputs:
|
|
# versionSpec: $(node_16_version)
|
|
# displayName: 'Install Node.js'
|
|
|
|
# - bash: |
|
|
# node scripts/run-for-change.js --not --type docs --exec echo "##vso[task.setvariable variable=isDocsOnly]No"
|
|
# displayName: 'Check Docs Only Change'
|
|
|
|
# - script: npm i -g pnpm@$(PNPM_VERSION)
|
|
# condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
# - script: pnpm config set store-dir $(PNPM_CACHE_FOLDER)
|
|
# condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
# - script: pnpm store path
|
|
# condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
# - script: pnpm install && pnpm run build
|
|
# condition: eq(variables['isDocsOnly'], 'No')
|
|
# displayName: 'Install and build'
|
|
|
|
# - script: npx playwright@1.28.1 install chromium
|
|
# condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
# - script: |
|
|
# node run-tests.js -c 1 --debug test/e2e/app-dir/app/index.test.ts
|
|
# condition: eq(variables['isDocsOnly'], 'No')
|
|
# displayName: 'Run tests (E2E Development)'
|
|
# env:
|
|
# NEXT_TEST_MODE: 'dev'
|
|
|
|
# - job: test_e2e_prod
|
|
# pool:
|
|
# vmImage: 'windows-2019'
|
|
# steps:
|
|
# - task: NodeTool@0
|
|
# inputs:
|
|
# versionSpec: $(node_16_version)
|
|
# displayName: 'Install Node.js'
|
|
|
|
# - bash: |
|
|
# node scripts/run-for-change.js --not --type docs --exec echo "##vso[task.setvariable variable=isDocsOnly]No"
|
|
# displayName: 'Check Docs Only Change'
|
|
|
|
# - script: npm i -g pnpm@$(PNPM_VERSION)
|
|
# condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
# - script: pnpm config set store-dir $(PNPM_CACHE_FOLDER)
|
|
# condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
# - script: pnpm store path
|
|
# condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
# - script: pnpm install && pnpm run build
|
|
# condition: eq(variables['isDocsOnly'], 'No')
|
|
# displayName: 'Install and build'
|
|
|
|
# - script: npx playwright@1.28.1 install chromium
|
|
# condition: eq(variables['isDocsOnly'], 'No')
|
|
|
|
# - script: |
|
|
# node run-tests.js -c 1 --debug test/e2e/app-dir/app/index.test.ts
|
|
# condition: eq(variables['isDocsOnly'], 'No')
|
|
# displayName: 'Run tests (E2E Production)'
|
|
# env:
|
|
# NEXT_TEST_MODE: 'start'
|