Edit the configuration according to the lecture (TC website URL, Gitlab Group ID's, Public Repos...)
Usage examples
Notes
There is also a --dryrun
flag to just print what would be done. This can be used to test your settings.
If you do not use the --config
flag it will default to data/config.toml
. If this file does not exist it will be created.
Csv
If you do not want to use the webcrawler you can use the --usecsv
flag. Provide the path to the csv file.
./espTool --usecsv /path/to/file.csv
Download
Important: Search needs to be at least 3 characters long
If no deadline is set current time will be used.
This example will download all repositories of group 5
./espTool --config data/oop1.toml --download --search "05_"
Download with deadline
./espTool --config data/oop1.toml --download --search "05_" --deadline 2021-04-10T23:59:50.0000Z
Other download flags
To speed this up also use the --group <Group>
flag so you don't need to fetch all id's.
To download only one folder of the repository you can use the --tree
flag. e.g. --tree a3
to download only files in folder a3
Downloaded folders of repositories will be renamed to ... If you do not want this use the --norename
flag.
To set a different download path use the -o path/to/outputdir
or --outdir path/to/outputdir
flag. Default is output/
.
To ignore repositories that do not have members from download use the --ignoreempty
flag.
Testing
CleanCommand and TesterExecutable will be run in each directory passed with --results
./espTool --test --solution <path/to/solution/> --results /results/gorup08/*
If your terminal does not support glob enclose the path with "
:
./espTool --test --solution <path/to/solution/> --results "/results/gorup08/*"
To clean all symlinks after testing use the --cleanTest
flag.
To overwrite files that would be symlinked use the --overwrite
flag. Check with --dryrun
too first to not delete something wrong!
With the --testpoints <Number>
the points acquired will be calculated depending on the amount of passed testcases.
all at once?
If you want to download and test all files you can do this with the following command
./espTool --download --test --group 5 --results output/group05/* --solution path/to/solution --testpoints 20
Create Repositories
Adjust naming convention, team size, gitlab group, public repos, etc in the config file. Always check with --dryrun
if everthing is configured correctly.
It is required to have owner rights to change the visiblity of repositories in a group.
./espTool --createrepos -a 1 --dryrun
./espTool --createrepos -a 1
To do
- Add support to store login data and api key encrypted.