mirror of
https://github.com/pnpm/action-setup.git
synced 2026-05-08 01:48:28 +00:00
test(ci): pass bin_dest via env to survive Windows backslashes
Direct GitHub-expression interpolation of `${{ steps.pnpm.outputs.bin_dest }}`
into the bash script let bash eat the backslashes in the Windows path
(`C:Usersrunneradminsetup-pnpmnode_modules.binbin/pnpm`), failing with
"No such file or directory". Forward the value via env so the path
reaches bash unmangled.
This commit is contained in:
12
.github/workflows/test.yaml
vendored
12
.github/workflows/test.yaml
vendored
@@ -195,12 +195,16 @@ jobs:
|
|||||||
version: ${{ matrix.version }}
|
version: ${{ matrix.version }}
|
||||||
|
|
||||||
- name: 'Test: bin_dest/pnpm reports requested version'
|
- name: 'Test: bin_dest/pnpm reports requested version'
|
||||||
|
# Pass paths via env, not template interpolation, so Windows
|
||||||
|
# backslashes in `bin_dest` aren't eaten by bash's escape handling.
|
||||||
|
env:
|
||||||
|
BIN_DEST: ${{ steps.pnpm.outputs.bin_dest }}
|
||||||
|
REQUIRED: ${{ matrix.version }}
|
||||||
run: |
|
run: |
|
||||||
required='${{ matrix.version }}'
|
actual="$("$BIN_DEST/pnpm" --version)"
|
||||||
actual="$(${{ steps.pnpm.outputs.bin_dest }}/pnpm --version)"
|
|
||||||
echo "pnpm version via bin_dest: ${actual}"
|
echo "pnpm version via bin_dest: ${actual}"
|
||||||
if [ "${actual}" != "${required}" ]; then
|
if [ "${actual}" != "${REQUIRED}" ]; then
|
||||||
echo "Expected pnpm version ${required}, but got ${actual}"
|
echo "Expected pnpm version ${REQUIRED}, but got ${actual}"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
shell: bash
|
shell: bash
|
||||||
|
|||||||
Reference in New Issue
Block a user