@@ -19,11 +19,11 @@ jobs:
1919 - name : Checkout code
2020 uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
2121
22- - name : Download bundle
22+ - name : Download CLI archive
2323 uses : actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
2424 with :
25- name : aspire-bundle -linux-x64
26- path : ${{ github.workspace }}/artifacts/bundle
25+ name : cli-native-archives -linux-x64
26+ path : ${{ github.workspace }}/artifacts/cli-archive
2727
2828 - name : Download NuGet packages
2929 uses : actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
@@ -37,11 +37,20 @@ jobs:
3737 name : built-nugets-for-linux-x64
3838 path : ${{ github.workspace }}/artifacts/nugets-rid
3939
40- - name : Verify bundle artifact
40+ - name : Extract CLI artifact
4141 run : |
42- echo "=== Verifying self-extracting binary ==="
43- ls -la ${{ github.workspace }}/artifacts/bundle/aspire || { echo "ERROR: aspire binary not found"; exit 1; }
44- chmod +x ${{ github.workspace }}/artifacts/bundle/aspire
42+ set -euo pipefail
43+
44+ echo "=== Extracting bundle-backed CLI from archive ==="
45+ archive=$(find "${{ github.workspace }}/artifacts/cli-archive" -type f -name 'aspire-cli-linux-x64*.tar.gz' | head -n 1)
46+ if [ -z "$archive" ]; then
47+ echo "ERROR: CLI archive not found in ${{ github.workspace }}/artifacts/cli-archive"
48+ find "${{ github.workspace }}/artifacts/cli-archive" -maxdepth 5 -type f || true
49+ exit 1
50+ fi
51+
52+ mkdir -p "${{ github.workspace }}/artifacts/bundle"
53+ tar -xzf "$archive" -C "${{ github.workspace }}/artifacts/bundle"
4554
4655 - name : Build Python validation image
4756 run : |
@@ -64,11 +73,11 @@ jobs:
6473 - name : Checkout code
6574 uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
6675
67- - name : Download bundle
76+ - name : Download CLI archive
6877 uses : actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
6978 with :
70- name : aspire-bundle -linux-x64
71- path : ${{ github.workspace }}/artifacts/bundle
79+ name : cli-native-archives -linux-x64
80+ path : ${{ github.workspace }}/artifacts/cli-archive
7281
7382 - name : Download NuGet packages
7483 uses : actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
@@ -82,11 +91,20 @@ jobs:
8291 name : built-nugets-for-linux-x64
8392 path : ${{ github.workspace }}/artifacts/nugets-rid
8493
85- - name : Verify bundle artifact
94+ - name : Extract CLI artifact
8695 run : |
87- echo "=== Verifying self-extracting binary ==="
88- ls -la ${{ github.workspace }}/artifacts/bundle/aspire || { echo "ERROR: aspire binary not found"; exit 1; }
89- chmod +x ${{ github.workspace }}/artifacts/bundle/aspire
96+ set -euo pipefail
97+
98+ echo "=== Extracting bundle-backed CLI from archive ==="
99+ archive=$(find "${{ github.workspace }}/artifacts/cli-archive" -type f -name 'aspire-cli-linux-x64*.tar.gz' | head -n 1)
100+ if [ -z "$archive" ]; then
101+ echo "ERROR: CLI archive not found in ${{ github.workspace }}/artifacts/cli-archive"
102+ find "${{ github.workspace }}/artifacts/cli-archive" -maxdepth 5 -type f || true
103+ exit 1
104+ fi
105+
106+ mkdir -p "${{ github.workspace }}/artifacts/bundle"
107+ tar -xzf "$archive" -C "${{ github.workspace }}/artifacts/bundle"
90108
91109 - name : Build Go validation image
92110 run : |
@@ -109,11 +127,11 @@ jobs:
109127 - name : Checkout code
110128 uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
111129
112- - name : Download bundle
130+ - name : Download CLI archive
113131 uses : actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
114132 with :
115- name : aspire-bundle -linux-x64
116- path : ${{ github.workspace }}/artifacts/bundle
133+ name : cli-native-archives -linux-x64
134+ path : ${{ github.workspace }}/artifacts/cli-archive
117135
118136 - name : Download NuGet packages
119137 uses : actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
@@ -127,11 +145,20 @@ jobs:
127145 name : built-nugets-for-linux-x64
128146 path : ${{ github.workspace }}/artifacts/nugets-rid
129147
130- - name : Verify bundle artifact
148+ - name : Extract CLI artifact
131149 run : |
132- echo "=== Verifying self-extracting binary ==="
133- ls -la ${{ github.workspace }}/artifacts/bundle/aspire || { echo "ERROR: aspire binary not found"; exit 1; }
134- chmod +x ${{ github.workspace }}/artifacts/bundle/aspire
150+ set -euo pipefail
151+
152+ echo "=== Extracting bundle-backed CLI from archive ==="
153+ archive=$(find "${{ github.workspace }}/artifacts/cli-archive" -type f -name 'aspire-cli-linux-x64*.tar.gz' | head -n 1)
154+ if [ -z "$archive" ]; then
155+ echo "ERROR: CLI archive not found in ${{ github.workspace }}/artifacts/cli-archive"
156+ find "${{ github.workspace }}/artifacts/cli-archive" -maxdepth 5 -type f || true
157+ exit 1
158+ fi
159+
160+ mkdir -p "${{ github.workspace }}/artifacts/bundle"
161+ tar -xzf "$archive" -C "${{ github.workspace }}/artifacts/bundle"
135162
136163 - name : Build Java validation image
137164 run : |
@@ -156,11 +183,11 @@ jobs:
156183 - name : Checkout code
157184 uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
158185
159- - name : Download bundle
186+ - name : Download CLI archive
160187 uses : actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
161188 with :
162- name : aspire-bundle -linux-x64
163- path : ${{ github.workspace }}/artifacts/bundle
189+ name : cli-native-archives -linux-x64
190+ path : ${{ github.workspace }}/artifacts/cli-archive
164191
165192 - name : Download NuGet packages
166193 uses : actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
@@ -174,11 +201,20 @@ jobs:
174201 name : built-nugets-for-linux-x64
175202 path : ${{ github.workspace }}/artifacts/nugets-rid
176203
177- - name : Verify bundle artifact
204+ - name : Extract CLI artifact
178205 run : |
179- echo "=== Verifying self-extracting binary ==="
180- ls -la ${{ github.workspace }}/artifacts/bundle/aspire || { echo "ERROR: aspire binary not found"; exit 1; }
181- chmod +x ${{ github.workspace }}/artifacts/bundle/aspire
206+ set -euo pipefail
207+
208+ echo "=== Extracting bundle-backed CLI from archive ==="
209+ archive=$(find "${{ github.workspace }}/artifacts/cli-archive" -type f -name 'aspire-cli-linux-x64*.tar.gz' | head -n 1)
210+ if [ -z "$archive" ]; then
211+ echo "ERROR: CLI archive not found in ${{ github.workspace }}/artifacts/cli-archive"
212+ find "${{ github.workspace }}/artifacts/cli-archive" -maxdepth 5 -type f || true
213+ exit 1
214+ fi
215+
216+ mkdir -p "${{ github.workspace }}/artifacts/bundle"
217+ tar -xzf "$archive" -C "${{ github.workspace }}/artifacts/bundle"
182218
183219 - name : Build Rust validation image
184220 run : |
@@ -201,11 +237,11 @@ jobs:
201237 - name : Checkout code
202238 uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
203239
204- - name : Download bundle
240+ - name : Download CLI archive
205241 uses : actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
206242 with :
207- name : aspire-bundle -linux-x64
208- path : ${{ github.workspace }}/artifacts/bundle
243+ name : cli-native-archives -linux-x64
244+ path : ${{ github.workspace }}/artifacts/cli-archive
209245
210246 - name : Download NuGet packages
211247 uses : actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4.1.9
@@ -219,11 +255,20 @@ jobs:
219255 name : built-nugets-for-linux-x64
220256 path : ${{ github.workspace }}/artifacts/nugets-rid
221257
222- - name : Verify bundle artifact
258+ - name : Extract CLI artifact
223259 run : |
224- echo "=== Verifying self-extracting binary ==="
225- ls -la ${{ github.workspace }}/artifacts/bundle/aspire || { echo "ERROR: aspire binary not found"; exit 1; }
226- chmod +x ${{ github.workspace }}/artifacts/bundle/aspire
260+ set -euo pipefail
261+
262+ echo "=== Extracting bundle-backed CLI from archive ==="
263+ archive=$(find "${{ github.workspace }}/artifacts/cli-archive" -type f -name 'aspire-cli-linux-x64*.tar.gz' | head -n 1)
264+ if [ -z "$archive" ]; then
265+ echo "ERROR: CLI archive not found in ${{ github.workspace }}/artifacts/cli-archive"
266+ find "${{ github.workspace }}/artifacts/cli-archive" -maxdepth 5 -type f || true
267+ exit 1
268+ fi
269+
270+ mkdir -p "${{ github.workspace }}/artifacts/bundle"
271+ tar -xzf "$archive" -C "${{ github.workspace }}/artifacts/bundle"
227272
228273 - name : Build TypeScript validation image
229274 run : |
@@ -271,6 +316,6 @@ jobs:
271316 if [ "${{ needs.validate_rust.result }}" == "failure" ]; then
272317 echo "⚠️ Rust SDK validation failed (known issues - not blocking)"
273318 fi
274-
319+
275320 - name : All validations passed
276321 run : echo "✅ All required polyglot SDK validations passed!"
0 commit comments