Python
Python 构建运行程序会自动在代理中检测到 Python,并允许在 Windows、Linux 和 macOS 上运行 Python 脚本。
参考 配置构建步骤 以获取常见构建步骤设置的描述。 参考 容器包装器 了解您如何在 Docker 容器内运行此步骤。
命令设置
您可以选择以下的 Python 命令之一:
命令 | 描述 | 示例输入 |
---|---|---|
文件 | 通过提供的路径运行 Python 脚本。 |
|
模块 | 通过提供的名称运行 Python 模块(等同于在模块名称前添加 |
|
自定义脚本 | 允许在 UI 表单中输入 Python 脚本的主体。 | ips = {}
fh = open("/var/log/nginx/access.log", "r").readlines()
for line in fh:
ip = line.split(" ")[0]
if 6 < len(ip) <=15:
ips[ip] = ips.get(ip, 0) + 1
print ips |
Unittest | 启动 unittest 框架。 单元测试结果将显示在 构建结果 的 测试 标签上。 为了筛选处理文件的范围,您可以在附加参数中指定单元测试文件的路径。 | 如有需要,可以输入 |
Pytest | 启动 pytest 框架。 测试结果将会在 构建结果 的 测试 标签页中显示。 为了筛选处理文件的范围,您可以在附加参数中指定 pytest 文件的路径。 | 如有需要,可以将 |
Flake8 | 启动 Flake8 包装器。 代码检查结果将在 代码检查 标签页中的 构建结果 显示。 为了筛选需要处理的文件范围,您可以在额外的参数中指定 Python 文件的路径。 | 如果需要,可以输入 |
Pylint | 启动 Pylint 工具。 代码检查结果将在 代码检查 标签页中的 构建结果 显示。 要过滤处理文件的范围,可以在附加参数中指定 Python 文件的路径。 | 将 |
自定义 | Python 解释器的参数(例如, 如果该步骤在虚拟环境中启动,这些参数将应用于环境内的 |
|
可用设置的集合取决于所选的命令。 这个表格描述了所有的命令设置:
设置 | 描述 |
---|---|
文件 | 路径指向一个 Python 脚本文件。 |
模块 | 指向 Python 模块文件的路径。 |
安装工具 | 选择此选项可自动安装所选工具包(Pytest,Flake8 或 Pylint),如果构建代理上缺少它。 |
脚本或模块参数 | 将在调用用户脚本或模块后传递给它们的参数。 |
脚本 | 自定义脚本主体。 |
测试报告 | 启用通过自动安装的 |
覆盖率 | 通过 Coverage.py 启用代码覆盖率收集。 TeamCity 在 Code Coverage 标签页上显示生成的测试报告。 |
Python 参数 | 如果选择了自定义命令,将会传递给 Python 解释器的参数。 |
Python 执行文件设置
在此设置块中,您可以选择一个 Python 版本进行运行。
Python 运行器会自动检测在 构建代理 上安装的 Python 版本。 运行器依照以下所列的顺序检查以下位置:
Windows:
默认的安装路径
系统注册表
PATH
变量
在 Linux 和 macOS 上:
默认的安装路径
PATH
变量
运行器将首次检测到的 Python 2.x 和 3.x 版本设置为代理的配置参数。 另外,您可以手动提供一个路径到任何已安装的版本。
您也可以指定将在此构建步骤的每次 Python 运行中传递给解释器的参数(例如,自定义环境工具运行或报告运行)。
环境工具设置
如有需要,您可以在虚拟环境中运行 Python 构建步骤。 Python 运行器支持以下工具:
Pipenv 设置
如有需要,可输入 install run arguments。
Poetry 设置
可选地,输入 install run arguments 和指向在构建代理上安装的 Poetry 的自定义可执行路径。
对于这个环境工具,将会运行 poetry install
命令。 它将解析在 pyproject.toml
文件中指定的依赖项,该文件位于 工作目录中。 为了被正确解析,此文件应包含 tool.poetry
部分。
Venv 和 virtualenv 设置
Venv 和 virtualenv 有以下设置:
设置 | 描述 |
---|---|
需求文件 | 路径指向需求文件或新行分隔的文件列表。 |
Pip install 运行参数 | 额外的参数用于 |
环境名称 | 虚拟环境的名称。 |
Venv / virtualenv 创建参数 | 创建新的 |