คำถามติดแท็ก fabric

9
เปิดใช้งาน Virtualenv ผ่านแฟบริคในฐานะผู้ใช้ปรับใช้
ฉันต้องการเรียกใช้สคริปต์แฟบริคของฉันในเครื่องซึ่งจะเข้าสู่ระบบเซิร์ฟเวอร์ของฉันเปลี่ยนผู้ใช้เพื่อปรับใช้เปิดใช้งานโปรเจ็กต์. virtualenv ซึ่งจะเปลี่ยน dir ให้กับโปรเจ็กต์และออก git pull def git_pull(): sudo('su deploy') # here i need to switch to the virtualenv run('git pull') ฉันมักจะใช้คำสั่ง workon จาก Virtualenvwrapper ซึ่งเป็นแหล่งที่มาของไฟล์เปิดใช้งานและไฟล์ postactivate จะทำให้ฉันอยู่ในโฟลเดอร์โครงการ ในกรณีนี้ดูเหมือนว่าเนื่องจากผ้าทำงานจากภายในเชลล์การควบคุมจึงมอบให้กับผ้าดังนั้นฉันจึงไม่สามารถใช้แหล่งที่มาของ bash ในตัวเป็น '$ source ~ / .virtualenv / myvenv / bin / enable' ใครมีตัวอย่างและคำอธิบายว่าพวกเขาทำอย่างไร

5
ส่งผ่านพารามิเตอร์ไปยังงานแฟบริค
ฉันจะส่งผ่านพารามิเตอร์ไปยังงานแฟบริคได้อย่างไรเมื่อเรียก "fab" จากบรรทัดคำสั่ง ตัวอย่างเช่น: def task(something=''): print "You said %s" % something $ fab task "hello" You said hello Done. เป็นไปได้ไหมที่จะทำสิ่งนี้โดยไม่ต้องแจ้งด้วยfabric.operations.prompt?
123 python  fabric 

15
วิธีตั้งค่าโฮสต์เป้าหมายในไฟล์ Fabric
ฉันต้องการใช้ Fabric เพื่อปรับใช้โค้ดเว็บแอปของฉันกับเซิร์ฟเวอร์การพัฒนาการจัดเตรียมและการใช้งานจริง fabfile ของฉัน: def deploy_2_dev(): deploy('dev') def deploy_2_staging(): deploy('staging') def deploy_2_prod(): deploy('prod') def deploy(server): print 'env.hosts:', env.hosts env.hosts = [server] print 'env.hosts:', env.hosts ตัวอย่างผลลัพธ์: host:folder user$ fab deploy_2_dev env.hosts: [] env.hosts: ['dev'] No hosts found. Please specify (single) host string for connection: เมื่อฉันสร้างset_hosts()งานตามที่แสดงในเอกสาร Fabric env.hosts จะถูกตั้งค่าอย่างถูกต้อง อย่างไรก็ตามนี่ไม่ใช่ตัวเลือกที่เป็นไปได้และไม่ใช่มัณฑนากร การส่งโฮสต์ในบรรทัดคำสั่งในที่สุดจะส่งผลให้เชลล์สคริปต์บางประเภทเรียก …
107 python  host  fabric 

8
การใช้คีย์ไฟล์ SSH กับ Fabric
คุณกำหนดค่าแฟบริกเพื่อเชื่อมต่อกับโฮสต์ระยะไกลโดยใช้คีย์ไฟล์ SSH ได้อย่างไร (ตัวอย่างเช่นอินสแตนซ์ Amazon EC2)
100 python  fabric 

7
วิธีดำเนินงานต่อเมื่อ Fabric ได้รับข้อผิดพลาด
เมื่อฉันกำหนดงานให้รันบนเซิร์ฟเวอร์ระยะไกลหลายตัวหากงานนั้นทำงานบนเซิร์ฟเวอร์หนึ่งและออกโดยมีข้อผิดพลาด Fabric จะหยุดและยกเลิกงานนั้น แต่ฉันต้องการทำให้ fabric ละเว้นข้อผิดพลาดและเรียกใช้งานบนเซิร์ฟเวอร์ถัดไป ฉันจะทำมันได้อย่างไร? ตัวอย่างเช่น: $ fab site1_service_gw [site1rpt1] Executing task 'site1_service_gw' [site1fep1] run: echo 'Nm123!@#' | sudo -S route [site1fep1] err: [site1fep1] err: We trust you have received the usual lecture from the local System [site1fep1] err: Administrator. It usually boils down to these three things: …
94 python  fabric 

4
จะคอมไพล์อะไรโดยไม่มีข้อผิดพลาดได้อย่างไร?
ฉันกำลังพยายามเขียนสคริปต์ผ้าที่ทำ a git commit; 1แต่ถ้ามีอะไรที่จะกระทำออกคอมไพล์กับสถานะของ สคริปต์การปรับใช้ถือว่าไม่สำเร็จและออกจากระบบ ฉันต้องการตรวจจับความล้มเหลวที่เกิดขึ้นจริงดังนั้นฉันจึงไม่สามารถเพิกเฉยต่อgit commitความล้มเหลวของผ้าได้ ฉันจะปล่อยให้ความล้มเหลวของการคอมมิตว่างถูกละเว้นได้อย่างไรเพื่อให้การปรับใช้ดำเนินต่อไปได้ แต่ยังตรวจจับข้อผิดพลาดที่เกิดขึ้นเมื่อการคอมมิตจริงล้มเหลว def commit(): local("git add -p && git commit")
92 python  git  fabric 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.