| Создание кросс - платформенного инструмента сборки |
|
Мы уже знаем, как распределять работу между несколькими машинами, как определять тип операционной системы, под управлением которой выполняется сценарий, и, наконец, создавать универсальную декларацию с помощью менеджера пакетов ЕРМ, который способен создавать специализированные пакеты в зависимости от типа операционной системы. Почему бы нам не объединить все это вместе? Мы можем использовать эти три приема, чтобы создать кросс-платформенный инструмент сборки. С появлением технологии виртуальных машин стало весьма просто создавать виртуальные машины для любых свободно распространяемых UNIX-подобных операционных систем, таких как Deьian/Ubuntu, Red Hat/CentOS, FreeBSD и Solarls. Теперь, создав инструмент, который вы хотите сделать доступным всему миру или просто коллегам в вашей компании, вы легко и просто можете создать «сборочный цех», возможно даже на своем ноутбуке, где ведется разработка сценария, и создавать специализированные пакеты сразу же с этим сценарием. Как это будет работать? Самый простой способ достичь этого - создать общее дерево сборки пакета на разделе NFS и предоставить доступ к этой точке монтирования всем серверам сборки. После этого, используя инструменты, созданные нами ранее, настроить серверы на сборку пакетов в каталоге NFS. Менеджер пакетов ЕРМ позволяет создавать простые декларации, или «списки» файлов, кроме того, у нас имеется модуль fingerprint, поэтому самое сложное уже позади. Осталось написать программный код, который делает только то, что осталось.
Теперь можно отредактировать конфигурационный файл config.ini, переориентировав его на запуск нового сценария.
Теперь осталось только запустить многопоточную версию инструмента сборки и - эврика! - нам удалось создать пакеты для CentOS, Ubuntu, Ниже показано, как может выглядеть сценарий сборки: Red Hat, FreeBSD и Solarls за считанные секунды. Этот сценарий еще нельзя рассматривать как окончательную рабочую версию программного кода, так как в нем отсутствует обработка ошибок, но он прекрасно демонстрирует, что позволяет сделать язык Python на скорую руку, всего за несколько минут или часов.
Related Articles
Set as favorite
Bookmark
Email This
Hits: 302 Комментарии (0)RSS feed CommentsНаписать комментарий |