Skip to content

Commit c018d6d

Browse files
committed
Add verify toolchain for ubuntu/macos
1 parent 950b753 commit c018d6d

1 file changed

Lines changed: 74 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,43 @@ jobs:
8888
uses: dlang-community/setup-dlang@d7d85fcde7c4cd5f9a6618fce1bccc316e1e910b
8989
with:
9090
compiler: ${{ matrix.dc }}
91+
- name: Verify toolchain
92+
shell: bash
93+
env:
94+
DC_NAME: ${{ matrix.dc }}
95+
run: |
96+
set -euo pipefail
97+
98+
echo "matrix.dc = ${DC_NAME}"
99+
100+
# dub must exist for all jobs
101+
if ! command -v dub >/dev/null 2>&1; then
102+
echo "ERROR: dub not found on PATH"
103+
exit 1
104+
fi
105+
dub --version
106+
107+
if [[ "${DC_NAME}" == dmd* ]]; then
108+
if ! command -v dmd >/dev/null 2>&1; then
109+
echo "ERROR: dmd not found on PATH (matrix.dc=${DC_NAME})"
110+
exit 1
111+
fi
112+
dmd --version
113+
114+
elif [[ "${DC_NAME}" == ldc* ]]; then
115+
if ! command -v ldc2 >/dev/null 2>&1; then
116+
echo "ERROR: ldc2 not found on PATH (matrix.dc=${DC_NAME})"
117+
exit 1
118+
fi
119+
ldc2 --version
120+
121+
else
122+
echo "ERROR: Unknown compiler in matrix.dc: '${DC_NAME}' (expected prefix 'dmd' or 'ldc')"
123+
exit 1
124+
fi
125+
126+
echo "ARCH=${ARCH:-<unset>}"
127+
echo "PATH=${PATH}"
91128
- name: Cache dub packages (safe to share)
92129
uses: actions/cache@v4
93130
with:
@@ -149,6 +186,43 @@ jobs:
149186
- name: Install multi-lib for 32-bit systems
150187
if: matrix.arch == 'x86'
151188
run: sudo apt-get update && sudo apt-get install gcc-multilib
189+
- name: Verify toolchain
190+
shell: bash
191+
env:
192+
DC_NAME: ${{ matrix.dc }}
193+
run: |
194+
set -euo pipefail
195+
196+
echo "matrix.dc = ${DC_NAME}"
197+
198+
# dub must exist for all jobs
199+
if ! command -v dub >/dev/null 2>&1; then
200+
echo "ERROR: dub not found on PATH"
201+
exit 1
202+
fi
203+
dub --version
204+
205+
if [[ "${DC_NAME}" == dmd* ]]; then
206+
if ! command -v dmd >/dev/null 2>&1; then
207+
echo "ERROR: dmd not found on PATH (matrix.dc=${DC_NAME})"
208+
exit 1
209+
fi
210+
dmd --version
211+
212+
elif [[ "${DC_NAME}" == ldc* ]]; then
213+
if ! command -v ldc2 >/dev/null 2>&1; then
214+
echo "ERROR: ldc2 not found on PATH (matrix.dc=${DC_NAME})"
215+
exit 1
216+
fi
217+
ldc2 --version
218+
219+
else
220+
echo "ERROR: Unknown compiler in matrix.dc: '${DC_NAME}' (expected prefix 'dmd' or 'ldc')"
221+
exit 1
222+
fi
223+
224+
echo "ARCH=${ARCH:-<unset>}"
225+
echo "PATH=${PATH}"
152226
- name: Cache dub packages (safe to share)
153227
uses: actions/cache@v4
154228
with:

0 commit comments

Comments
 (0)