Fabric: Fabric 2 - Jalankan tugas di Grup (dengan argumen)

Dibuat pada 8 Des 2017  ·  5Komentar  ·  Sumber: fabric/fabric

Aku punya tugas yang memiliki argumen. Saya ingin menjalankan tugas ini pada sekelompok host, dengan argumen berbeda untuk tugas tergantung pada Host, dari dalam skrip Python lain.

Komentar dalam execute mengatakan untuk mengimplementasikannya sesuai tutorial. Bisakah saya mendapatkan tautan ke tutorial ini? Dan jika saya membuatnya bekerja / membuatnya bekerja dengan argumen yang diteruskan, apakah ini akan menjadi permintaan tarikan selamat datang?

Feature Group

Komentar yang paling membantu

Fitur ini sangat dibutuhkan untuk Fabric2. Ada ide kapan akan digabung?

Semua 5 komentar

Saya pikir ini adalah hal yang paling dekat dengan tutorial Fabric 2: http://docs.fabfile.org/en/stable/getting_started.html

Saya ingin menjalankan tugas ini pada sekelompok host, dengan argumen berbeda untuk tugas tergantung pada Host, dari dalam skrip Python lain.

Tidak mengetahui kasus penggunaan Anda yang sebenarnya, dan memperhatikan bahwa Grup belum disempurnakan dengan sangat baik (fokusnya adalah untuk mendapatkan Koneksi dalam kondisi yang baik), saya akan menunjukkan bahwa _sejauh ini_, Grup telah dipahami sebagai API kenyamanan/pembungkus hanya - ini adalah kasus umum "Saya memberi Anda daftar nama host dan hal yang harus dilakukan dan Anda melakukannya untuk saya, tanpa saya harus menulis loop saya sendiri."

Untuk sesuatu yang lebih kompleks, idenya adalah masih cukup mudah untuk melakukannya sendiri menggunakan Koneksi yang dibuat secara manual dalam konstruksi Python apa pun yang sesuai dengan kasus penggunaan Anda (iterasi, dll.) Jadi dalam kasus ini, Anda akan memiliki 'meta' tugas melakukan sesuatu seperti for hostname, kwargs in my_map_of_hostnames_to_kwargs.items(): othertask(Connection(hostname), **kwargs) .

(Itu masih menyisakan pyinvoke/invoke#170, atau kemungkinan kecil, #4, tetapi untuk saat ini keduanya dapat diselesaikan.)

Jika Anda memberikan detail tentang use case, mungkin salah satu dari kami dapat menjelaskan lebih lanjut.


Re: tutorial: ya halaman 'memulai' adalah tutorial, bagian spesifik yang berpura-pura tahu tentang Group.execute adalah http://docs.fabfile.org/en/v2/getting_started.html#bringing -it-all -bersama - tetapi seperti di atas, perilakunya belum benar-benar dipikirkan!

Terima kasih banyak untuk tutorial v2 ini. Saya telah menemukan sumbernya di GitHub tetapi lalai membacanya.

cxn = Connection(host) adalah bagian penting yang saya lewatkan; bagian dari tutorial yang saya temukan tidak menyebutkan apa itu cxn, dan saya tidak cukup menggali untuk mengetahui bahwa itu hanya Koneksi.

Saya sudah menulis kode yang saya butuhkan ketika saya memposting ini menggunakan port Fabric3, tetapi dengan pikiran untuk pindah ke v2 setelah di PyPi. Terima kasih untuk waktu kalian!

Sunting: Ini mungkin membantu calon pengguna di masa mendatang jika Anda menambahkan tautan ke tutorial v2 itu ke dalam README di sini. Saya akan menarik permintaannya tetapi sepertinya agak berlebihan untuk perubahan satu baris: p

Tidak bisakah host dimuat secara otomatis dari file konfigurasi fabric.json alih-alih meneruskannya ke argumen -D pada baris perintah?

Fitur ini sangat dibutuhkan untuk Fabric2. Ada ide kapan akan digabung?

Apakah halaman ini membantu?
0 / 5 - 0 peringkat