การจัดการการพึ่งพา


มีสองวิธีในการระบุการขึ้นต่อกันสำหรับฟังก์ชันคลาวด์ที่เขียนด้วย Python: การใช้ไฟล์ requirements.txt ของตัวจัดการแพ็คเกจ pip หรือการรวมการขึ้นต่อกันในเครื่องควบคู่ไปกับฟังก์ชันของคุณ

ไม่รองรับข้อกำหนดการพึ่งพาโดยใช้มาตรฐาน Pipfile/Pipfile.lock โครงการของคุณไม่ควรรวมไฟล์เหล่านี้

การระบุการพึ่งพาด้วย pip

การพึ่งพาใน Python ได้รับการจัดการด้วย pip และแสดงในไฟล์ข้อมูลเมตาที่เรียกว่า requirements.txt ไฟล์นี้ต้องอยู่ในไดเร็กทอรีเดียวกันกับไฟล์ main.py ที่มีโค้ดฟังก์ชันของคุณ

เมื่อคุณทำให้ฟังก์ชันใช้งานได้ Cloud Functions จะดาวน์โหลดและติดตั้งการขึ้นต่อกันที่ประกาศในไฟล์ requirements.txt โดยใช้ pip

ไฟล์ requirements.txt มีหนึ่งบรรทัดต่อแพ็คเกจ แต่ละบรรทัดประกอบด้วยชื่อแพ็กเกจ และเวอร์ชันที่ร้องขอ (ไม่บังคับ) สำหรับรายละเอียดเพิ่มเติม โปรดดูที่ การอ้างอิง requirements.txt .txt

ต่อไปนี้เป็นตัวอย่างไฟล์ requirements.txt :

requests==2.20.0
numpy

บรรจุภัณฑ์การพึ่งพาท้องถิ่น

คุณยังสามารถจัดแพ็คเกจและปรับใช้การขึ้นต่อกันควบคู่ไปกับฟังก์ชันของคุณได้ วิธีการนี้มีประโยชน์หากการพึ่งพาของคุณไม่พร้อมใช้งานผ่านตัวจัดการแพ็คเกจ pip หรือหากการเข้าถึงอินเทอร์เน็ตของสภาพแวดล้อม Cloud Functions ของคุณถูกจำกัด

ตัวอย่างเช่น คุณอาจใช้โครงสร้างไดเร็กทอรีดังต่อไปนี้:

myfunction/
├── main.py
└── localpackage/
    ├── __init__.py
    └── script.py

จากนั้นคุณสามารถนำเข้าโค้ดได้ตามปกติจาก localpackage โดยใช้คำสั่ง import ต่อไปนี้

# Code in main.py
from localpackage import script

โปรดทราบว่าวิธีการนี้จะ ไม่ เรียกใช้ไฟล์ setup.py ใดๆ แพ็กเกจที่มีไฟล์เหล่านั้นยังคงสามารถรวมกลุ่มได้ แต่อาจทำงานไม่ถูกต้องบน Cloud Functions