【问题标题】:PyPI automatic deploymentPyPI 自动部署
【发布时间】:2016-07-03 20:46:58
【问题描述】:

我有一个 repository(在 GitHub 上),其中包含许多可以作为插件添加到主 project 的模块。我想设置存储库,以便在每次接受拉取请求时触发自动 PyPI 部署(仅针对更改的模块)。

有什么办法可以做到吗?

Travis-CI 支持自动 PyPI 部署,但适用于整个存储库。我只需要它用于 repo 中的一个文件夹(一个模块)。

【问题讨论】:

  • 您是否查看过git submodulesgit subtree
  • @gaborous 要使用 git 子模块或 git 子树,我必须将每个模块保存在自己的 git 存储库中。我想将所有模块保存在一个存储库中。所有问题都转到同一个 repo 以及所有 PR。
  • 不,不使用 git subtree,您的模块将保留在同一个存储库中。

标签: python git github package-managers pypi


【解决方案1】:

您可以使用after_success: 选项来实现custom deployments on travis-ci

类似:

after_success:
    "cd $subfolder && python setup.py sdist upload -r pypi"

您必须使用您认为最好的方法自己提供您的 pypi 凭据。

【讨论】:

  • 我想在PR合并到master之后触发部署。如果我使用你的命令 Travis 会在每次收到 PR 时部署它。
  • 你可以使用$TRAVIS_PULL_REQUESTTRAVIS_BRANCH来判断是否是合并到master。第一个应该是字符串值false,第二个应该是master
  • @Ibrahim 这里是所有环境变量的列表,您可以使用它来确定它是否是正确的分支 / 等等来执行 pypi 更新docs.travis-ci.com/user/environment-variables/…
  • 谢谢。我会尝试并报告。
猜你喜欢
  • 2019-10-08
  • 2018-09-07
  • 2015-11-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-05
  • 2016-08-03
相关资源
最近更新 更多