Għal kompitu fi Cloud Composer li jeħtieġ talba HTTP waħda ħierġa permezz ta’ proxy, ikkonfigura l-klijent HTTP ġewwa l-callable tal-kompitu:

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

Uża dan il-callable permezz tal-arranġament tal-kompiti eżistenti tad-DAG. Il-proxy irid ikun aċċessibbli mill-worker li jkun qed iwettaq il-kompitu. Għal sejħiet tal-API pubbliku permessi mingħajr awtentikazzjoni tal-proxy, il-lista tal-proxy HTTP tipprovdi kandidati għall-URL tal-proxy HTTP tas-session. Żomm URL awtentikat jew konfigurazzjoni oħra tal-kont fis-sors tas-sigrieti maħsub tal-varar.

Is-Session u r-risposta jagħlqu meta l-funzjoni toħroġ. trust_env=False jiddiżattiva l-integrazzjoni ambjentali ta’ Requests, u b’hekk is-settings tal-proxy li jintirtu ma jistgħux ibiddlu l-imġiba maħsuba ta’ dan il-klijent, u wkoll jiddiżattiva l-għażla tal-CA bundle ta’ Requests ibbażata fuq l-ambjent. Ipprovdi l-CA bundle maħsub permezz tal-għażla verify ta’ dan il-klijent jekk meħtieġ.

Il-varjabbli tal-ambjent ikkonfigurati għal ambjent Airflow ġestit għandhom ambitu usa’ u restrizzjonijiet definiti mill-pjattaforma. Meta tgħaddi r-rotta lil din is-Session, id-deċiżjoni tibqa’ marbuta mal-operazzjoni HTTP ta’ dan il-kompitu mingħajr ma tbiddel os.environ għal kodi ieħor fil-proċess worker.

Artikli relatati