2011-03-03 3 views
11

fabric을 사용하여 웹 프로젝트를 설치하고 배포하는 동안 postgresql 데이터베이스를 만들고 RabbitMQ 서버를 구성해야합니다. 이 두 가지 작업은 대화식이며 사용자 생성, 데이터베이스 추가, 사용자 추가, 비밀번호 설정 등의 작업을 수행해야합니다.패브릭을 사용하여 대화식 셸 명령을 수행 할 수 있습니까?

패브릭 스크립트를 사용하여 이와 같은 중간 셸 작업을 수행 할 수 있습니까?

+0

Expect를 알고 있습니까? http://www.noah.org/wiki/pexpect –

+1

대부분의 (잘 만들어진) 설치 프로그램은 대화식 질문을 피하는 방법을 제공하거나 적어도 대답을 스크립트로 작성하는 구성을 제공합니다. 'expect' 또는'pexpect'에 들어가기 전에 살펴 보는 것이 더 유리할 수 있습니다. – JimB

답변

10

이것은 Fabric 1.0에 있습니다. 나는 그것을 시도하고 그것은 나를 위해 작동합니다.

이전 버전의 Fabric (및 유사한 고급 SSH 라이브러리)은 원격 프로그램을 림보 (limbo)로 실행하며 로컬 끝에서 손을 뗄 수 없습니다. 암호를 입력하거나 원격 프로그램과 상호 작용할 필요가있을 때 문제가됩니다.

패브릭 1.0 이상이이 벽을 세분화하여 항상 상대방과 대화 할 수 있습니다.

Source

은 편집는 아래 페인 노트로서, 패브릭 1.0이 출시되었습니다. 나는 그것을 나타 내기 위해 답을 편집했다.

+2

Fabric 1.0은 3 월 6 일에 릴리스되었습니다. – payne