33 lines
1.7 KiB
Docker
33 lines
1.7 KiB
Docker
# 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.<your-member> harbor-tasks/<your-slug>/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 <your-slug>
|
|
#
|
|
# (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.<your-member> harbor-tasks/<your-slug>/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 <your-slug>" >&2; \
|
|
exit 1
|