Skip to content

Commit eb0a878

Browse files
committed
Plagiarism detection manager configuration file example.
1 parent 4950008 commit eb0a878

File tree

3 files changed

+65
-65
lines changed

3 files changed

+65
-65
lines changed

.gitignore

+8
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,11 @@ installation/virtual_*
1212
/regression_tests/.vscode
1313
/lowlevel_db_ops/config/config.ini.php
1414
/lowlevel_db_ops/vendor
15+
/solution-downloader/.vscode
16+
/solution-downloader/__pycache__
17+
/solution-downloader/config.yaml
18+
/plagiarisms/.vscode
19+
/plagiarisms/config.yaml
20+
/plagiarisms/archive
21+
/plagiarisms/last
22+
/plagiarisms/logs

plagiarisms/config.yaml

-65
This file was deleted.

plagiarisms/config.yaml.example

+57
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
exercises: # local name -> ReCodEx ID (used for both the manager and the downloader)
2+
basic: 7f855c82-50e9-496a-99db-32a59b0550ab
3+
advanced: 9ffaa226-63f1-4036-b50e-a1a55bf777e1
4+
5+
groups: # groups to scan for solutions (passed down to the downloader)
6+
- id: 9a1e1874-6bca-43f2-a5db-d5e7d238259e
7+
recursive: true # if the subgroups should be searched as well
8+
# archived: true # whether archived groups will be searched as well
9+
10+
manifest: # passed down to the downloader
11+
# solution_id: 'solution.id' is always added automatically
12+
path: 'path'
13+
file_id: 'file.id'
14+
author_id: 'solution.authorId'
15+
16+
solutions: # passed down to the downloader (createdAt condition is added/overwritten by the manager)
17+
correctness: 100
18+
19+
dirs: # where the stuff is loaded
20+
working: './wd' # current batch being downloaded and processed
21+
last_batch: './last' # copy of the last processed batch
22+
archive: './archive' # all merged solutions we have seen so far (ref. code base for comparator)
23+
logs: './logs'
24+
25+
logger: # https://docs.python.org/3/library/logging.html#levels
26+
console_level: DEBUG
27+
file_level: INFO
28+
29+
downloader: # how to invoke the solution-downloader script
30+
python: 'python'
31+
exec: '../solution-downloader/download.py'
32+
33+
comparator: # how to invoke and process results of the source code comparator
34+
name: 'comparatrix'
35+
exec: './comparatrix' # path to executable file
36+
args: # common for all exercises (use {} in strings to inject the corresponding paths)
37+
manifest: [ '--csv', '{}' ] # args referencing current manifest file
38+
archive: [ '--csv-base', '{}' ] # args reference the code base (archive)
39+
output: [ '--csv-output', '{}' ] # args specifying where the output file should be
40+
other: [] # additional args common for all exercises (unless overridden, no {} inside)
41+
exercise_args: # overrides for specific exercises (each subsection is treated independently)
42+
advanced:
43+
other: [ '--min-pattern-length', '50', '--min-percentage', '33', '--min-total-length', '1000' ]
44+
output:
45+
csv: # additional args for CSV parser
46+
delimiter: ','
47+
columns: # keys are fixed (known by the manager), values refer to column names in the output header
48+
author_id: 'author_id_2'
49+
similarity: 'percentage_1'
50+
file_id1: 'file_id_1'
51+
solution_id1: 'solution_id_1'
52+
offset1: 'byte_position_1'
53+
length1: 'byte_size_1'
54+
file_id2: 'file_id_2'
55+
solution_id2: 'solution_id_2'
56+
offset2: 'byte_position_2'
57+
length2: 'byte_size_2'

0 commit comments

Comments
 (0)