Студент пушит репозиторий. Система собирает его Dockerfile, запускает тесты и выставляет балл в ведомость. Если сборка падает — студент видит лог и может перепослать решение, а преподаватель не тратит на это ни минуты. Работает на кафедрах МФТИ, ВШЭ, МГТУ и Центрального университета.
● МФТИ, ВШЭ, МГТУ, Центральный университет · курсы до 400 человек
Почему DevOps-задания проверяются дольше любых других и как автогрейдер забирает эту работу.
DevOps-задание — самое дорогое в ручной проверке. Чтобы оценить одну работу, преподаватель клонирует репозиторий, собирает образ, ждёт сборку, запускает контейнер и читает логи. Это 15–20 минут на студента. На потоке в двести человек набегает неделя чистого времени — после каждого дедлайна.
Apricot делает это вместо преподавателя. Студент пушит решение в Git-репозиторий, система клонирует его, собирает Dockerfile и запускает ваши тесты в изолированном контейнере. Балл попадает в ведомость, студент получает полный лог сборки. Преподаватель открывает только спорные работы.
Система клонирует репозиторий студента с GitHub или GitLab, собирает образ, запускает тесты и сравнивает результат с эталоном. Если сборка упала по вине студента, посылка получает статус «на доработку»: форма остаётся открытой, студент чинит Dockerfile и отправляет снова. Если что-то сломалось на нашей стороне, посылка помечается как системная ошибка и на оценку не влияет.
Кроме сборки образов система проверяет Bash-скрипты и CI/CD-пайплайны: студент настраивает pipeline в своём репозитории, а чекер убеждается, что стадии описаны верно и проходят. Для типовых курсов есть готовые шаблоны заданий — больше трёхсот.
Три этапа — от создания задания до балла в ведомости.
Выбирает готовый шаблон или подключает собственный чекер: тесты, эталоны, критерии оценки, дедлайны и штрафы за просрочку.
Отправляет ссылку на свой Git-репозиторий с Dockerfile, Bash-скриптами или конфигурацией пайплайна. Попытки не ограничены.
Система собирает решение в изолированном контейнере, прогоняет тесты и записывает балл в ведомость. Студент видит лог каждой попытки.
От первого Dockerfile до полного CI/CD-пайплайна — с автоматической проверкой каждой посылки.
Студент пишет Dockerfile, система собирает образ и проверяет поведение контейнера: сборка проходит, сервис отвечает, тесты зелёные.
Скрипт студента выполняется в изолированном Linux-окружении, вывод и побочные эффекты сравниваются с эталоном.
Студент настраивает pipeline в своём репозитории. Чекер проверяет, что стадии описаны верно и проходят.
Многосервисные конфигурации: система поднимает стек и проверяет, что сервисы стартуют и общаются между собой.
Проверка конфигураций деплоя: синтаксис, структура манифестов и поведение приложения в кластере.
Проверка запускается в Docker-контейнерах, поэтому преподаватель может подключить чекер под любой инструмент с CLI — Ansible, Terraform и другие.
Изолированные сборки, честные статусы и ведомость курса в одном месте.
Каждая посылка собирается в отдельном контейнере с лимитами на процессор, память и сеть. Хост и чужие посылки недоступны.
Студент видит, на каком шаге упала сборка, и чинит сам — вместо того чтобы писать преподавателю с просьбой посмотреть.
Баллы за DevOps-задания попадают в общую ведомость курса — со штрафами за просрочку и аналитикой по группе.
Упавшая по вине студента сборка — «на доработку» с открытой формой. Сбой платформы — системная ошибка, которая не влияет на оценку.
Расскажите про курс: сколько студентов, какие темы — Docker, Bash, CI/CD. Настроим чекеры и шаблоны за 1–2 дня. Возможен пилот на один курс.