Nos analyseurs sont déployés sous forme d'images Docker.
Lis la documentation générale sur Docker dans l'outillage pour te familiariser avec leur fonctionnement.
Quand on lance un analyseur pour analyser une solution, on exécute une commande Docker qui ressemble à ceci :
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}-analyzer" \
"${exercise_slug}" "/solution" "/output"
Comme tu peux le voir, on passe trois arguments à l'image Docker :
Tous nos analyseurs suivent les conventions suivantes dans leur implémentation :
Dockerfile se trouve à la racine du dépôt./opt/analyzer./opt/analyzer/bin/run.sh
/opt/analyzer/bin/run.sh prend 3 arguments :
Pour plus d'informations, consulte L'interface.
Les nouveaux dépôts d'analyseurs utiliseront ces conventions par défaut.