This directory hosts Docker helpers for FastLED's emulator and test-runner workflows. The earlier compilation-Docker system (the niteris/fastled-compiler-* image family on Docker Hub plus the local fastled-platformio-* images) was decommissioned in #2812 — fbuild does not self-poison the way PlatformIO did, so the per-platform compiler images were no longer earning their cost.
Dockerfile.avr8js— AVR8JS-based emulator image used byavr8js_uno_test.ymlto run Arduino Uno firmware in JavaScript.avr8js/— Node packages + entrypoint scripts baked into the avr8js image.avr8js_docker.py— Python runner that invokes the avr8js image.qemu_esp32_docker.py— Qemu-based ESP32 emulator runner used by theqemu_esp32*_test.ymlworkflows.README.qemu.md— qemu-specific usage notes.
container_db.py— SQLite-backed container lifecycle tracking. Used byci/runners/docker_runner.py(thebash test --dockerpath) to keep containers alive between runs and clean up after dead processes.cleanup_orphans.py— standalone CLI for purging orphaned tracked containers (uv run python -m ci.docker.cleanup_orphans).test_container_db.py— unit tests forcontainer_db.py.
build_image.py— image-name hashing. After #2812 onlygenerate_config_hash()andget_platformio_version()remain (used by the qemu runner). The compile-Docker helpers (extract_architecture,generate_docker_tag) were removed.DockerManager.py— genericdocker run/docker stopsubprocess wrapper. Retained becauseqemu_esp32_docker.pycallsrun_container_streaming()on it. The compile-side orchestrator that also used to call in here is gone.build_platforms.py— board → platform-family mapping. Retained becauseqemu_esp32_docker.pycallsget_platform_for_board()to deriveniteris/fastled-simulator-*image names. The mirror compiler-image names that historically used this mapping are no longer published.
| Removed | Why |
|---|---|
Dockerfile.base, Dockerfile.template |
Built the niteris/fastled-compiler-base and per-platform compiler images. |
build.sh, docker_build_utils.py, generate_platformio_ini.py |
In-container layered build orchestration. |
image_priority_tracker.py |
Smart-rebuild scheduler that drove docker_compiler_smart_build.yml. |
prune_old_images.py |
Pruned local fastled-platformio-* images (image family no longer exists). |
diagnose_sync.sh |
Diagnosed rsync sync between host and compile-Docker container. |
DOCKER_DESIGN.md, task.md, RSYNC_FIX.md |
Architecture / design notes for the retired system. |
The matching workflows (.github/workflows/docker_compiler_*.yml, docker_merge_platform.yml, docker_build_compiler.yml) and the compile-side Python wrapper (ci/compiler/docker_manager.py, ci/build_docker_image_pio.py) were removed in the same PR. The --docker and --build flags on bash compile are gone.
bash test --docker and bash profile --docker still work today against the published Docker Hub images, but will be audited and retired separately (#2812 Phase 6 — Docker Hub image deprecation).