جب کوئی موجودہ provisioning اسکرپٹ پروکسی کے ذریعے pip چلانا چاہے تو pip کو subprocess کے طور پر شروع کریں۔ pip کے اندرونی Python فنکشنز کوئی معاون ایپلیکیشن API نہیں ہیں۔

import subprocess
import sys

subprocess.run([
    sys.executable,
    '-m', 'pip', 'install',
    '--proxy', 'http://proxy.example:8080',
    'example-package',
], check=True)

مطلوبہ پیکیج اور پروکسی اینڈ پوائنٹ استعمال کریں۔ عوامی ثالث کے ذریعے اجازت یافتہ عوامی پیکیج ڈاؤن لوڈز کے لیے HTTP پروکسی فہرست HTTP پروکسی دلیل کے لیے امیدوار فراہم کرتی ہے۔ sys.executable وہ Python ترجمان منتخب کرتا ہے جو اسکرپٹ چلا رہا ہے، اس طرح PATH سے کسی دوسری تنصیب کے pip کو اتفاقاً کال کرنے سے بچا جاتا ہے۔

ہر دلیل الگ فہرست عنصر میں رہتی ہے۔ کسی شیل کی ضرورت نہیں، اور پروکسی URL کو اضافی جوڑی میں ایمبیڈڈ شیل اقتباسات کی ضرورت نہیں۔ check=True تنصیب ناکام ہونے پر CalledProcessError اٹھاتا ہے، جس سے provisioning ورک فلو اُس ناکامی کو سنبھال سکتا ہے۔

ڈاؤن لوڈ راستہ اِس pip کال پر یا اُس کے subprocess ماحول میں ترتیب دیں۔ بنیادی پروگرام میں کہیں اور ترتیب دیا گیا Requests سیشن pip کے الگ عمل کو ترتیب نہیں دیتا۔

تنصیب کے بعد ایپلیکیشن کے معمول کے ماحولیاتی زندگی کے دورانیے کو جاری رکھیں۔ پہلے سے چل رہے ترجمان میں تنصیب اس بات کی ضمانت نہیں دیتی کہ اُس کی موجودہ درآمدات، کیشے یا راستے نئے پیکیج کی فوری عکاسی کریں گے۔

متعلقہ مضامین