Есть ли эквивалент Rake в Python?

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

Ответ 1

У Paver такой же набор целей, хотя я не знаю, как он сравнивается.

Ответ 2

Invoke - Ткань без зависимостей SSH.

В Творческой карте обсуждается, что Ткань 1.x будет разделена на три части:

  • Invoke - Выполнение задачи без SSH.
  • Fabric 2.x - Библиотека удаленного исполнения и развертывания, которая использует Invoke.
  • Patchwork - "Общие операции развертывания /sysadmin, построенные на Fabric".

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

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

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

Ответ 4

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

Ответ 5

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

Ответ 6

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

Ответ 7

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

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

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

Ответ 8

В Boo есть Phantom (это не Python, но почти).

Ответ 9

Я бы посмотрел distutils:

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