يقوم pyinfra بتحويل كود Python إلى أوامر Shell وتشغيلها على خوادمك. تنفيذ الأوامر المخصصة وكتابة العمليات التصريحية. استهداف خوادم SSH والجهاز المحلي وحاويات Docker. سريع ويتراوح من خادم واحد إلى الآلاف. فكر ansible
ولكن بيثون بدلاً من YAML، وبشكل أسرع كثيرًا.
التوثيق • المساعدة والدعم • المساهمة
لماذا بينفرا؟ تشمل ميزات التصميم ما يلي:
-vvv
). تثبيت pyinfra مع pip
:
pip install pyinfra
يمكنك الآن تنفيذ الأوامر على المضيفين عبر SSH:
pyinfra my-server.net exec -- echo " hello world "
أو استهدف حاويات Docker والجهاز المحلي والموصلات الأخرى:
pyinfra @docker/ubuntu exec -- echo " Hello world "
pyinfra @local exec -- echo " Hello world "
بالإضافة إلى تنفيذ الأوامر، يمكنك تحديد الحالة باستخدام العمليات:
# Install iftop apt package if not present
pyinfra @docker/ubuntu apt.packages iftop update=true _sudo=true
والتي يمكن بعد ذلك حفظها كملف Python مثل deploy.py
:
from pyinfra . operations import apt
apt . packages (
name = "Ensure iftop is installed" ,
packages = [ 'iftop' ],
update = True ,
_sudo = True ,
)
يمكن أيضًا حفظ المضيفين في ملف، على سبيل المثال inventory.py
:
targets = [ "@docker/ubuntu" , "my-test-server.net" ]
وتنفيذها معاً:
pyinfra inventory.py deploy.py
الآن أنت تعرف اللبنات الأساسية لـ pyinfra! من خلال الجمع بين المخزون والعمليات ورمز بايثون، يمكنك نشر أي شيء.
راجع المزيد من التفاصيل حول كيفية البدء أو استخدام أدلة العمليات. تعرف على كيفية استخدام المخزون والبيانات والوسائط العالمية وCLI أو راجع الأمثلة الموثقة.