Có tương đương Rake trong Python không?


87

Rake là một công cụ xây dựng phần mềm được viết bằng Ruby (như Ant hoặc Make ), và vì vậy tất cả các tệp của nó đều được viết bằng ngôn ngữ này. Có cái gì đó như thế này tồn tại trong Python không?


3
Bạn đang tìm kiếm một công cụ xây dựng và phân giải phụ thuộc chung, như make, có thể xây dựng các dự án từ bất kỳ ngôn ngữ nào? Hoặc một cái gì đó để xây dựng các gói python cụ thể?
Ian Clelland 10/09/09

1
Một cái gì đó chung chung. Xây dựng gói Python rất thú vị, nhưng có thể được thực hiện bằng các công cụ chung.
e-thoả mãn



4
Có ai đến đây từ đường trượt Joe Armstrong không? youtu.be/lKXe3HUG2l4?t=1270
nephewtom

Câu trả lời:


28

Paver có một bộ mục tiêu tương tự, mặc dù tôi không thực sự biết nó so sánh như thế nào.


Điều đó có vẻ rõ ràng là gần nhất.
e-thoả mãn

1
Đó dường như có đà mất vào năm 2011
John Mee

2
Dự án này là vẫn còn hoạt động, các thay đổi bây giờ là ở đây: pythonhosted.org/Paver/changelog.html
Stefan Schmidt

1
Phiên bản mới nhất tại pythonhosted.org/Paver/changelog.html1.1.0 (July 30, 2012)
clacke

37

Gọi - Vải không có phụ thuộc SSH.

Các Vải lộ trình thảo luận rằng Vải 1.x sẽ chia thành ba phần:

  1. Gọi - Thực thi tác vụ không phải SSH.
  2. Fabric 2.x - Thư viện triển khai và thực thi từ xa sử dụng Invoke .
  3. Patchwork - "Các hoạt động triển khai / sysadmin phổ biến, được xây dựng trên Fabric."

Invoke là một thư viện và công cụ thực thi tác vụ Python (2.6+ và 3.3+), lấy cảm hứng từ nhiều nguồn khác nhau để đi đến một bộ tính năng mạnh mẽ và sạch sẽ.

Dưới đây là một số tuyên bố mô tả từ trang web của Invoke :

  • Invoke là một thư viện và công cụ thực thi tác vụ Python (2.6+ và 3.3+), lấy cảm hứng từ nhiều nguồn khác nhau để đi đến một bộ tính năng mạnh mẽ và sạch sẽ.
  • Giống như công cụ Rake của Ruby và công cụ tiền thân của Invoke là Fabric 1.x, nó cung cấp một API cấp cao, sạch để chạy các lệnh shell và xác định / tổ chức các chức năng tác vụ từ tệp task.py.

1
@IgorZevaka bây giờ nó hoạt động trên cửa sổ, cùng một chủ đề - github.com/pyinvoke/invoke/pull/119
La Mã M. Koss

Là người dùng Shovel khoảng 4 năm trước. Chắc chắn đi với Invoke ngay bây giờ. Giao diện dòng lệnh cực hay, khai báo nhiệm vụ đẹp và dễ dàng, cảm giác xâu chuỗi giống như của Make. Đẹp.
ddotsenko


6

Waf là một khuôn khổ dựa trên Python để định cấu hình, biên dịch và cài đặt ứng dụng. Nó bắt nguồn từ các khái niệm của các công cụ xây dựng khác như Scons, Autotools, CMake hoặc Ant.


1
Những lợi ích của Waf scons khác là gì?
e-thoả mãn

5

Mặc dù nó được sử dụng phổ biến hơn để triển khai, nhưng Fabric có thể thú vị cho trường hợp sử dụng này.


4

Ngoài ra còn có một số việc làm - tôi đã xem qua nó khi đang tìm kiếm những thứ này cách đây một thời gian, mặc dù tôi không đi được xa lắm khi đánh giá nó.


0

Ngoài ra, hãy xem bản dựng, vốn không phải là một hệ thống tạo cho phần mềm, cũng như một hệ thống tạo cho việc triển khai.

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

Vì vậy, nó không phải là tương đương cào trực tiếp, nhưng có thể phù hợp hơn với những gì bạn muốn làm, hoặc thực sự tệ hại.


1
Sử dụng bồi bổ cho điều đó giống như đùa một chiếc xe tăng để đi đến trung tâm mua sắm, phải không? Sử dụng bất kỳ công cụ Zope / Plone ngoài Zope / Plone thường, dù sao :-p
e-satis

"Vì điều đó"? Anh ấy không nói rõ anh ấy muốn sử dụng nó để làm gì. Dù sao, buildout không phải là một công cụ Zope / Plone. Nó cũng không lớn hoặc phức tạp. Việc trích dẫn thực sự mệt mỏi rằng một số người sẽ loại bỏ công cụ chỉ vì nó được viết bởi các nhà phát triển Zope. Đó là thái độ nó khá đẹp.
Lennart Regebro 11/09/09

Thôi nào, đó chỉ là trêu chọc thôi. Tôi đã từng làm việc cho một công ty chỉ có Plone và vâng, chúng tôi thường đùa cợt về những công cụ mà chúng tôi đang sử dụng. Đó là một thái độ lành mạnh, bạn có nghĩ vậy không?
e-thoả mãn


-2

Tôi sẽ kiểm tra distutils:

Các distutilsgói hỗ trợ cho việc xây dựng và lắp đặt các module bổ sung vào một cài đặt Python. Các mô-đun mới có thể là 100% -pure Python hoặc có thể là các mô-đun mở rộng được viết bằng C hoặc có thể là bộ sưu tập các gói Python bao gồm các mô-đun được mã hóa bằng cả Python và C.


nó có hỗ trợ những thứ như tạo tài liệu hoặc chạy thử nghiệm đơn vị không?
Wernight
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.