Docker


테스트 러너는 Docker 이미지로 배포해요.

이것들이 어떻게 동작하는지 익히려면 일반 툴링 Docker 정보를 읽어 보세요.

통합

테스트 러너를 실행해 풀이를 테스트할 때는 다음과 같은 Docker 명령을 실행해요:

docker run \
        --rm \
        --network none \
        --mount type=bind,src="${solution_dir}",dst=/solution \
        --mount type=bind,src="${output_dir}",dst=/output \
        --tmpfs /tmp:rw \
        "exercism/${track_slug}-test-runner" \
        "${exercise_slug}" "/solution" "/output"

Docker 이미지에 세 개의 인자를 전달한다는 것을 알 수 있어요:

  1. 연습 문제 슬러그
  2. 풀이 디렉터리 경로
  3. 출력 디렉터리 경로

규칙

모든 테스트 러너는 구현에서 다음과 같은 규칙을 따라요:

  • Dockerfile은 저장소의 루트 디렉터리에 있어요.
  • 작업 디렉터리는 /opt/test-runner여야 해요.
  • 엔트리포인트는 /opt/test-runner/bin/run.sh예요.
  • /opt/test-runner/bin/run.sh 스크립트는 3개의 인자를 받아요:
    1. 연습 문제 슬러그
    2. 풀이 디렉터리 경로
    3. 출력 디렉터리 경로

더 자세한 내용은 인터페이스를 참고해요.

Note

새로운 테스트 러너 저장소는 기본적으로 이 규칙을 따라요.