เอเจนต์ Azure Pipelines ที่โฮสต์เองสามารถเก็บกฎการข้ามพร็อกซีไว้ในไฟล์ .proxybypass ในไดเรกทอรีรากของมัน แต่ละบรรทัดเป็น regular expression แบบ ECMAScript ที่ถูกนำไปจับคู่กับ URL

ตัวอย่างเช่น กฎสำหรับโฮสต์ฟีดภายในหนึ่งรายการอาจมีลักษณะดังนี้:

^https?://packages[.]internal[.]example(?::[0-9]+)?(?:/|$)

นิพจน์นี้จับคู่ URL แบบ HTTP หรือ HTTPS ของโฮสต์นั้น โดยมีพอร์ตเป็นตัวเลขซึ่งไม่บังคับ ขอบเขตหลังชื่อโฮสต์ช่วยป้องกันการจับคู่กับชื่อที่ยาวกว่า เช่น packages.internal.example.other-domain

นี่คือไฟล์ของการติดตั้งเอเจนต์ ไม่ใช่ไฟล์ที่วางไว้อย่างอำเภอใจในสำเนาโค้ดต้นฉบับ ไวยากรณ์ของมันยังแตกต่างจากค่า NO_PROXY ที่คั่นด้วยจุลภาค การคัดลอกไวลด์การ์ดของเชลล์เช่น *.internal.example ลงในช่อง regular expression ไม่ได้รักษาความหมายเดิมไว้

จากนั้นระบุว่าใครเป็นผู้ดาวน์โหลดแพ็กเกจ

การดำเนินการด้านแหล่งที่มาและอาร์ติแฟกต์ที่มีมาในเอเจนต์ใช้การกำหนดค่าพร็อกซีของมัน งานสามารถดึงข้อมูลพร็อกซีที่เปิดเผยผ่านไลบรารีงานและนำไปใช้กับไคลเอนต์ HTTP ของตนเอง

งานที่เรียกกระบวนการ NuGet, dotnet หรือ curl ภายนอกจะเพิ่มผู้ใช้อีกราย ตรวจสอบว่างานนั้นส่งการตั้งค่าพร็อกซีและการข้ามให้เครื่องมืออย่างไร กฎของเอเจนต์ที่ถูกต้องไม่ได้พิสูจน์ว่าไคลเอนต์แพ็กเกจอิสระทุกรายได้อ่านกฎนั้น

เก็บ URL ของฟีดภายในไว้ในบันทึกการวินิจฉัย รวมถึงสคีมาและพอร์ต ทดสอบกฎกับ URL ที่กำลังติดต่อ จากนั้นตรวจสอบการกำหนดค่าของงานหรือไคลเอนต์ที่รับผิดชอบคำขอนั้น

บทความที่เกี่ยวข้อง