@@ -28,29 +28,22 @@ jobs:
2828 repository : SamuelMarks/cdd-web-ui
2929 path : cdd-web-ui
3030
31- - name : Checkout cdd-docs-ui
31+ - name : Checkout cdd-browser-sdk
3232 uses : actions/checkout@v7
3333 with :
34- repository : SamuelMarks/cdd-docs-ui
35- path : cdd-docs-ui
34+ repository : SamuelMarks/cdd-browser-sdk
35+ path : cdd-browser-sdk
3636
37- - name : Checkout cdd-ctl
38- uses : actions/checkout@v7
39- with :
40- repository : SamuelMarks/cdd-ctl
41- path : cdd-ctl
42-
43- - name : Checkout cdd-openapi-test-harness
37+ - name : Checkout cdd-docs-ui
4438 uses : actions/checkout@v7
4539 with :
46- repository : SamuelMarks/cdd-openapi-test-harness
47- path : cdd-openapi-test-harness
48- submodules : recursive
40+ repository : SamuelMarks/cdd-docs-ui
41+ path : cdd-docs-ui
4942
5043 - name : Setup Node.js
5144 uses : actions/setup-node@v7
5245 with :
53- node-version : 20
46+ node-version : ' lts/* '
5447
5548 - name : Validate and Test Main Site (offscale.github.io)
5649 working-directory : ./main-site
@@ -63,68 +56,34 @@ jobs:
6356 - name : Install Binaryen
6457 run : sudo apt-get update && sudo apt-get install -y binaryen
6558
66- - name : Build cdd-java-cli
67- working-directory : ./cdd-openapi-test-harness/cdd-java
59+ - name : Build cdd-browser-sdk
60+ working-directory : ./cdd-browser-sdk
6861 run : |
69- git checkout master
70- git pull origin master
71- cd package
72- npm install --ignore-scripts
73- npm run build
74-
75- - name : Build WASM SDK
76- working-directory : ./cdd-ctl/cdd-ctl-wasm-sdk
77- run : |
78- npm install --ignore-scripts
62+ npm ci --ignore-scripts
7963 npm run build
8064
81- - name : Fetch and Optimize WASM Binaries
82- working-directory : ./cdd-ctl
83- run : |
84- chmod +x ./scripts/fetch_wasm.sh
85- ./scripts/fetch_wasm.sh
86-
87- mkdir -p ./optimized-wasm
88- for wasm_file in cdd-ctl-wasm-sdk/assets/wasm/*.wasm; do
89- filename=$(basename "$wasm_file")
90- echo "Optimizing $filename..."
91- wasm-opt -O3 "$wasm_file" -o "./optimized-wasm/$filename" || cp "$wasm_file" "./optimized-wasm/$filename"
92- done
93-
94- # Download JS Wrappers and C# Zip with explicit failure reporting and retries
95- curl -fsSL --retry 3 -o ./optimized-wasm/cdd-ts.js "https://github.com/offscale/cdd-ts/releases/latest/download/cdd-ts.js"
96- curl -fsSL --retry 3 -o ./optimized-wasm/cdd-ts-javy.wasm "https://github.com/offscale/cdd-ts/releases/latest/download/cdd-ts-javy.wasm"
97- curl -fsSL --retry 3 -o ./optimized-wasm/cdd-java.js "https://github.com/SamuelMarks/cdd-java/releases/latest/download/cdd-java.js"
98- curl -fsSL --retry 3 -o ./cdd-csharp-wasm.zip "https://github.com/SamuelMarks/cdd-csharp/releases/latest/download/cdd-csharp-wasm.zip"
99- curl -fsSL --retry 3 -o ./optimized-wasm/openapi_python_client-0.0.1-py3-none-any.whl "https://github.com/offscale/cdd-python-all/releases/latest/download/openapi_python_client-0.0.1-py3-none-any.whl"
100-
101- # Enable python-all, java, and ts in wasm-support.json only after verifying downloads succeeded
102- test -s ./optimized-wasm/openapi_python_client-0.0.1-py3-none-any.whl
103- test -s ./optimized-wasm/cdd-java.js
104- test -s ./optimized-wasm/cdd-ts.js
105- test -s ./optimized-wasm/cdd-ts-javy.wasm
106- sed -i 's/"python-all": false/"python-all": true/g' cdd-ctl-wasm-sdk/assets/wasm-support.json
107- sed -i 's/"java": false/"java": true/g' cdd-ctl-wasm-sdk/assets/wasm-support.json
108- sed -i 's/"ts": false/"ts": true/g' cdd-ctl-wasm-sdk/assets/wasm-support.json
109-
11065 - name : Build cdd-docs-ui
11166 working-directory : ./cdd-docs-ui
11267 run : |
113- npm install --ignore-scripts
68+ npm ci --ignore-scripts
11469 npm run build
11570
11671 - name : Install UI Dependencies
11772 working-directory : ./cdd-web-ui
118- run : npm ci --ignore-scripts
73+ run : npm install --ignore-scripts
11974
120- - name : Copy WASM Binaries to Web UI
75+ - name : Fetch and Optimize WASM Binaries
76+ working-directory : ./cdd-web-ui
77+ env :
78+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
12179 run : |
122- mkdir -p cdd-web-ui/public/assets/wasm/
123- cp cdd-ctl/optimized-wasm/*.wasm cdd-web-ui/public/assets/wasm/
124- cp cdd-ctl/optimized-wasm/*.js cdd-web-ui/public/assets/wasm/
125- cp cdd-ctl/optimized-wasm/*.whl cdd-web-ui/public/assets/wasm/
126- unzip -q -o cdd-ctl/cdd-csharp-wasm.zip -d cdd-web-ui/public/assets/wasm/
127- cp cdd-ctl/cdd-ctl-wasm-sdk/assets/wasm-support.json cdd-web-ui/public/assets/wasm-support.json
80+ npm run build:wasm
81+ for wasm_file in public/assets/wasm/*.wasm; do
82+ [ -f "$wasm_file" ] || continue
83+ filename=$(basename "$wasm_file")
84+ echo "Optimizing $filename..."
85+ wasm-opt -O3 "$wasm_file" -o "${wasm_file}.opt" && mv "${wasm_file}.opt" "$wasm_file" || rm -f "${wasm_file}.opt"
86+ done
12887
12988 - name : Compute base-href and Build Angular App
13089 working-directory : ./cdd-web-ui
0 commit comments