【问题标题】:Deploy all runtime artifacts from TravisCI to PyPi将所有运行时工件从 TravisCI 部署到 PyPi
【发布时间】:2018-11-17 23:17:40
【问题描述】:

我有一个针对多个 Python 运行时(2.7、3.3-6)交叉编译的 Python 包。我正在尝试使用 TravisCI 构建该包并将其部署到 PyPi。但是,特定版本标记的每个运行时变体都会产生一个同名的工件:mypackage-0.11.10.tar.gz。因此,PyPi 只接受第一个运行时变体。

重申一下:给定版本(例如,0.11.10)的 构建 在每个运行时(2.73.3、...、3.6)中都会成功,但每个其中有相同的工件:mypackage-0.11.10.tar.gz。我想要的是 mypackage-0.11.10-py27.tar.gz 之类的东西,或者任何合适的东西。

我可能遗漏了一些东西,我可以确信,如果我能够针对每个运行时进行构建工作,我很高兴......但我缺乏这种信心,并且不知道一个好的方法来测试一下。

其中的一个子组件就是如何更改 TravisCI 发送到 PyPi 的工件的文件名?我无法确定是否有任何方法可以做到这一点。

这是我的.travis.yml 文件:

language: python
python:
- '2.7'
- '3.3'
- '3.4'
- '3.5'
- '3.6'
- pypy
install:
- pip install coveralls
- pip install 'coverage<4'
script: nosetests --with-coverage --cover-package=<my package name>
after_success:
- coveralls
deploy:
  provider: pypi
  user: <my pypi username>
  password:
    secure: <my encrypted pypi password>
  on:
    tags: true
    distributions: sdist bdist_wheel
    repo: <my repo>
    branch: production

【问题讨论】:

    标签: travis-ci pypi


    【解决方案1】:

    .tar.gz 表明这是一个源代码分发。一个版本不能有多个源分发。但是您可以有许多二进制轮子,每个轮子用于不同的 Python 版本和架构。

    【讨论】:

      猜你喜欢
      • 2016-08-06
      • 1970-01-01
      • 2016-08-03
      • 2013-03-07
      • 1970-01-01
      • 2010-12-13
      • 1970-01-01
      • 1970-01-01
      • 2018-11-05
      相关资源
      最近更新 更多