Jenkins 使用 python scripts

本文介绍如何在Jenkins中配置并执行Python脚本,包括安装必要的插件、设置参数化任务及使用环境变量等内容。此外还探讨了利用Docker、Python API与Jenkins结合的应用场景。
部署运行你感兴趣的模型镜像

安装好jenkins, 并安装 python-scripts 的plugin, 就可以在jenkins中执行python code了, 以下是job的具体配置.

Create New Job

这里作为演示, 建一个Free Style Project.


将Job配置成参数化job, 主要为了介绍一下怎么在python code中使用jenkins的input paramter

创建步骤, 选择 Execute Python script

开始编辑你的python code

这里主要说下传给jenkins job paramters的用法, 具体想执行的code可以自己来写.

import os
print os.environ['Test']

这样就可以把传入的参数打印出来了.

一些想法

在项目中, 可以通过docker构建一个jenkins server, 并通过python-jenkins api来生成动态的job,并在python中对job进行控制, 这时就需要传入一下paramter来控制job的流程(也可以考虑通过jenkinsfile实现). 对于自动化测试来讲, 可以考虑这个架构.

Docker + Jenkins + Python

从而实现一个node集群执行不同的test cases.

欢迎在评论区讨论, 请高手多多指教.

您可能感兴趣的与本文相关的镜像

Python3.10

Python3.10

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

Jenkins 中调用 Python 脚本是一个常见的需求,尤其是在自动化构建、测试和部署流程中。可以通过以下几种方式实现 Jenkins 调用 Python 脚本的执行。 ### 1. 在 Jenkins 的构建步骤中直接调用 Python 脚本 在 Jenkins 的构建配置中,可以使用 **"Execute shell"** 或 **"Execute Windows batch command"**(取决于操作系统)来运行 Python 脚本。 例如,在 Linux 环境下,可以直接在 **"Execute shell"** 中输入如下命令: ```bash #!/bin/bash cd /path/to/your/script PYTHONIOENCODING=utf-8 python your_script.py ``` 这种方式适用于简单的脚本执行,且可以在命令行中直接设置环境变量,如 `PYTHONIOENCODING=utf-8` 来避免编码问题[^1]。 ### 2. 使用 Jenkins Pipeline 脚本化方式执行 Python 脚本 如果使用的是 Jenkins Pipeline,可以在 `Jenkinsfile` 中编写如下 Groovy 脚本: ```groovy pipeline { agent any stages { stage('Run Python Script') { steps { sh ''' cd /path/to/your/script PYTHONIOENCODING=utf-8 python your_script.py ''' } } } } ``` 这种方式更加灵活,适合构建复杂的 CI/CD 流水线,并且可以与其他 Jenkins 插件集成[^2]。 ### 3. 使用 Python 插件或 Jenkins API 控制 Jenkins 任务 Jenkins 支持通过 Python 脚本调用 Jenkins API 来动态创建和控制任务。可以通过 `python-jenkins` 库来实现: ```python import jenkins server = jenkins.Jenkins('http://jenkins_url', username='admin', password='token') server.build_job('job_name', parameters={'PARAM1': 'value1'}) ``` 这种方式适合在 Python 脚本中对 Jenkins 任务进行编程式控制,适用于自动化测试和任务调度场景[^4]。 ### 4. 使用 Docker 容器化 JenkinsPython 环境 可以通过 Docker 容器化 JenkinsPython 环境,确保构建环境的一致性。例如,使用以下命令创建 Jenkins 容器并挂载 Python 脚本目录: ```bash docker run -d -v /path/to/scripts:/var/scripts -p 8080:8080 jenkins/jenkins:alpine ``` 然后可以在 Jenkins 的构建步骤中执行容器内的 Python 脚本: ```bash docker exec jenkins_container python /var/scripts/your_script.py ``` 这种方式可以实现 JenkinsPython 脚本执行环境的隔离,并简化依赖管理[^3]。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值