diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml deleted file mode 100644 index 86d96fc7468..00000000000 --- a/.azure-pipelines.yml +++ /dev/null @@ -1,133 +0,0 @@ -# -# Azure Pipelines configuration for building and testing create-react-app on Linux, Windows, and macOS. -# - -trigger: -- master - -variables: - # The following is needed because various tests and scripts look for the CI environment variable - CI: true - # The following sets TEMP to the same drive as the cloned source (on Windows); needed because some scripts "cd" into a temporary directory (this fails on Windows if the current directory is on a different drive) - VSTS_OVERWRITE_TEMP: True - # The following helps improve build performance on Windows by ensuring the Yarn and NPM caches are on the same drive as the cloned source and temp - YARN_CACHE_FOLDER: $(Build.SourcesDirectory)/../yarn-cache - NPM_CONFIG_CACHE: $(Build.SourcesDirectory)/../npm-cache - -# ****************************************************************************** -# Simple test suite -# ****************************************************************************** -jobs: -- job: Simple - strategy: - matrix: - LinuxNode8: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 8.x } - LinuxNode10: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 10.x } - MacNode8: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 8.x } - MacNode10: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 10.x } - WindowsNode8: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 8.x } - WindowsNode10: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 10.x } - pool: - vmImage: $(VM_IMAGE) - steps: - - template: .azure-pipelines-steps.yml - - bash: tasks/e2e-simple.sh - displayName: 'Run tests' - -# ****************************************************************************** -# Installs test suite -# ****************************************************************************** -- job: Installs - strategy: - matrix: - LinuxNode8: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 8.x } - LinuxNode10: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 10.x } - MacNode8: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 8.x } - MacNode10: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 10.x } - WindowsNode8: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 8.x } - WindowsNode10: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 10.x } - pool: - vmImage: $(VM_IMAGE) - steps: - - template: .azure-pipelines-steps.yml - - bash: tasks/e2e-installs.sh - displayName: 'Run tests' - -# ****************************************************************************** -# Kitchensink test suite -# ****************************************************************************** -- job: Kitchensink - strategy: - matrix: - LinuxNode8: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 8.x } - LinuxNode10: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 10.x } - MacNode8: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 8.x } - MacNode10: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 10.x } - WindowsNode8: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 8.x } - WindowsNode10: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 10.x } - pool: - vmImage: $(VM_IMAGE) - steps: - - template: .azure-pipelines-steps.yml - - bash: tasks/e2e-kitchensink.sh - displayName: 'Run tests' - -# ****************************************************************************** -# Kitchensink Eject test suite -# ****************************************************************************** -- job: KitchensinkEject - strategy: - matrix: - LinuxNode8: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 8.x } - LinuxNode10: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 10.x } - MacNode8: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 8.x } - MacNode10: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 10.x } - WindowsNode8: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 8.x } - WindowsNode10: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 10.x } - pool: - vmImage: $(VM_IMAGE) - steps: - - template: .azure-pipelines-steps.yml - - bash: tasks/e2e-kitchensink-eject.sh - displayName: 'Run tests' - -# ****************************************************************************** -# Behavior test suite -# ****************************************************************************** -- job: Behavior - strategy: - matrix: - LinuxNode8: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 8.x } - LinuxNode10: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 10.x } - MacNode8: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 8.x } - MacNode10: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 10.x } - WindowsNode8: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 8.x } - WindowsNode10: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 10.x } - pool: - vmImage: $(VM_IMAGE) - steps: - - template: .azure-pipelines-steps.yml - - bash: tasks/e2e-behavior.sh - displayName: 'Run tests' - -# ****************************************************************************** -# Old Node test suite -# ****************************************************************************** -- job: OldNode - strategy: - matrix: - LinuxNode6: - VM_IMAGE: 'ubuntu-16.04' - MacNode6: - VM_IMAGE: 'macOS-10.13' - WindowsNode6: - VM_IMAGE: 'vs2017-win2016' - pool: - vmImage: $(VM_IMAGE) - steps: - - task: NodeTool@0 - inputs: - versionSpec: 6.x - displayName: 'Install Node.js 6.x' - - bash: tasks/e2e-old-node.sh - displayName: 'Run tests' diff --git a/.azure-pipelines-steps.yml b/azure-pipelines-steps.yml similarity index 100% rename from .azure-pipelines-steps.yml rename to azure-pipelines-steps.yml diff --git a/azure-pipelines.yml b/azure-pipelines.yml index f2894295b66..04089625522 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -1,6 +1,133 @@ -pool: - vmImage: 'Ubuntu 16.04' - -steps: -- script: echo Hello world! - displayName: Say hello +# +# Azure Pipelines configuration for building and testing create-react-app on Linux, Windows, and macOS. +# + +trigger: +- master + +variables: + # The following is needed because various tests and scripts look for the CI environment variable + CI: true + # The following sets TEMP to the same drive as the cloned source (on Windows); needed because some scripts "cd" into a temporary directory (this fails on Windows if the current directory is on a different drive) + VSTS_OVERWRITE_TEMP: True + # The following helps improve build performance on Windows by ensuring the Yarn and NPM caches are on the same drive as the cloned source and temp + YARN_CACHE_FOLDER: $(Build.SourcesDirectory)/../yarn-cache + NPM_CONFIG_CACHE: $(Build.SourcesDirectory)/../npm-cache + +# ****************************************************************************** +# Simple test suite +# ****************************************************************************** +jobs: +- job: Simple + strategy: + matrix: + LinuxNode8: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 8.x } + LinuxNode10: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 10.x } + MacNode8: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 8.x } + MacNode10: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 10.x } + WindowsNode8: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 8.x } + WindowsNode10: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 10.x } + pool: + vmImage: $(VM_IMAGE) + steps: + - template: azure-pipelines-steps.yml + - bash: tasks/e2e-simple.sh + displayName: 'Run tests' + +# ****************************************************************************** +# Installs test suite +# ****************************************************************************** +- job: Installs + strategy: + matrix: + LinuxNode8: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 8.x } + LinuxNode10: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 10.x } + MacNode8: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 8.x } + MacNode10: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 10.x } + WindowsNode8: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 8.x } + WindowsNode10: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 10.x } + pool: + vmImage: $(VM_IMAGE) + steps: + - template: azure-pipelines-steps.yml + - bash: tasks/e2e-installs.sh + displayName: 'Run tests' + +# ****************************************************************************** +# Kitchensink test suite +# ****************************************************************************** +- job: Kitchensink + strategy: + matrix: + LinuxNode8: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 8.x } + LinuxNode10: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 10.x } + MacNode8: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 8.x } + MacNode10: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 10.x } + WindowsNode8: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 8.x } + WindowsNode10: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 10.x } + pool: + vmImage: $(VM_IMAGE) + steps: + - template: azure-pipelines-steps.yml + - bash: tasks/e2e-kitchensink.sh + displayName: 'Run tests' + +# ****************************************************************************** +# Kitchensink Eject test suite +# ****************************************************************************** +- job: KitchensinkEject + strategy: + matrix: + LinuxNode8: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 8.x } + LinuxNode10: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 10.x } + MacNode8: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 8.x } + MacNode10: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 10.x } + WindowsNode8: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 8.x } + WindowsNode10: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 10.x } + pool: + vmImage: $(VM_IMAGE) + steps: + - template: azure-pipelines-steps.yml + - bash: tasks/e2e-kitchensink-eject.sh + displayName: 'Run tests' + +# ****************************************************************************** +# Behavior test suite +# ****************************************************************************** +- job: Behavior + strategy: + matrix: + LinuxNode8: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 8.x } + LinuxNode10: { VM_IMAGE: 'ubuntu-16.04', NODE_VERSION: 10.x } + MacNode8: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 8.x } + MacNode10: { VM_IMAGE: 'macOS-10.13', NODE_VERSION: 10.x } + WindowsNode8: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 8.x } + WindowsNode10: { VM_IMAGE: 'vs2017-win2016', NODE_VERSION: 10.x } + pool: + vmImage: $(VM_IMAGE) + steps: + - template: azure-pipelines-steps.yml + - bash: tasks/e2e-behavior.sh + displayName: 'Run tests' + +# ****************************************************************************** +# Old Node test suite +# ****************************************************************************** +- job: OldNode + strategy: + matrix: + LinuxNode6: + VM_IMAGE: 'ubuntu-16.04' + MacNode6: + VM_IMAGE: 'macOS-10.13' + WindowsNode6: + VM_IMAGE: 'vs2017-win2016' + pool: + vmImage: $(VM_IMAGE) + steps: + - task: NodeTool@0 + inputs: + versionSpec: 6.x + displayName: 'Install Node.js 6.x' + - bash: tasks/e2e-old-node.sh + displayName: 'Run tests'