2009-09-10 27 views
72

Rake es una herramienta de creación de software escrita en Ruby (como ant o make), por lo que todos sus archivos están escritos en este idioma. ¿Existe algo como esto en Python?¿Hay un equivalente de Rake en Python?

+3

¿Está buscando una herramienta de compilación y resolución de dependencia general, como make, que pueda crear proyectos desde cualquier idioma? ¿O algo para construir paquetes de Python específicamente? –

+1

Algo general. El paquete Building Python es interesante, pero se puede realizar con herramientas generales. –

+1

también vea: http://stackoverflow.com/questions/542289/are-there-any-good-build-frameworks-written-in-python –

Respuesta

26

tiene un conjunto de objetivos similares, aunque realmente no sé cómo se compara.

+0

Eso parece definitivamente el más cercano. –

+0

Parece que [perdió impulso en 2011] (http://paver.github.io/paver/changelog.html#changelog) –

+2

El proyecto aún está activo, el registro de cambios ahora está aquí: https://pythonhosted.org /Paver/changelog.html –

-1

Me volvería a la salida distutils:

El paquete proporciona soporte distutils para la construcción e instalación de módulos adicionales en una instalación de Python. Los nuevos módulos pueden ser o bien 100% Python puro al, o pueden ser de extensión módulos escritos en C, o pueden ser colecciones de paquetes de Python que incluir módulos codificados tanto en Python y C.

+0

¿es compatible con cosas como la generación de documentación o la ejecución de pruebas unitarias? – Wernight

5

Waf es un marco basado en Python para configurar, compilar e instalar aplicaciones. Se deriva de los conceptos de otras herramientas de compilación como Scons, Autotools, CMake o Ant.

+1

¿Cuáles son los beneficios de Waf other scons? –

0

Consulte también Buildout, que no es tanto un sistema de creación de software, sino un sistema de marca para una implementación.

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

así que no es un equivalente directo rastrillo, pero puede haber una mejor coincidencia para lo que quieres hacer, o un ser realmente horrible.

+1

Usar buildout para eso es como juntar un tanque para ir al centro comercial, ¿no? El uso de cualquier herramienta Zope/Plone fuera de Zope/Plone generalmente es, de todos modos :-p –

+0

"Para eso"? No especificó para qué lo quería usar. De todos modos, buildout no es una herramienta Zope/Plone. Tampoco es grande o complejo. Realmente es agotador que algunas personas descarten la herramienta solo porque está escrita o usada por los desarrolladores de Zope. Esa actitud es bastante tonta. –

+0

Vamos, eso fue solo una broma. Solía ​​trabajar para una empresa exclusiva de Plone y sí, solíamos hacer muchas bromas sobre las herramientas que estábamos usando. Esa es una actitud sensata, ¿no crees? –

4

Aunque es más comúnmente utilizado para la implementación, Fabric podría ser interesante para este caso de uso.

33

Invoke - Fabric sin las dependencias SSH.

El Fabric roadmap discute que Fabric 1.x se dividirá en tres partes:

  1. Invoke - La ejecución de la tarea no SSH.
  2. Fabric 2.x - La biblioteca de ejecución e implementación remota que utiliza Invoke.
  3. Patchwork - Las "operaciones de despliegue/sysadmin comunes, basadas en Fabric".

invocación es un pitón (2.6+ y 3.3+) herramienta de ejecución de la tarea & biblioteca, inspirándose en diversas fuentes para llegar a un potente conjunto de características & limpio.

A continuación se presentan algunas declaraciones descriptivas de la página web Invoke 's:

  • invocación es un pitón (2.6+ y 3.3+) herramienta de ejecución de la tarea & biblioteca, Con la inspiración de varias fuentes para llegar a una potente & conjunto de características limpias.
  • Al igual que la herramienta Ruby's Rake y el propio predecesor de Invoke, Fabric 1.x, proporciona una API limpia y de alto nivel para ejecutar comandos de shell y definir/organizar funciones de tareas desde un archivo tasks.py.
+1

Y no funciona en Windows en este momento - https://github.com/pyinvoke/invoke/pull/119 –

+0

@IgorZevaka ahora funciona en Windows, el mismo tema - github.com/pyinvoke/invoke/pull/119 –

1

También hay doit - me encontré con él en la búsqueda de estas cosas hace un tiempo, aunque no llegué muy lejos con su evaluación.

Cuestiones relacionadas