Split distbuild task into two parts
This commit is contained in:
parent
e7eb367383
commit
515a3bc4ce
10 changed files with 34 additions and 13 deletions
|
@ -1,3 +1,17 @@
|
|||
- group: [HW] Distbuild blocks
|
||||
start: 09-04-2020 18:00
|
||||
deadline: 30-04-2020 23:59
|
||||
tasks:
|
||||
- task: disttest
|
||||
score: 0
|
||||
|
||||
- group: Distbuild blocks
|
||||
start: 09-04-2020 18:00
|
||||
deadline: 23-04-2020 23:59
|
||||
tasks:
|
||||
- task: distbuild
|
||||
score: 300
|
||||
|
||||
- group: Concurrency with shared memory
|
||||
start: 26-03-2020 18:00
|
||||
deadline: 05-04-2020 23:59
|
||||
|
|
|
@ -85,17 +85,17 @@ type Job struct {
|
|||
|
||||
Рекомендуемый порядок выполнения:
|
||||
|
||||
- [`distbuild/pkg/build`](./distbuild/pkg/build) - определение графа сборки. В этом пакете ничего писать не нужно,
|
||||
- [`distbuild/pkg/build`](./pkg/build) - определение графа сборки. В этом пакете ничего писать не нужно,
|
||||
нужно ознакомиться с существующим кодом.
|
||||
- [`distbuild/pkg/tarstream`](./distbuild/pkg/tarstream) - передача директории через сокет.
|
||||
- [`distbuild/pkg/api`](./distbuild/pkg/api) - протокол общения между компонентами.
|
||||
- [`distbuild/pkg/artifact`](./distbuild/pkg/artifact) - кеш артефактов и протокол передачи артефактов между воркерами.
|
||||
- [`distbuild/pkg/filecache`](./distbuild/pkg/filecache) - кеш файлов и протокол передачи файлов между компонентами.
|
||||
- [`distbuild/pkg/scheduler`](./distbuild/pkg/filecache) - планировщик с эвристикой локальности.
|
||||
- [`distbuild/pkg/tarstream`](./pkg/tarstream) - передача директории через сокет.
|
||||
- [`distbuild/pkg/api`](./pkg/api) - протокол общения между компонентами.
|
||||
- [`distbuild/pkg/artifact`](./pkg/artifact) - кеш артефактов и протокол передачи артефактов между воркерами.
|
||||
- [`distbuild/pkg/filecache`](./pkg/filecache) - кеш файлов и протокол передачи файлов между компонентами.
|
||||
- [`distbuild/pkg/scheduler`](./pkg/scheduler) - планировщик с эвристикой локальности.
|
||||
|
||||
После того, как все кубики будут готовы, нужно будет соединить их вместе, реализовав `distbuild/pkg/worker`,
|
||||
`distbuild/pkg/client` и `distbuild/pkg/coordinator`. Код в этих пакетах нужно отлаживать на
|
||||
интеграционных тестах в [`distbuild/disttest`](./distbuild/disttest).
|
||||
`distbuild/pkg/client` и `distbuild/pkg/dist`. Код в этих пакетах нужно отлаживать на
|
||||
интеграционных тестах в [`distbuild/disttest`](../disttest).
|
||||
|
||||
Код тестов в этом задании менять нельзя. Это значит, что вы не можете менять интерфейсы в тех местах, где
|
||||
код покрыт тестами.
|
||||
|
@ -132,7 +132,14 @@ prime@bee ~/C/shad-go> find distbuild -iname '*.go' | grep -v test | grep -v moc
|
|||
|
||||
# Критерии оценки
|
||||
|
||||
Решение должно проходить все тесты, так же как в обычной задаче. После успешной попытки, в таблице gdoc
|
||||
Решение должно проходить все тесты, так же как в обычной задаче.
|
||||
|
||||
Задача разбита на две части:
|
||||
- `distbuild` проверяет решение всех "кубиков". Эта задача расчитывается как обычная семинарская.
|
||||
- `disttest` проверяет интеграционные тесты. Эта задача оценивается как домашка. После успешной попытки, в таблице gdoc
|
||||
будет стоять 0. После этого, проверяющие должны будут просмотреть решение и заменить оценку в таблице на 1.
|
||||
Это будет значить, что задача засчитана. Code Review не будет, проверка нужна только чтобы удостовериться что
|
||||
Это будет значить, что домашнее задание засчитано. Code Review не будет, проверка нужна только чтобы удостовериться что
|
||||
посылка честно проходит все тесты. Отдельный Merge Request создавать не нужно.
|
||||
|
||||
Чтобы запустить проверку внутри `disttest`, сделайте коммит добавляющий незначащий перенос строки в какой-нибудь файл
|
||||
из этой директории.
|
||||
|
|
Loading…
Reference in a new issue