跳到主要内容

anaconda.org 上传的新暂存流程

从本周开始,我们将更改向 anaconda.org 上传软件包的方式。我们将从直接上传到 conda-forge main 频道,转变为使用暂存组织/频道,并结合从暂存频道到生产频道的复制请求。这个新流程将允许我们在 feedstock 的输出发布之前对其执行一些验证。

作为 feedstock 维护者,您会看到什么?

  • 从本周开始,admin-migrations 服务将向所有 feedstock 提交更改,以便为它们配置必要的配置、API 密钥和令牌。
  • 现在,每个 feedstock 都将配置一个密钥令牌。此令牌不应共享或从 CI 服务中取出。它用于在上传过程中识别 feedstock。
  • admin-migrations 服务将在 conda-forge.yml 中设置一个新的顶级键 conda_forge_output_validation: true。此键向 conda-smithy 指示它应在 feedstock CI 脚本中包含输出验证调用。
  • 当前打开的 PR 将需要手动添加此键,然后重新渲染。
  • 当 PR 运行 CI 脚本时,它们将对 feedstock 输出进行一些初始验证。如果此验证失败,CI 作业将失败。请查看 CI 日志,以获取在 conda-build 运行后打印的错误消息。
  • 一旦 PR 合并到 master 分支,从暂存频道到生产频道的复制将自动发生。
  • 如果复制请求失败,您将通过对 master 分支的提交评论收到通知。
  • 作为此过程的一部分,除非使用 azure 存在重大障碍,否则将不再允许从 appveyor 上传。我们最近升级了 azure 上的编译器基础设施,以支持此策略变更。

尽管我们进行了广泛的测试,但我们预计此更改不会完全顺利,因此请耐心等待。与往常一样,如果您有任何问题、疑虑或麻烦,您可以在 Gitter 上找到我们,或直接在 Github 上联系我们!