Jenkins多节点python环境隔离(Windows)

  1. 使用Jenkins构建过程中,需要使用多个Jenkins节点并发构建
  2. 由于条件限制,只有一台Windows宿主机,所以在这台宿主机上部署多个Jenkins节点
  3. shell命令中使用pip安装依赖,当多个构建并发时,有可能导致依赖被更改的情况
  4. 所以需要有环境隔离
  5. 这里仅针对特殊场景,构建的是GUI程序,必须使用Windows环境,如果其他情况,使用docker构建更佳,这里不做讨论

参考文档:

https://docs.python.org/zh-cn/3/library/venv.html

使用python的venv虚拟环境

pipeline {
agent {
label "Windows"
}
stages {
stage('Build') {
steps {
//在当前目录下创建venv目录,用来放置虚拟环境)
sh 'python -m venv ./venv' //python的应用需要使用虚拟环境执行,即加上"./venv/Scripts/"
//Linux中是"./venv/bin"
sh './venv/Scripts/pip install pytest'
}
}
stage('Test') {
steps {
sh './venv/Scripts/pytest'
}
}
}
}
  • 当python已经设置环境变量时,可以直接使用
  • "python -m venv ./venv"创建
  • 当存在不同版本python时,使用对应版本的绝对路径
  • "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\python -m venv ./venv"创建
  • 执行命令会覆盖旧环境(pip安装的依赖没有删除,需要自行测试是否有影响)

最新文章

  1. hdu5714 拍照[2016百度之星复赛C题]
  2. kernel里面出现了类似isegfault at xxx ip 错误
  3. Kafka消息保证不丢失和重复消费问题
  4. VS2012 常用web.config配置解析之自定义配置节点
  5. textview的上下滑动效果
  6. wildcard 处理全部文件
  7. netty实现消息转发服务
  8. ORACLE 查找字段在哪些表里存在
  9. Security:蠕虫的行为特征描述和工作原理分析
  10. HNCU1324:算法2-2:有序线性表的有序合并(线性表)
  11. 【转】用PowerDesigner制作数据库升级脚本
  12. Redis在本地测试没有问题,上传的服务器后出现错误
  13. 【原创开源应用第5期】基于RL-USB+RL-FlashFS的外挂U盘解决方案
  14. 简单css实现input提示交互动画效果
  15. C++ template一些体悟(1)
  16. python-写入excel(xlswriter)
  17. swift 数组 的一些快速方法
  18. Python os、sys、pickle、json等模块
  19. SOA并不能解决高并发事务
  20. Yii在window下的安装方法

热门文章

  1. 苹果App 上架 app store 提示 “构建版本错误”使用Application Loader发布App
  2. echarts饼图同时展示数量和百分比
  3. 【Frida】Java反射调用
  4. Win10系统桌面exe文件图标消失不见了的解决方法
  5. Java语言中的复合运算符会自动进行类型转换
  6. 软件工程作业二——gitee
  7. Ubuntu安装微信/企业微信
  8. C语言II博客作业04
  9. joda实现时间工具类
  10. 越权检测 burp插件 autorize 使用