2009-09-10 2 views
72

Rake - это инструмент для создания программного обеспечения, написанный на Ruby (например, ant или make), и поэтому все его файлы написаны на этом языке. Что-то вроде этого существует в Python?Есть ли эквивалент Rake в Python?

+3

Вы ищете общее разрешение и инструмент построения зависимостей, например make, который может создавать проекты с любого языка? Или что-то для сборки пакетов python? –

+1

Что-то общее. Создание пакета Python интереснее, но может быть выполнено с помощью общих инструментов. –

+1

также см .: http://stackoverflow.com/questions/542289/are-there-any-good-build-frameworks-written-in-python –

ответ

26

Paver имеет аналогичный набор целей, хотя я не знаю, как он сравнивается.

+0

Это кажется определенно самым близким. –

+0

Это похоже на [потерянный импульс в 2011 году] (http://paver.github.io/paver/changelog.html#changelog) –

+2

Проект по-прежнему активен, журнал изменений теперь находится здесь: https://pythonhosted.org /Paver/changelog.html –

-1

Я хотел бы проверить distutils:

Пакет distutils обеспечивает поддержку для создания и установки дополнительных модулей в установке Python. Новые модули могут быть либо 100% Python-чистой или может быть расширение модули написаны на C, или может быть коллекции пакетов Python, которые включают в себя модули кодированные как в Python и C.

+0

поддерживает ли она такие вещи, как создание документации или запуск модульных тестов? – Wernight

5

Waf - это основанная на Python инфраструктура для настройки, компиляции и установки приложений. Он основан на концепциях других инструментов построения, таких как Scons, Autotools, CMake или Ant.

+1

Каковы преимущества Won других scons? –

0

Также ознакомьтесь с конструкцией, которая является не столько системой make для программного обеспечения, сколько системой создания для развертывания.

http://pypi.python.org/pypi/pysqlite/2.5.5

Так что это не является прямым рейк эквивалентом, но может быть лучше подходит для того, что вы хотите сделать, или действительно паршивый один.

+1

Использование buildout для этого похоже на попытку танков пойти в торговый центр, не так ли? Использование любых инструментов Zope/Plone вне Zope/Plone вообще, в любом случае: -p –

+0

«Для этого»? Он не уточнил, для чего он хотел его использовать. В любом случае, buildout не является инструментом Zope/Plone. Он также не большой или сложный. На самом деле, цитата устала, что некоторые люди будут увольнять инструмент только потому, что это написано разработчиками Zope или используется ими. Это отношение это довольно глупо. –

+0

Да ладно, это было просто дразнить. Раньше я работал в компании Plone, и да, мы используем много шуток о инструментах, которые мы использовали. Это разумное отношение, не так ли? –

4

Хотя этот вариант чаще используется для развертывания, Fabric может быть интересен для этого варианта использования.

33

Invoke - Fabric без зависимостей SSH.

Fabric roadmap обсуждает, что Fabric 1.x будет разделен на три части:

  1. Invoke - На выполнение задания без SSH.
  2. Fabric 2.x - Библиотека удаленного исполнения и развертывания, которая использует Invoke.
  3. Patchwork - «Общие операции развертывания/сисадмина, построенные на основе ткани».

Invoke является Python (2.6+ и 3.3+) выполнение задачи инструмента & библиотеки, черпая вдохновение из различных источников, чтобы прийти к мощной & чистого набора функций.

Ниже приведены несколько описательных заявления с сайта Invoke «s:

  • Invoke является Python (2.6+ и 3.3+) инструмента выполнения задачи & библиотеки, черпая вдохновение из разных источников, чтобы прийти к мощный & clean особенность комплект.
  • Как инструмент Rake Ruby и собственный предшественник Invoke Fabric 1.x, он предоставляет чистый API высокого уровня для запуска команд оболочки и определения/организации функций задачи из файла tasks.py.
+1

И на данный момент это не работает на Windows - https://github.com/pyinvoke/invoke/pull/119 –

+0

@IgorZevaka теперь работает на окнах, ту же тему - github.com/pyinvoke/invoke/pull/119 –

1

Существует также doit - я наткнулся на него, глядя на эти вещи некоторое время назад, хотя я не очень далеко с оценкой ее.

Смежные вопросы