اگر Cloud Composer ٹاسک کو پراکسی کے ذریعے ایک بیرونی HTTP درخواست درکار ہو تو HTTP کلائنٹ کو ٹاسک کے callable کے اندر ترتیب دیں:

def fetch_status():
    import requests

    with requests.Session() as session:
        session.trust_env = False
        with session.get(
            'https://api.example/health',
            proxies={'https': 'http://proxy.example:8080'},
            timeout=(5, 30),
        ) as response:
            response.raise_for_status()
            return response.status_code

یہ callable DAG کی موجودہ ٹاسک ترتیب کے ذریعے استعمال کریں۔ پراکسی ٹاسک چلانے والے worker سے قابلِ رسائی ہونا چاہیے۔ پراکسی تصدیق کے بغیر اجازت یافتہ عوامی API کالوں کے لیے، HTTP پراکسی فہرست سیشن کے HTTP پراکسی URL کے لیے امیدوار فراہم کرتی ہے۔ تصدیق شدہ URL یا دیگر اکاؤنٹ ترتیب ڈیپلائمنٹ کے مقرر کردہ خفیہ ماخذ میں رکھیں۔

فنکشن کے اختتام پر Session اور جواب بند ہو جاتے ہیں۔ trust_env=False Requests کے ماحولی انضمام کو غیر فعال کرتا ہے، جس سے وراثت میں ملنے والی پراکسی ترتیبات اس کلائنٹ کے مطلوبہ رویے کو تبدیل نہیں کر سکتیں، اور Requests کے ماحول کی بنیاد پر CA بنڈل کے انتخاب کو بھی غیر فعال کرتا ہے۔ اگر ضرورت ہو تو مطلوبہ CA بنڈل اس کلائنٹ کے verify اختیار کے ذریعے فراہم کریں۔

منظم Airflow ماحول کے لیے ترتیب دیے گئے ماحولی متغیرات کا دائرہ وسیع تر ہوتا ہے اور پلیٹ فارم کی مقرر کردہ پابندیاں ہوتی ہیں۔ راستہ اس Session کو دینے سے فیصلہ اسی ٹاسک کی HTTP کارروائی سے منسلک رہتا ہے اور worker پروسیس میں دیگر کوڈ کے لیے os.environ تبدیل نہیں ہوتا۔

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