Как стать автором
Обновить

Комментарии 18

Думаю, хорошей идеей было бы хранить питонячьи зависимости в vcs в файлике requirements.txt, и создавать virtualenv для каждого проекта. Что-нибудь вроде этого:
pip install -sr requirements.txt -E /home/venvs/<project>
/home/venvs/<project>/bin/python manage.py jenkins [app_list]

Спасибо, очень кстати, сам я плохо разбираюсь в лучших практиках использования virtual env.
А особенно хорошей идеей при использовании CI будет использовать ещё и кэш пакетов, что сильно экономит время билда.

Вот пример скрипта деплоя, который использует кэш и разделение зависимостей для ускорения: gist.github.com/847813#file_buildenv.sh
Еще можно просто задавать переменную окружения PIP_DOWNLOAD_CACHE.
Да, так проще, если всё на одном хосте тестируется, деплоится и разрабатывается (;
Я настроил недавно jenkins для PHP-проекта. Ничего не скажу — по удобству опережает CruiseControl+PHPUnderControl, другого не пробовал. Но есть один баг/фича — в codebrowser файлы выводятся полностью на главной странице вне зависимости от вложенности в файловой системе — пример можно посмотреть тут: http://ci.thephp.cc/job/bankaccount/Code_Browser/?. Такой подход хорош когда в проекте пара десятков файлов. У нас же — тысячи (8781 файл, 1002 директории), в игноре примерно половина. Получается — codebrowser прекрасно генерирует файлик отчёта (html), но жопа наступает на этапе его отображения — всё пипец как тормозит (подозреваю — навешиваются события яваскриптовые либо тяжёлые обходы/селекотры) и в конце концов хром крашится.

Так вот вопрос — можно ли как-то список файлов отображать также иерархично, как и в файловой системе?

Мой вопрос на stackoverflow — так на него никто и не ответил, просмотрели ажно 4 раза :)
Тут я тоже не смогу помочь — у нас code browser в redmine.
Настройку Jenkins CI для любого типа проектов нельзя считать завершенной без установки вот этого очень важного плагина ;)!
отличный плагин!
И вот этого плагина тоже: :)!
Не подскажете как прикрутить нагрузочное тестирование? Что бы можно было видеть как производительность меняется от версии к версии, в виде графика например.
Смотря что использовать для нагрузочного тестирования. Я работал только с Apache Jmeter, вот здесь есть неплохая статья как прикрутить его к Jenkins: http://lincolnloop.com/blog/2011/oct/12/load-testing-jmeter-part-2-headless-testing-and-je/. И графики есть вроде бы которые вам нужны.

Спасибо, как вариант можно попробовать.
Спасибо, как раз под руку.
PyLint и на вашем скриншоте показывает лошадиное количество ошибок.
К сожалению, многие из багов в отчете таковыми не являются.
Вы занимались его настройкой для Django-проектов?
Или интеграцией django-lint?
Может быть поделитесь своим pylint.rc?
2500 это еще не так много, я не знаю ваш случай, но в нашем случае большинство ошибок правильные (). К тому же хоть на графике и написано pylint, на самом деле это суммарные ошибки pylint, pyflakes и pep8. Многие из них дублируются, поэтому при исправлении одной — на само деле исправляешь 3.

Посмотрите вот сюда чтобы увидеть по-настоящему большое количество ошибок: )
jenkins.shiningpanda.com/nltk/job/NLTK-py2.5/63/
Ну, есть специфичные для Django косяки. Пример:
E1101: Instance of 'ForeignKey' has no '<field_name>' member

Я только взвел все это дело и душа перфекциониста жаждет только правильных ошибок.
Видимо, придется допиливать django-jenkins и django-lint для этих целей.
Да, есть такие косяки, но по моему опыту они o() малое от остальных.
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации