א Requests פראקסי אויף דער מדרגה פון דער אויפגאבע אין Google Cloud Composer
שאפט א Requests Session וואס געהערט צו דער אויפגאבע מיט אן אפֿנעם וועג, אנשטאט צו ענדערן די פראקסי־סביבה פון אַ געמיינזאַמען worker פּראָצעס.
פֿאַר אַ 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 אָדער אַנדערע קאָנטאָ־קאָנפֿיגוראַציע אין דעם באַשטימטן סוד־מקור פֿונעם דיפּלוימענט.
די סעסיע און דער ענטפֿער ווערן פֿאַרמאַכט ווען די פֿונקציע ענדיקט זיך. trust_env=False שאַלט אויס Requests׳ סביבה־אינטעגראַציע, און פֿאַרמאַכט די מעגלעכקייט אַז איבערגענומענע פּראָקסי־איינשטעלונגען זאָלן פֿאַרבייטן דעם קליענטן׳ס געפּלאַנטן אויפֿפֿיר, און שאַלט אויך אויס Requests׳ אויסוואַל פֿון CA בינטל לויט דער סביבה. אויב נייטיק, גיט דעם געפּלאַנטן CA בינטל דורך דעם קליענטן׳ס verify אָפּציע.
סביבה־וואַרייאַבלען וואָס זענען קאָנפֿיגורירט פֿאַר אַ פֿאַרוואַלטעטן Airflow סביבה האָבן אַ ברייטערן באַנד און פּלאַטפֿאָרם־באַשטימטע באַגרענענונגען. דאָס איבערגעבן דעם וועג צו דער סעסיע האַלט די באַשליסונג פֿאַרבונדן מיט דער HTTP אָפּעראַציע פֿון דער אויפגאַבע אָן צו ענדערן os.environ פֿאַר אַנדער קאָד אין דעם worker פּראָצעס.