Я хотел бы использовать GitHub Classroom и TravisCI для автоматической обратной связи со студентами. Идея состоит в том, чтобы студенты повторно отправляли свой код, пока он не пройдет мои «частные» (то есть секретные) тесты.
Как загрузить эти тесты для инструкторов в TravisCI таким образом, чтобы студенты не могли их видеть? (Это предстоящее задание - C ++; но я ожидаю использовать эту настройку для других языков в будущем.)
Настройка Travis CI с GitHub Classroom была на удивление легкой - пока я не наткнулся на этот контрольно-пропускной пункт.
Я понял, как загрузить зашифрованные файлы в TravisCI. Проблема заключается в том, что для получения доступа к тестам студенту необходимо только: (1) запустить сборку в «режиме отладки», (2) войти на сервер сборки и (3) использовать openssl для расшифровки файла.
- Есть ли способ сообщить TravisCI, чтобы разрешить соавторам (т.е. не владельцам) запускать сборки, просматривать журналы сборки, но не переходить в режим отладки?
- Есть ли еще один бесплатный CIПлатформа, которая хорошо работает с классной комнатой GitHub?
Я также подумывал о том, чтобы добавить предварительно скомпилированный набор тестов в репозитории учеников git. Однако проверяемый код - это код шаблона, реализованный в заголовочном файле. Насколько мне известно, это означает, что тесты должны перекомпилироваться каждый раз, когда студент обновляет свой код.