2011-03-03 5 views
11

Tôi đang cố gắng sử dụng fabric để cài đặt và triển khai dự án web trong đó tôi cần tạo cơ sở dữ liệu postgresql và định cấu hình máy chủ RabbitMQ. Cả hai hoạt động này đều tương tác và yêu cầu đầu vào từ người dùng để tạo cơ sở dữ liệu, thêm người dùng, đặt mật khẩu, v.v. (ít nhất là theo kiến ​​thức của tôi).Tôi có thể sử dụng Fabric để thực hiện các lệnh shell tương tác không?

Tôi có thể sử dụng tập lệnh vải để thực hiện thao tác vỏ tương tác như thế này không?

+0

Bạn có biết Kỳ vọng không? Hãy xem http://www.noah.org/wiki/pexpect –

+1

Trình cài đặt phần lớn (được thực hiện tốt) sẽ có cách để tránh các câu hỏi tương tác hoặc ít nhất cung cấp cấu hình để viết câu trả lời. Nó có thể là thuận lợi hơn để nhìn vào đó, trước khi đi vào 'mong đợi' hoặc' pexpect'. – JimB

Trả lời

10

Đây là trong Vải 1.0. Tôi đã thử nó và nó làm việc cho tôi.

Phiên bản cũ hơn của Fabric (và các thư viện SSH cấp cao tương tự) chạy các chương trình từ xa không hoạt động, không thể chạm vào từ đầu cục bộ. Đây là vấn đề khi bạn có nhu cầu nghiêm trọng để nhập mật khẩu hoặc tương tác với chương trình từ xa.

Vải 1.0 và sau đó sẽ phá vỡ bức tường này và đảm bảo bạn luôn có thể nói chuyện với phía bên kia.

Source

Sửa: Như ghi chú payne dưới đây, Vải 1.0 được phát hành. Tôi đã chỉnh sửa câu trả lời để cho biết điều này.

+2

Và Vải 1.0 được phát hành vào ngày 6 tháng 3. – payne