Fenrir
Autocomplete
To install autocomplete for bash run sudo fenrir autocomplete bash.
To install autocomplete for zsh run fenrir autocomplete zsh.
Task solution
Each task solution must be placed in its own directory unless stated otherwise. Assume the task’s fenrir id is TASK_ID then the project structure must follow the following format:
dt2026-aut-...
├─ TASK_ID
│ └─ ...
└─ .git
The name of the task branch is the same as the task directory’s one: TASK_ID.
Select the task to test
Run fenrir info to see the current task
$ fenrir info
_____ _
| ___|__ _ __ _ __(_)_ __
| |_ / _ \ '_ \| '__| | '__|
| _| __/ | | | | | | |
|_| \___|_| |_|_| |_|_|
-----------------------------------------------------
Current settings:
* Remote: https://github.com/1BAH/fenrir-tests
* Current task: sem0-1 <== THIS IS THE TASK
* Blocking: 0
* Execution mode: 001 (Inline-Host-Docker)
-----------------------------------------------------
To change the task run fenrir task TASK_ID. This command downloads the tests and sets the current task parameter.
The tests are cached: to update them use -f option. E.g. fenrir task -f task0
|
Run tests
Info subcommand shows which run modes are allowed:
$ fenrir info
_____ _
| ___|__ _ __ _ __(_)_ __
| |_ / _ \ '_ \| '__| | '__|
| _| __/ | | | | | | |
|_| \___|_| |_|_| |_|_|
-------------------------------------------------------------
Current settings:
* Remote: https://github.com/1BAH/fenrir-tests
* Current task: sem0-1
* Blocking: 0
* Execution mode: 001 (Inline-Host-Docker) <== THIS ONE
-------------------------------------------------------------
- Inline
-
Runs directly on the provided repo. Potentially unsafe…
- Host
-
Clones the repo before running the tests. Therefore, it requires the solution to be commited beforehand.
- Docker
-
Copies the solution into a docker container
To run tests execute fenrir run PATH_TO_THE_SOLUTION. If you want to run in INLINE mode, add -i option. To run inside docker use fenrir rund PATH_TO_THE_SOLUTION command.
Tests are preceded by linters. To disable them add -nl option.
To run the specific testcase only use --testcase TESTCASE option.
Inspect the tests
To read the test scripts use fenrir inspect TESTCASE command. Testcases are listed inside main block in fenrir info output.
Dev environments
To enter the task’s environment run fenrir env up PATH_TO_THE_SOLUTION: this command will create an environment for you.
| It might take some time to download and start the env. Be patient. |
The env’s credentials are displayed when the system is ready:
[ INFO ] Env is ready..
[ INFO ] ヾ(^ ∇ ^). Now in env
[ INFO ] ---------------------------------------
_____ _
| ___|__ _ __ _ __(_)_ __
| |_ / _ \ '_ \| '__| | '__|
| _| __/ | | | | | | |
|_| \___|_| |_|_| |_|_|
User: fikus
Password: breach
System: Alpine Linux v3.24
Task ID: sem0-0
[ INFO ] ---------------------------------------
To exit the env run exit. You can reenter it any time. To destroy it run fenrir env down.