0

我尝试创建一个构建管道,用于将我的 python 包上传到 Azure DevOps Artifact Feed。使用我的默认提要,使用此 yaml 可以正常工作

- script: |
    python setup.py sdist
  displayName: 'Make sdist'

- script: |
    python setup.py bdist_wheel --universal
  displayName: 'Make wheel'




- task: TwineAuthenticate@1 
  inputs:
    artifactFeed: christophhaene

- script: |
    cat $(PYPIRC_PATH) 
  displayName: 'see file'  

- script: |
    python -m twine upload -r 'christophhaene' --config-file $(PYPIRC_PATH) dist/* --verbose

现在我想更改提要。为此,我在一个名为 sftp 的 DevOps 项目调用 sftp 中创建了一个新的提要。如果我现在像这样更改 yaml:

- task: TwineAuthenticate@1 
  inputs:
    artifactFeed: sftp

- script: |
    python -m twine upload -r 'sftp' --config-file $(PYPIRC_PATH) dist/* --verbose

我在麻线上传部分收到以下错误代码:

[command]/bin/bash --noprofile --norc /home/vsts/work/_temp/d8fc4191-edad-4b2c-9393-3e3ddbf716f2.sh
Uploading distributions to https://pkgs.dev.azure.com/christophhaene/_packaging/sftp/pypi/upload
Uploading sftp-0.1.1-py2.py3-none-any.whl

  0%|          | 0.00/4.43k [00:00<?, ?B/s]
100%|██████████| 4.43k/4.43k [00:00<00:00, 49.8kB/s]HTTPError: 404 Client Error: Not Found - The feed with ID 'sftp' doesn't exist. (DevOps Activity ID: B2DC0264-1FC0-460B-849E-3D77F371E984) for url: https://pkgs.dev.azure.com/christophhaene/_packaging/sftp/pypi/upload

Content received from server:
{"$id":"1","innerException":null,"message":"The feed with ID 'sftp' doesn't exist.","typeName":"Microsoft.VisualStudio.Services.Feed.WebApi.FeedIdNotFoundException, Microsoft.VisualStudio.Services.Feed.WebApi","typeKey":"FeedIdNotFoundException","errorCode":0,"eventId":3000}
##[error]Bash exited with code '1'.

任何想法?

非常感谢克里斯托夫

4

1 回答 1

0

这应该是我们这边的问题。我已经检查过,您的组织中sftp 存在christ***ene该提要。

另外,用你提供的activity id查看对应的log后,服务器使用的feed访问url很不正常:*****/Ade41224c-3ad6-*****-5f24cb2da86a/_apis/Packaging/Feeds/sftp.

正常情况下,用于获取 feed 的 api 应该由{org name/id}/apis/packaging/Feeds/{feed name/id}. 但是,这个 idAde41224c-3ad6-*****-5f24cb2da86a不是这个 org( christ***ene) id 之一,而是您的收藏/帐户 id。这导致此提要访问失败。


请到我们的官方社区提出这个问题票。然后我们可以让我们的产品组来处理这个问题。当您提出票证时,请同时分享您的组织名称、项目名称和管道定义名称(为安全起见,请在评论中选择仅由 Microsoft 查看)。另外,不要错过这一点activity id,这对于从后端检查日志非常重要。

于 2019-11-27T10:59:46.850 回答