diff --git a/js/web/package.json b/js/web/package.json index c7d04227bd..ca512e1abf 100644 --- a/js/web/package.json +++ b/js/web/package.json @@ -22,6 +22,7 @@ "prepare": "tsc", "build:doc": "node ./script/generate-operator-md", "pull:wasm": "node ./script/pull-prebuilt-wasm-artifacts", + "pull:wasm:debug": "node ./script/pull-prebuilt-wasm-artifacts debug", "test:e2e": "node ./test/e2e/run", "build": "node ./script/build", "test": "tsc --build ../scripts && node ../scripts/prepare-onnx-node-tests && node ./script/test-runner-cli", diff --git a/js/web/script/pull-prebuilt-wasm-artifacts.ts b/js/web/script/pull-prebuilt-wasm-artifacts.ts index 8c2f24cbf7..454204a128 100644 --- a/js/web/script/pull-prebuilt-wasm-artifacts.ts +++ b/js/web/script/pull-prebuilt-wasm-artifacts.ts @@ -70,7 +70,10 @@ function extractFile(zip: jszip, folder: string, file: string, artifactName: str }); } -console.log('=== Start to pull WebAssembly artifacts from CI ==='); +const config = process.argv.indexOf('debug') ? 'debug' : 'release'; +const folderName = config === 'release' ? 'Release_wasm' : 'Debug_wasm'; + +console.log(`=== Start to pull ${config} WebAssembly artifacts from CI ===`); // API reference: https://docs.microsoft.com/en-us/rest/api/azure/devops/build/builds/list downloadJson( @@ -93,7 +96,7 @@ downloadJson( data => { let zipLink; for (const v of data.value) { - if (v.name === 'Release_wasm') { + if (v.name === folderName) { zipLink = v.resource.downloadUrl; } } @@ -108,18 +111,18 @@ downloadJson( downloadZip(zipLink, buffer => { void jszip.loadAsync(buffer).then(zip => { - extractFile(zip, WASM_FOLDER, 'ort-wasm.wasm', 'Release_wasm'); - extractFile(zip, WASM_FOLDER, 'ort-wasm-threaded.wasm', 'Release_wasm'); - extractFile(zip, WASM_FOLDER, 'ort-wasm-simd.wasm', 'Release_wasm'); - extractFile(zip, WASM_FOLDER, 'ort-wasm-simd-threaded.wasm', 'Release_wasm'); - extractFile(zip, WASM_FOLDER, 'ort-wasm-simd.jsep.wasm', 'Release_wasm'); - extractFile(zip, WASM_FOLDER, 'ort-wasm-simd-threaded.jsep.wasm', 'Release_wasm'); + extractFile(zip, WASM_FOLDER, 'ort-wasm.wasm', folderName); + extractFile(zip, WASM_FOLDER, 'ort-wasm-threaded.wasm', folderName); + extractFile(zip, WASM_FOLDER, 'ort-wasm-simd.wasm', folderName); + extractFile(zip, WASM_FOLDER, 'ort-wasm-simd-threaded.wasm', folderName); + extractFile(zip, WASM_FOLDER, 'ort-wasm-simd.jsep.wasm', folderName); + extractFile(zip, WASM_FOLDER, 'ort-wasm-simd-threaded.jsep.wasm', folderName); - extractFile(zip, JS_FOLDER, 'ort-wasm.js', 'Release_wasm'); - extractFile(zip, JS_FOLDER, 'ort-wasm-threaded.js', 'Release_wasm'); - extractFile(zip, JS_FOLDER, 'ort-wasm-threaded.worker.js', 'Release_wasm'); - extractFile(zip, JS_FOLDER, 'ort-wasm-simd.jsep.js', 'Release_wasm'); - extractFile(zip, JS_FOLDER, 'ort-wasm-simd-threaded.jsep.js', 'Release_wasm'); + extractFile(zip, JS_FOLDER, 'ort-wasm.js', folderName); + extractFile(zip, JS_FOLDER, 'ort-wasm-threaded.js', folderName); + extractFile(zip, JS_FOLDER, 'ort-wasm-threaded.worker.js', folderName); + extractFile(zip, JS_FOLDER, 'ort-wasm-simd.jsep.js', folderName); + extractFile(zip, JS_FOLDER, 'ort-wasm-simd-threaded.jsep.js', folderName); }); }); });