使用内联 PAT 令牌将 PIP_EXTRA_INDEX_URL 参数添加到函数配置:
https://<your-feed-name>:<your-PAT-key>@pkgs.dev.azure.com/<your-organization-name>/<your-project-name>/_packaging/<your-feed-name>/pypi/simple/
似乎没有好的方法在非交互模式下在azure函数中安装私有包。
也许您可以选择一种解决方法,将模块放在函数应用程序中,并使用相对引用来使用模块中的代码。
Azure 工件密钥环使用 keyring 作为后端。从您的快照来看,您似乎正在天蓝色的管道中使用麻绳。
虽然可以在无头系统中使用密钥环,但它需要很多先决条件。另一种方法是在
-p
命令中指定 -u
和 twine upload
选项。
最小
azure-pipelines.yml
:
jobs:
- job: "build"
timeoutInMinutes: 5
pool:
vmImage: ubuntu-latest
steps:
- checkout: self
- task: UsePythonVersion@0
inputs:
versionSpec: "3.10"
- script: pip install --upgrade pip && pip install . && pip install twine build keyring
- script: python -m build
- script: twine upload -r $(TWINE_REPOSITORY) -p $(TWINE_SECRET) -u $(TWINE_USERNAME) dist/*
您必须定义环境变量:
TWINE_REPOSITORY
TWINE_SECRET
TWINE_USERNAME
TWINE_REPOSITORY_URL
宣布 TWINE_SECRET
和
TWINE_USERNAME
为秘密非常重要。您不想在管道日志中泄漏这些值。您可以通过以下方式从 UI 声明机密:
Pipelines
>
Pipelines
>
<Your repo name>
>
Edit
>
Variables
。有关其他方法,请参阅https://learn.microsoft.com/en-us/azure/devops/pipelines/process/set-secret-variables