了解 2023 年 Google I/O 大会上介绍的 Firebase 亮点。了解详情

Obsługa zależności


Istnieją dwa sposoby określania zależności dla funkcji Cloud Functions napisanych w języku Python: przy użyciu pliku requirements.txt menedżera pakietów pip lub pakując lokalne zależności wraz z funkcją.

Specyfikacja zależności wykorzystująca standard Pipfile/Pipfile.lock nie jest obsługiwana. Twój projekt nie powinien zawierać tych plików.

Określanie zależności za pomocą pip

Zależnościami w Pythonie zarządza się za pomocą pip i wyraża je w pliku metadanych o nazwie requirements.txt . Ten plik musi znajdować się w tym samym katalogu, co plik main.py zawierający kod funkcji.

Po wdrożeniu funkcji Cloud Functions pobiera i instaluje zależności zadeklarowane w pliku requirements.txt za pomocą pip.

Plik requirements.txt zawiera jeden wiersz na pakiet. Każda linia zawiera nazwę pakietu i opcjonalnie żądaną wersję. Aby uzyskać więcej informacji, zobacz dokumentację pliku requirements.txt .

Poniżej znajduje się przykładowy plik requirements.txt :

requests==2.20.0
numpy

Pakowanie zależności lokalnych

Możesz także pakować i wdrażać zależności wraz ze swoją funkcją. To podejście jest przydatne, jeśli Twoja zależność nie jest dostępna za pośrednictwem menedżera pakietów pip lub jeśli dostęp do Internetu w środowisku Cloud Functions jest ograniczony.

Można na przykład użyć następującej struktury katalogów:

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

Następnie możesz zaimportować kod w zwykły sposób z localpackage , używając poniższej instrukcji import .

# Code in main.py
from localpackage import script

Pamiętaj, że to podejście nie spowoduje uruchomienia żadnych plików setup.py . Pakiety zawierające te pliki nadal można łączyć w pakiety, ale mogą nie działać poprawnie w Cloud Functions.