Is there a Rake equivalent in Python?

情到浓时终转凉″ 提交于 2019-12-02 13:56:34
Ned Batchelder

Paver has a similar set of goals, though I don't really know how it compares.

InvokeFabric without the SSH dependencies.

The Fabric roadmap discusses that Fabric 1.x will be split into three portions:

  1. Invoke — The non-SSH task execution.
  2. Fabric 2.x — The remote execution and deployment library that utilizes Invoke.
  3. Patchwork — The "common deployment/sysadmin operations, built on Fabric."

Invoke is a Python (2.6+ and 3.3+) task execution tool & library, drawing inspiration from various sources to arrive at a powerful & clean feature set.

Below are a few descriptive statements from Invoke's website:

  • Invoke is a Python (2.6+ and 3.3+) task execution tool & library, drawing inspiration from various sources to arrive at a powerful & clean feature set.
  • Like Ruby’s Rake tool and Invoke’s own predecessor Fabric 1.x, it provides a clean, high level API for running shell commands and defining/organizing task functions from a tasks.py file.
Gian Marco Gherardi

Waf is a Python-based framework for configuring, compiling and installing applications. It derives from the concepts of other build tools such as Scons, Autotools, CMake or Ant.

charlax

Although it is more commonly used for deployment, Fabric might be interesting for this use case.

There is also doit - I came across it while looking for these things a while ago, though I didn't get very far with evaluating it.

Also check out buildout, which isn't so much a make system for software, as a make system for a deployment.

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

So it's not a direct rake equivalent, but may be a better match for what you want to do, or a really lousy one.

Wernight

There is Phantom in Boo (which isn't Python, but nearly).

Andrew Hare

I would check out distutils:

The distutils package provides support for building and installing additional modules into a Python installation. The new modules may be either 100%-pure Python, or may be extension modules written in C, or may be collections of Python packages which include modules coded in both Python and C.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!