ci: replace actions/checkout with a raw git clone in build-images
Provision Coder Templates / build-images (push) Failing after 7s
Provision Coder Templates / provision (push) Successful in 2m0s

actions/checkout is a JS action and needs Node to run inside the job
container. The docker-build runner's job image (docker:27-cli, Alpine,
just the Docker CLI) has no Node, so the step failed immediately with
"exec: node: executable file not found in $PATH" - confirmed via the
run's actual log (build-images failed after 16s on every push since the
image-in-CI switch, including the just-merged duplicate-mount and
if:always() fixes). Alpine has apk/git, so clone directly instead.
This commit is contained in:
2026-08-27 01:26:03 +02:00
parent 9482a0a2a7
commit c1bc3566ba
+9 -1
View File
@@ -52,8 +52,16 @@ jobs:
outputs: outputs:
failed_templates: ${{ steps.build.outputs.failed_templates }} failed_templates: ${{ steps.build.outputs.failed_templates }}
steps: steps:
# actions/checkout is a JS action and needs Node in the job container -
# this job runs in docker:27-cli (Alpine, just the Docker CLI) so it has
# no Node, and actions/checkout fails immediately with "exec: node:
# executable file not found in $PATH". Alpine does have apk/git though,
# so clone directly instead.
- name: Checkout - name: Checkout
uses: actions/checkout@v4 run: |
set -e
apk add --no-cache git
git clone --depth 1 --branch "${{ github.ref_name }}" "${{ github.server_url }}/${{ github.repository }}.git" .
- name: Build and push every template's image (skips a tag that's already in the registry) - name: Build and push every template's image (skips a tag that's already in the registry)
id: build id: build