# POLYGLOT TOOLKIT — choose your member's base image before building. # # This toolkit bundles many repos with DIFFERENT runtimes (Ruby 3.1/3.2.x, Node, Python), so a # single scaffold can't know which member your task targets. This placeholder intentionally stops # the build until you replace it with the correct per-member base. # # From the toolkit root, replace this file with your member's Dockerfile: # # cp task-shared/Dockerfile. harbor-tasks//environment/Dockerfile # # Then build the workspace. That step also stages your member's test/lint/typecheck # checks into tests/test-commands.sh — the grader runs them and uses the results as # evidence for the correctness score, so don't skip it: # # bash scripts/build-workspace.sh # # (It reports which checks it staged, or says so when your member has none.) # # List the members: ls task-shared/Dockerfile.* # # (Tasks made with the snapshot workflow pick the right Dockerfile automatically — only the # manual `cp -r _task-scaffold` flow needs this step.) FROM alpine:3 RUN echo "" >&2; \ echo "ERROR: this is the polyglot scaffold placeholder — it must be replaced before building." >&2; \ echo " cp task-shared/Dockerfile. harbor-tasks//environment/Dockerfile" >&2; \ echo " (list members: ls task-shared/Dockerfile.* — see the comments at the top of this file)" >&2; \ echo "" >&2; \ echo "Then build the workspace — it stages your member's test/lint/typecheck checks," >&2; \ echo "which the grader uses as evidence for the correctness score:" >&2; \ echo " bash scripts/build-workspace.sh " >&2; \ exit 1