mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-05-18 21:21:17 +00:00
1. Upgrade nodejs from 16.x to 18.x for Windows pipelines 2. Avoid using Azure DevOps "NodeTool" on Linux. The tool installs nodejs from internet or local disk cache. But we already moved all Linux tests to docker. So we do not need the installer anymore. 3. Remove some other unused code.
98 lines
3.2 KiB
YAML
98 lines
3.2 KiB
YAML
parameters:
|
|
- name: CommitOverride
|
|
type: boolean
|
|
default: false
|
|
|
|
jobs:
|
|
- job: build_onnxruntime_web_browserstack
|
|
pool: Onnxruntime-BrowserStack-for-Web
|
|
timeoutInMinutes: 30
|
|
workspace:
|
|
clean: all
|
|
steps:
|
|
- checkout: self
|
|
submodules: false
|
|
- task: DownloadPipelineArtifact@2
|
|
inputs:
|
|
artifact: '__commit'
|
|
path: $(Pipeline.Workspace)
|
|
displayName: 'Get commit SHA'
|
|
condition: eq('${{ parameters.CommitOverride }}', 'true')
|
|
- script: |
|
|
__commit__=$(<$(Pipeline.Workspace)/__commit.txt)
|
|
__commit__=${__commit__//[$'\t\r\n']}
|
|
git fetch origin $__commit__:refs/remotes/origin/$__commit__
|
|
git checkout --force $__commit__
|
|
workingDirectory: '$(Build.SourcesDirectory)'
|
|
displayName: 'Read commit SHA and checkout'
|
|
condition: eq('${{ parameters.CommitOverride }}', 'true')
|
|
|
|
- task: NodeTool@0
|
|
inputs:
|
|
versionSpec: '18.x'
|
|
- task: DownloadPipelineArtifact@2
|
|
inputs:
|
|
patterns: 'Release_*/**/*'
|
|
path: $(Pipeline.Workspace)/artifacts
|
|
displayName: 'Download WebAssembly artifacts'
|
|
- task: CopyFiles@2
|
|
inputs:
|
|
sourceFolder: $(Pipeline.Workspace)/artifacts
|
|
contents: |
|
|
**/*.wasm
|
|
targetFolder: $(Build.SourcesDirectory)/js/web/dist
|
|
flattenFolders: true
|
|
displayName: 'Binplace dist files'
|
|
- task: CopyFiles@2
|
|
inputs:
|
|
sourceFolder: $(Pipeline.Workspace)/artifacts
|
|
contents: |
|
|
**/*.js
|
|
targetFolder: $(Build.SourcesDirectory)/js/web/lib/wasm/binding
|
|
flattenFolders: true
|
|
displayName: 'Binplace js files'
|
|
- script: |
|
|
npm ci
|
|
workingDirectory: '$(Build.SourcesDirectory)/js'
|
|
displayName: 'npm ci /js/'
|
|
- script: |
|
|
npm ci
|
|
workingDirectory: '$(Build.SourcesDirectory)/js/common'
|
|
displayName: 'npm ci /js/common/'
|
|
- script: |
|
|
npm ci
|
|
workingDirectory: '$(Build.SourcesDirectory)/js/web'
|
|
displayName: 'npm ci /js/web/'
|
|
- task: BrowserStackConfig@0
|
|
inputs:
|
|
BrowserStackServiceEndPoint: 'BrowserStack Connection'
|
|
browserstackLocal: true
|
|
displayName: 'BrowserStack configuration setup'
|
|
timeoutInMinutes: 20
|
|
- script: |
|
|
export ORT_WEB_TEST_BS_BROWSERS=BS_MAC_11_Safari_14,BS_MAC_11_Chrome_91,BS_ANDROID_11_Pixel_5
|
|
npm test -- suite0 --env=bs --wasm-init-timeout=30000 --file-cache
|
|
workingDirectory: '$(Build.SourcesDirectory)/js/web'
|
|
displayName: 'npm test (Suite0, BS_ANDROID, BS_MAC)'
|
|
env:
|
|
BROWSERSTACK_ACCESS_KEY: $(BROWSERSTACK_ACCESS_KEY)
|
|
BROWSERSTACK_USERNAME: $(BROWSERSTACK_USERNAME)
|
|
continueOnError: true
|
|
- script: |
|
|
export ORT_WEB_TEST_BS_BROWSERS=BS_IOS_14_iPhoneXS
|
|
npm test -- suite1 --env=bs --wasm-init-timeout=30000 --file-cache --backend=wasm
|
|
workingDirectory: '$(Build.SourcesDirectory)/js/web'
|
|
displayName: 'npm test (Suite1, BS_IOS)'
|
|
continueOnError: true
|
|
env:
|
|
BROWSERSTACK_ACCESS_KEY: $(BROWSERSTACK_ACCESS_KEY)
|
|
BROWSERSTACK_USERNAME: $(BROWSERSTACK_USERNAME)
|
|
- task: BrowserStackStopLocal@0
|
|
- task: BrowserStackResults@0
|
|
displayName: 'BrowserStack results'
|
|
continueOnError: true
|
|
timeoutInMinutes: 10
|
|
- task: mspremier.PostBuildCleanup.PostBuildCleanup-task.PostBuildCleanup@3
|
|
displayName: 'Clean Agent Directories'
|
|
condition: always()
|
|
|