27.06.2012 12:22, Igor Chumak пишет:
26.06.2012 20:14, "Артём Н." пишет:
26.06.2012 12:54, Igor Chumak пишет:
25.06.2012 18:03, "Артём Н." пишет:
Я "наворачиваю" не для того, чтобы "круто на баш написать" и не из-за проблем с
головой, а для того, чтобы попробовать TDD (или хотя бы просто unit тесты) там,
где его обычно не используют... На перспективу. Пока что, не особенно хорошо
получается. :-)
Было бы интересно посмотреть.
Да что там интересного? Я только пытаюсь, пока-что. Взял небольшую задачу,
которую требуется выполнить. Конкретно: требуется бэкап-скрипт. Но нужно
сохранять не только иерархию каталогов, но и некоторые служебные данные: LVM,
LUKS заголовки, дамп БД и т.п.. Причём, используя для бэкапа тот же самый
rdiff-backup, который используется для сохранения каталогов.
Каталоги для сохранения - в отдельном списке.
Развернуть bacula будет быстрее ;)
Но не лучше:
1. Bacula Не подходит для такой простой задачи.
2. Всё, что мне нужно, делает rdiff-backup.
3. Сделав, используя готовое решение, я не получу того, что мне нужно.
Это мы проверяем скрипт на связность тегов ###TESTING и ###/TESTING?
А смысл?
Это я вырезаю всё, что между тегами. Смысл - убрать всю тестирующую фигню и
получить на выходе готовый скрипт.
grep "###/*TESTING" script.sh выведет теги на экран, глаз несвязность и так
заметит. Единоразово прокатит, а автоматически проверять - не вижу смысла.
См. выше.
запустили backup || свалились по ошибке
Так и делаю. Сам backup - просто запуск rdiff-backup с нужными параметрами.
Но есть два типа бэкапа: полный и декрементальный. Скрипт должен определить
какой делать (к примеру, в случае полного бэкапа, не нужно удалять старые (да,
если запустить rdiff-backup --remove-older-than, он сам определит нужно ли
удалять, но так неинтересно)).