@@ -65,10 +65,28 @@ jobs:
6565 build-cli :
6666 needs : meta
6767 if : needs.meta.outputs.changed == 'true'
68- uses : ./.github/workflows/cli-build.yml
69- with :
70- version : ${{ needs.meta.outputs.tag }}
71- target : linux-amd64
68+ runs-on : ${{ vars.LINKERD2_RUNNER || 'ubuntu-24.04' }}
69+ timeout-minutes : 15
70+ steps :
71+ - uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
72+ - uses : ./.github/actions/docker-build
73+ id : build
74+ with :
75+ docker-registry : ${{ env.DOCKER_REGISTRY }}
76+ docker-target : linux-amd64
77+ component : cli-bin
78+ tag : ${{ needs.meta.outputs.tag }}
79+ - name : Extract CLI binary
80+ run : |
81+ mkdir -p /home/runner/archives
82+ id=$(docker create '${{ steps.build.outputs.image }}')
83+ docker cp "$id:/out/linkerd-linux-amd64" /home/runner/archives/linkerd
84+ v=$(/home/runner/archives/linkerd version --short --client)
85+ [[ "$v" == '${{ needs.meta.outputs.tag }}' ]] || exit 1
86+ - uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
87+ with :
88+ name : image-archives-cli
89+ path : /home/runner/archives
7290
7391 # #
7492 # # Core: Test the core control plane
@@ -128,12 +146,9 @@ jobs:
128146 pattern : image-archives-*
129147 path : image-archives
130148 merge-multiple : true
149+ - run : cp image-archives/linkerd "$HOME" && chmod 755 "$HOME/linkerd"
131150 - run : find image-archives -ls
132- - uses : ./.github/actions/cli-setup
133- with :
134- artifact-id : ${{ needs.build-cli.outputs.artifact-id }}
135- target : ${{ runner.temp }}/linkerd
136- - run : bin/tests --images archive --cleanup-docker --name ${{ matrix.test }} ${{ runner.temp }}/linkerd
151+ - run : bin/tests --images archive --cleanup-docker --name ${{ matrix.test }} "$HOME/linkerd"
137152 env :
138153 LINKERD_DOCKER_REGISTRY : ${{ env.DOCKER_REGISTRY }}
139154 TAG : ${{ needs.meta.outputs.tag }}
@@ -181,10 +196,7 @@ jobs:
181196 path : image-archives
182197 merge-multiple : true
183198 - run : find image-archives -ls
184- - uses : ./.github/actions/cli-setup
185- with :
186- artifact-id : ${{ needs.build-cli.outputs.artifact-id }}
187- target : ${{ runner.temp }}/linkerd
199+ - run : cp image-archives/linkerd "$HOME" && chmod 755 "$HOME/linkerd"
188200 - name : Setup deps
189201 shell : bash
190202 run : |
@@ -205,7 +217,7 @@ jobs:
205217 - run : docker load <image-archives/controller.tar
206218 - run : docker load <image-archives/proxy.tar
207219 - run : docker image ls
208- - run : just linkerd-tag='${{ needs.meta.outputs.tag }}' linkerd-exec="${{ runner.temp }} /linkerd" linkerd-install
220+ - run : just linkerd-tag='${{ needs.meta.outputs.tag }}' linkerd-exec="$HOME /linkerd" linkerd-install
209221 - name : Load images
210222 run : |
211223 # Image loading is flakey in CI, so retry!
@@ -283,12 +295,9 @@ jobs:
283295 pattern : image-archives-*
284296 path : image-archives
285297 merge-multiple : true
286- - run : find image-archives -ls
287- - uses : ./.github/actions/cli-setup
288- with :
289- artifact-id : ${{ needs.build-cli.outputs.artifact-id }}
290- target : ${{ runner.temp }}/linkerd
291- - run : bin/tests --images archive --cleanup-docker --name '${{ matrix.integration_test }}' ${{ runner.temp }}/linkerd
298+ - run : cp image-archives/linkerd "$HOME" && chmod 755 "$HOME/linkerd"
299+ - run : ls -l image-archives/linkerd
300+ - run : bin/tests --images archive --cleanup-docker --name '${{ matrix.integration_test }}' "$HOME/linkerd"
292301 env :
293302 LINKERD_DOCKER_REGISTRY : ${{ env.DOCKER_REGISTRY }}
294303
@@ -311,11 +320,9 @@ jobs:
311320 pattern : image-archives-*
312321 path : image-archives
313322 merge-multiple : true
314- - uses : ./.github/actions/cli-setup
315- with :
316- artifact-id : ${{ needs.build-cli.outputs.artifact-id }}
317- target : ${{ runner.temp }}/linkerd
318- - run : bin/tests --images archive --cleanup-docker --name viz ${{ runner.temp }}/linkerd
323+ - run : cp image-archives/linkerd "$HOME" && chmod 755 "$HOME/linkerd"
324+ - run : ls -l image-archives/linkerd
325+ - run : bin/tests --images archive --cleanup-docker --name viz "$HOME/linkerd"
319326 env :
320327 LINKERD_DOCKER_REGISTRY : ${{ env.DOCKER_REGISTRY }}
321328
@@ -350,11 +357,8 @@ jobs:
350357 pattern : image-archives-*
351358 path : image-archives
352359 merge-multiple : true
353- - run : find image-archives -ls
354- - uses : ./.github/actions/cli-setup
355- with :
356- artifact-id : ${{ needs.build-cli.outputs.artifact-id }}
357- target : ${{ runner.temp }}/linkerd
360+ - run : cp image-archives/linkerd "$HOME" && chmod 755 "$HOME/linkerd"
361+ - run : ls -l image-archives/linkerd
358362 - name : Setup deps
359363 shell : bash
360364 run : |
0 commit comments