04.24 Автоматизация
- Коротко: задача автоматизации
- Гернераты: промежуточные и целевые
Принципы (на примере преобразования diagram.dia):
- FIXME: не работает под виндой
dia diagram.dia -s 1024 -e picture.png
целевые файлы (→ .png)
зависимости между заданиямиa ( → convert .icon)
Подзадания (в несколько размеров)
Скопировать решение Задания 0 из позапрошлого семинара (программа + перевод) и автоматизировать перевод:
pot Выгонку шаблона (.pot)
po Обновление перевода по шаблону
mo Выгонку скомпилированного перевода
(FIXME: сложно!) full-mo Выдаёт ошибку, если перевод неполон
образец описания целей для автоматизации перевода смотрите здесь, можно копировать куски doit-файла
Сделать тест для функциональности предыдущего упражнения (необязательно содержательный) и автоматизировать его запуск
Сделать удаление промежуточных генератов (целевые, например, .mo, оставить)
Д/З
Задача_1. Автоматизация сборки для MUD.
Скопировать решение Задачи_1 с предыдущего занятия. Сделать коммит. Работать на ветке work.
реализовать цель i18n для полной генерации перевода
- реализовать цели-шаги генерации перевода, как в описанном выше упражнении
цель i18n должна зависеть от этих целей-шагов
реализовать цель html для генерации html-документации
реализовать цель test для прогона тестов связки клиент+сервер (зависит от цели i18n, потому что проверяет русифицированные ответы сервера)
для каждой цели реализовать удаление генератов (использовать атрибут clean и функцию clean_targets; для удаления каталога с документацией использовать функцию shutil.rmtree)
цель по умолчанию: html