Your Code Ran on the Free Box. That's Not an Environment Match.
Описание и применение
Скрипт fingerprint.sh позволяет сравнить окружения локальной машины и бесплатного CI‑runner, выявляя различия в GLIBC, архитектуре, локали и часовом поясе, что ускоряет поиск причин неудачных тестов.
Задача
Tests that pass locally fail on a CI free box due to environment differences such as GLIBC version, architecture, locale, and timezone.
Результат
By capturing runtime facts and diffing them, developers can quickly isolate environment mismatches that cause CI failures, reducing debugging time.
Рабочий процесс
- Run fingerprint.sh on local machine and save output to laptop.txt
- Run fingerprint.sh on the free runner via ssh and save to remote.txt
- Diff laptop.txt and remote.txt to identify differences
- Interpret diff using the decision table to determine cause and next step
- Apply corrective action such as rebuilding wheels or pinning versions
- Re-run tests to confirm resolution
Доказательства
Your tests pass on your laptop. The same commit then dies on a plain Ubuntu box with error while loading shared libraries: GLIBC_2.34 not found.
Run the same workload three times. If the spread is huge, you have contention.
This prints facts, one per line. No dependencies beyond bash and coreutils.
- Дата записи: 2026-10-20T11:41:38.985Z