动态设置 Python wheel 版本标签
Set Python wheel version tag dynamically
我正在尝试将 wheel 文件的构建集成到 Bamboo 计划中。最终,我想以某种方式将 .whl 文件的版本标记的一部分与 Bamboo 内部版本号相关联,即版本 0 的预发布版本将是 0.dev1、0.dev2、0.dev3 以用于后续构建.
用于允许 --tag_build
选项的旧 egg 格式允许您指定附加到 setup
函数中定义的 version
参数的标签setup.py
文件。 bdist_wheel
命令显然没有等效选项。
使用 Bamboo 内部版本号变量,这使我对脚本 运行 setup.py
的希望破灭了。除了将构建脚本转换为 Powershell 或在每个构建过程中动态生成 setup.py
之外,我正在寻找任何其他建议。
wheel 文件名中的版本标签只是包版本号,由 setup.py
定义,setup.py
是一个 Python 脚本,具有 [=19= 的所有功能] 可用。因此,setup.py
可以简单地根据bamboo_buildNumber
环境变量设置setup()
函数的version
参数:
import os
version = whatever_the_version_would_be_otherwise
try:
version += '.dev' + os.environ['bamboo_buildNumber']
except KeyError: # bamboo_buildNumber isn't defined, so we're not running in Bamboo
pass
setup(
version = version,
...
)
我正在尝试将 wheel 文件的构建集成到 Bamboo 计划中。最终,我想以某种方式将 .whl 文件的版本标记的一部分与 Bamboo 内部版本号相关联,即版本 0 的预发布版本将是 0.dev1、0.dev2、0.dev3 以用于后续构建.
用于允许 --tag_build
选项的旧 egg 格式允许您指定附加到 setup
函数中定义的 version
参数的标签setup.py
文件。 bdist_wheel
命令显然没有等效选项。
使用 Bamboo 内部版本号变量,这使我对脚本 运行 setup.py
的希望破灭了。除了将构建脚本转换为 Powershell 或在每个构建过程中动态生成 setup.py
之外,我正在寻找任何其他建议。
wheel 文件名中的版本标签只是包版本号,由 setup.py
定义,setup.py
是一个 Python 脚本,具有 [=19= 的所有功能] 可用。因此,setup.py
可以简单地根据bamboo_buildNumber
环境变量设置setup()
函数的version
参数:
import os
version = whatever_the_version_would_be_otherwise
try:
version += '.dev' + os.environ['bamboo_buildNumber']
except KeyError: # bamboo_buildNumber isn't defined, so we're not running in Bamboo
pass
setup(
version = version,
...
)