---
# System prepended metadata

title: NoSQL task instruction

---

# NoSQL task instruction

## Пререквизиты

### Moodle
Курс для разработки
- http://e.moevm.info/course/view.php?id=48


### Linux-challenge (LC)
Тестирующая система
- https://task.cub-it.org/

## Добавление задачи
### В Moodle
1. Войти в режим редактирования курса
    - ![](https://i.imgur.com/q3W2TrN.png)
2. Для упрощения создания новой задачи уже создан шаблон задачи - его необходимо дублировать для каждой новой задачи
    - ![](https://i.imgur.com/VrjgEHb.png)
3. Редактирование конфигурации задачи
    - ![](https://i.imgur.com/4mjHtTj.png)
    - ![](https://i.imgur.com/NDi8liW.png)
    - ![](https://i.imgur.com/HyIskdn.png)
        - `task_id` - `loc_id` задачи в LC (которая открывается при запуске) 

### В LC
1. Страница создания новой задачи:
    - ![](https://i.imgur.com/uAy0UiH.png)
        - https://task.cub-it.org/admin_tasks
    - ![](https://i.imgur.com/EKehEsA.png)
        - https://task.cub-it.org/create_task/linux_challenge
2. Поля задачи
    - ![](https://i.imgur.com/p1WIUTk.png)
    - Большинство полей можно заполнить аналогично другим задачам: https://task.cub-it.org/admin_task/44718_4 
        - `id/loc_id` - желательно заполнять одинаково с использованием id задачи из репозитория (например, с префиксом `nosql_` + `memcached_add_key` = `nosql_memcached_add_key`)
        - `Course` - `2586_Введение_в_нереляционные_базы_данных`
        - `type` - без изменений
        - `docker_image` - `15`
        - `memory` - `128`/`256` (если для задачи/БД требуется много RAM)
        - `time_limit` - без изменений
        - `condition` - текстовое условие задачи (используется html-разметка)
        - `bootstrap` - bash-скрипт инициализации контейнера с задачей
        - `check` - python-код для запуска тестов через pytest
            - Организован в виде функций с префиксом `test_` в названии (необходимо для pytest)
            - С помощью команды `s.run('some bash command')` возможно выполнение bash-команды на целевой машине (контейнер с задачей студента, с которым он взаимодействует через терминал), возвращаемое значение - output выполненной команды.
3. После сохранения - задача доступна к открытию через Moodle по `loc_id`