@@ -62,34 +62,91 @@ jobs:
6262 mkdir -p extension-temp
6363 cd extension-temp
6464
65- # Download each file from release
65+ # Download individual files from release (reliable method)
66+ echo "📁 Downloading individual files from release..."
6667 curl -L -H "Authorization: token ${{ secrets.SENTIENCE_CHROME_TOKEN }}" \
6768 "https://api.github.com/repos/$REPO/releases/tags/$TAG" | \
68- jq -r '.assets[] | select(.name | endswith(".js") or endswith(".wasm") or endswith(".json") or endswith(".d.ts")) | .browser_download_url' | \
69- while read url; do
70- filename=$(basename "$url")
71- curl -L -H "Authorization: token ${{ secrets.SENTIENCE_CHROME_TOKEN }}" "$url" -o "$filename"
69+ jq -r '.assets[] | select(.name | endswith(".js") or endswith(".wasm") or endswith(".json") or endswith(".d.ts")) | "\(.browser_download_url)|\(.name)"' | \
70+ while IFS='|' read -r url name; do
71+ if [ -n "$url" ] && [ "$url" != "null" ] && [ -n "$name" ]; then
72+ # Preserve directory structure from asset name
73+ # If name contains '/', create directories
74+ dir=$(dirname "$name")
75+ if [ "$dir" != "." ]; then
76+ mkdir -p "$dir"
77+ fi
78+ echo " Downloading $name..."
79+ curl -L -H "Authorization: token ${{ secrets.SENTIENCE_CHROME_TOKEN }}" "$url" -o "$name"
80+ fi
7281 done
7382
74- # Alternative: Download from release archive if available
75- # Or use the extension-package artifact
83+ # Verify downloaded files
84+ echo "📋 Downloaded files:"
85+ ls -la
7686
7787 - name : Copy extension files
7888 if : steps.release.outputs.skip != 'true'
7989 run : |
8090 # Create extension directory structure
8191 mkdir -p sentience/extension/pkg
8292
83- # Copy extension files
84- cp extension-temp/manifest.json sentience/extension/ 2>/dev/null || echo "manifest.json not found in release"
85- cp extension-temp/content.js sentience/extension/ 2>/dev/null || echo "content.js not found in release"
86- cp extension-temp/background.js sentience/extension/ 2>/dev/null || echo "background.js not found in release"
87- cp extension-temp/injected_api.js sentience/extension/ 2>/dev/null || echo "injected_api.js not found in release"
93+ # Copy extension files (handle both root and extension-package/ subdirectory)
94+ # Check root first, then extension-package/ subdirectory
95+ if [ -f "extension-temp/manifest.json" ]; then
96+ cp extension-temp/manifest.json sentience/extension/
97+ elif [ -f "extension-temp/extension-package/manifest.json" ]; then
98+ cp extension-temp/extension-package/manifest.json sentience/extension/
99+ else
100+ echo "⚠️ manifest.json not found"
101+ fi
102+
103+ if [ -f "extension-temp/content.js" ]; then
104+ cp extension-temp/content.js sentience/extension/
105+ elif [ -f "extension-temp/extension-package/content.js" ]; then
106+ cp extension-temp/extension-package/content.js sentience/extension/
107+ else
108+ echo "⚠️ content.js not found"
109+ fi
110+
111+ if [ -f "extension-temp/background.js" ]; then
112+ cp extension-temp/background.js sentience/extension/
113+ elif [ -f "extension-temp/extension-package/background.js" ]; then
114+ cp extension-temp/extension-package/background.js sentience/extension/
115+ else
116+ echo "⚠️ background.js not found"
117+ fi
118+
119+ if [ -f "extension-temp/injected_api.js" ]; then
120+ cp extension-temp/injected_api.js sentience/extension/
121+ elif [ -f "extension-temp/extension-package/injected_api.js" ]; then
122+ cp extension-temp/extension-package/injected_api.js sentience/extension/
123+ else
124+ echo "⚠️ injected_api.js not found"
125+ fi
126+
127+ # Copy WASM files (check both locations)
128+ if [ -f "extension-temp/pkg/sentience_core.js" ]; then
129+ cp extension-temp/pkg/sentience_core.js sentience/extension/pkg/
130+ elif [ -f "extension-temp/extension-package/pkg/sentience_core.js" ]; then
131+ cp extension-temp/extension-package/pkg/sentience_core.js sentience/extension/pkg/
132+ else
133+ echo "⚠️ sentience_core.js not found"
134+ fi
88135
89- # Copy WASM files
90- cp extension-temp/pkg/sentience_core.js sentience/extension/pkg/ 2>/dev/null || echo "sentience_core.js not found"
91- cp extension-temp/pkg/sentience_core_bg.wasm sentience/extension/pkg/ 2>/dev/null || echo "sentience_core_bg.wasm not found"
92- cp extension-temp/pkg/*.d.ts sentience/extension/pkg/ 2>/dev/null || echo "Type definitions not found"
136+ if [ -f "extension-temp/pkg/sentience_core_bg.wasm" ]; then
137+ cp extension-temp/pkg/sentience_core_bg.wasm sentience/extension/pkg/
138+ elif [ -f "extension-temp/extension-package/pkg/sentience_core_bg.wasm" ]; then
139+ cp extension-temp/extension-package/pkg/sentience_core_bg.wasm sentience/extension/pkg/
140+ else
141+ echo "⚠️ sentience_core_bg.wasm not found"
142+ fi
143+
144+ # Copy TypeScript definitions
145+ if [ -d "extension-temp/pkg" ]; then
146+ cp extension-temp/pkg/*.d.ts sentience/extension/pkg/ 2>/dev/null || echo "⚠️ Type definitions not found"
147+ elif [ -d "extension-temp/extension-package/pkg" ]; then
148+ cp extension-temp/extension-package/pkg/*.d.ts sentience/extension/pkg/ 2>/dev/null || echo "⚠️ Type definitions not found"
149+ fi
93150
94151 - name : Check for changes
95152 if : steps.release.outputs.skip != 'true'
0 commit comments