Створення Buildout-a на Linux-i
В даній статті описується процес створення Buildout-a, який є одним із способів встановлення Плону.
Buildout - це інструмент, що дозволяє створювати середовище для розробки і кінцевої збірки пітонівського коду, в тому числі Zope і Plone, а також деяких інших продуктів і бібліотек.
Якщо простіше, то buildout - є простим та надійним способом встановлення Плону.
Для того, аби встановити buildout нам необхідно мати встановлений python-2.4.4 (надалі вважатимемо, що ця версія python-у встановлена по замовчуванню).
Отже, розпочинаємо.
Першим кроком завантажуємо скрипт ez_setup.py, який дозволить завантажити та встановити setuptools та easy_install, необхідні для подільшої роботи з білдаутом. Запускаємо ez_setup.py встановленим python-ом (python-2.4.4):
$ python ez_setup.py
Тепер для отримання шаблонів Zope і Plone встановлюємо ZopeSkel за допомогою щойно встановленого easy_install скрипта:
$ easy_install -U ZopeSkel
Після цієї команди в під-папці bin нашого python матимемо скрипт paster. З його допомогою створюємо шаблон для майбутнього білдавта:
$ paster create -t plone3_buildout myproject
де, myproject - це ім'я проекту (директорія, де буде створений buildout). При виконанні цієї команди система попросить, щоб Ви ввели ім'я адміністратора та пароль, також запитає ввімкнути чи вимкнути debug режим (відлагоджувальний режим роботи сервера, який використовується в процесі розробки) та інше.
Наступним кроком необхідно перейти в директорію створеного вами/нами :) проекту, в нашому випадку це myproject і запустити завантажувальний скрипт buildout-а:
$ cd myproject $ python bootstrap.py
Цей крок необхідно виконати лише один раз. Він стягує необхідні пакети для збірки самого buildout-а.
Щоб розпочати роботу виконайте:
$ ./bin/buildout
Ця операція зчитує buildout.cfg і виконує різні його "частини".
Загалом, потрібно запускати ./bin/buildout кожного разу при внесенні зміні в файл buildout.cfg. Але, якщо Ви не хочете, щоб buildout затягував і дивився в інтернеті за оновленими версіями egg або завантажував інші вже існуючі архіви, Ви можете запустити його в автономному режимі:
$ ./bin/buildout -No
Для запуску Zope, виконайте:
$ ./bin/instance fg
В мене на цьому етапі виникла помилка, пов'язана з відсутністю пакету PIL (Python Imaging Library), що перешкоджала запуску інстанса. Для того, аби вирішити цю проблему, в файлі buildout.cfg у блоці eggs дописую PILwoTK:
# e.g. eggs = Plone my.package
eggs =
Plone
${buildout:eggs}
PILwoTK
Після цього перезбираю билдаут і перезапускаю інстанс:
$ ./bin/buildout -No $ ./bin/instance fg
В принципі тепер мало б усе працювати :)
А для того, аби при кожному додаванні пакетів Вам не приходилось прописувати їх вручну, в buildout.cfg додаємо ще один блок
extensions = buildout.eggtractor
Ось ніби і усе.

