KsI-wiki online documents

Deb-build

Материал из Ksimute

Перейти к: навигация, поиск

Правильные пацаны скрипты по серверам раскладывают пакетами. Т.к. это debian way да и апдейтить сотни серверов не имея репозитария, контроля версий и т.п. это ад в реальности. Как билдить пакеты: Вытягиваем из svn исходники:

 packdev:~# svn co https://sources.mydomain.com/svn/operational/munin-plugins/munin-dwh-swap-usage-and-ram-1.0.0

В нем лежит наш

Внимание -1.0.0 обязательно (версия для работы dh_make)

 packdev:~/munin-dwh-swap-usage-and-ram-1.0.0# dh_make -e ksi_korobanov@mail.ru --createorig
 Type of package: single binary

Создаем MakeFile

 packdev:~/munin-dwh-swap-usage-and-ram-1.0.0# packdev-l32:~/munin-plugins/munin-vertica-events-check-1.0.0-1# cat Makefile 
 clean:
         echo "Nothing to clean"
 build:
         echo "Everything is built already"
 install:
         mkdir -p ${DESTDIR}/usr/share/munin/plugins
         cp -p swap-usage* ${DESTDIR}/usr/share/munin/plugins

Правим

 debian/control

добавляем описание создаем postinst по примеру

 case "$1" in
     configure)
     rm /etc/munin/plugins/swap_usage_and_ram
     ln -sf /usr/share/munin/plugins/swap_usage_and_ram /etc/munin/plugins/swap_usage_and_ram
     /etc/init.d/munin-node restart
     ;;
 
     abort-upgrade|abort-remove|abort-deconfigure)
     ;;
 
     *)
         echo "postinst called with unknown argument \`$1'" >&2
         exit 1
     ;;
 esac

Строим пакет

 dpkg-buildpackage

Выкладываем в repo

 dput

Повысить версию пакета на еденичку:

 dch -i -m "what was done in this build"

смена версии

 dch -v 0.3.6-0 -m "what was done in this version"