93 lines
2.6 KiB
YAML
93 lines
2.6 KiB
YAML
|
steps:
|
||
|
- script: |
|
||
|
set -e
|
||
|
sudo apt-get update
|
||
|
sudo apt-get install -y libxkbfile-dev pkg-config libsecret-1-dev libxss1 dbus xvfb libgtk-3-0
|
||
|
sudo cp build/azure-pipelines/linux/xvfb.init /etc/init.d/xvfb
|
||
|
sudo chmod +x /etc/init.d/xvfb
|
||
|
sudo update-rc.d xvfb defaults
|
||
|
sudo service xvfb start
|
||
|
|
||
|
- task: NodeTool@0
|
||
|
inputs:
|
||
|
versionSpec: "12.14.1"
|
||
|
|
||
|
- task: geeklearningio.gl-vsts-tasks-yarn.yarn-installer-task.YarnInstaller@2
|
||
|
inputs:
|
||
|
versionSpec: "1.x"
|
||
|
|
||
|
- task: 1ESLighthouseEng.PipelineArtifactCaching.RestoreCacheV1.RestoreCache@1
|
||
|
inputs:
|
||
|
keyfile: '.yarnrc, remote/.yarnrc, **/yarn.lock, !**/node_modules/**/yarn.lock, !**/.*/**/yarn.lock'
|
||
|
targetfolder: '**/node_modules, !**/node_modules/**/node_modules'
|
||
|
vstsFeed: 'vscode-build-cache'
|
||
|
|
||
|
- script: |
|
||
|
CHILD_CONCURRENCY=1 yarn --frozen-lockfile
|
||
|
displayName: Install Dependencies
|
||
|
condition: and(succeeded(), ne(variables['CacheRestored'], 'true'))
|
||
|
|
||
|
- task: 1ESLighthouseEng.PipelineArtifactCaching.SaveCacheV1.SaveCache@1
|
||
|
inputs:
|
||
|
keyfile: '.yarnrc, remote/.yarnrc, **/yarn.lock, !**/node_modules/**/yarn.lock, !**/.*/**/yarn.lock'
|
||
|
targetfolder: '**/node_modules, !**/node_modules/**/node_modules'
|
||
|
vstsFeed: 'vscode-build-cache'
|
||
|
condition: and(succeeded(), ne(variables['CacheRestored'], 'true'))
|
||
|
|
||
|
- script: |
|
||
|
set -e
|
||
|
yarn postinstall
|
||
|
displayName: Run postinstall scripts
|
||
|
condition: and(succeeded(), eq(variables['CacheRestored'], 'true'))
|
||
|
|
||
|
- script: |
|
||
|
yarn electron x64
|
||
|
displayName: Download Electron
|
||
|
|
||
|
- script: |
|
||
|
yarn gulp hygiene
|
||
|
displayName: Run Hygiene Checks
|
||
|
|
||
|
- script: |
|
||
|
yarn monaco-compile-check
|
||
|
displayName: Run Monaco Editor Checks
|
||
|
|
||
|
- script: |
|
||
|
yarn valid-layers-check
|
||
|
displayName: Run Valid Layers Checks
|
||
|
|
||
|
- script: |
|
||
|
yarn compile
|
||
|
displayName: Compile Sources
|
||
|
|
||
|
- script: |
|
||
|
yarn download-builtin-extensions
|
||
|
displayName: Download Built-in Extensions
|
||
|
|
||
|
- script: |
|
||
|
DISPLAY=:10 ./scripts/test.sh --tfs "Unit Tests"
|
||
|
displayName: Run Unit Tests (Electron)
|
||
|
|
||
|
- script: |
|
||
|
DISPLAY=:10 yarn test-browser --browser chromium --tfs "Browser Unit Tests"
|
||
|
displayName: Run Unit Tests (Browser)
|
||
|
|
||
|
- script: |
|
||
|
DISPLAY=:10 ./scripts/test-integration.sh --tfs "Integration Tests"
|
||
|
displayName: Run Integration Tests (Electron)
|
||
|
|
||
|
- task: PublishPipelineArtifact@0
|
||
|
inputs:
|
||
|
artifactName: crash-dump-linux
|
||
|
targetPath: .build/crashes
|
||
|
displayName: 'Publish Crash Reports'
|
||
|
continueOnError: true
|
||
|
condition: failed()
|
||
|
|
||
|
- task: PublishTestResults@2
|
||
|
displayName: Publish Tests Results
|
||
|
inputs:
|
||
|
testResultsFiles: '*-results.xml'
|
||
|
searchFolder: '$(Build.ArtifactStagingDirectory)/test-results'
|
||
|
condition: succeededOrFailed()
|