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安装的依赖没有删除,需要自行测试是否有影响)

Jenkins多节点python环境隔离(Windows)的更多相关文章

  1. Jenkins自动化构建python nose测试

    [本文出自天外归云的博客园] 简介 通过Jenkins自动化构建python nose测试分两步: 1. 创建节点(节点就是执行自动化测试的机器): 2. 创建任务并绑定节点(用指定的机器来跑我们创建 ...

  2. Jenkins:管理节点

    Jenkins 管理节点 是管理所有即将在其上执行任务(JOB)的slave机器,包括各种OS类型的主机,都可以作为节点,因为Jenkins是java实现的,所以能安装JVM的OS都可以作为Jenki ...

  3. jenkins服务器使用python脚本rabbitmqadmin和shell对目标服务器进行管理

    jenkins服务器使用python脚本rabbitmqadmin和shell对目标服务器进行管理 准备工作: .jenkins服务器,安装rabbitmqadmi命令 rabbitmqadmin管理 ...

  4. 使用Python写Windows Service服务程序

    1.背景 如果你想用Python开发Windows程序,并让其开机启动等,就必须写成windows的服务程序Windows Service,用Python来做这个事情必须要借助第三方模块pywin32 ...

  5. python 基于windows环境的ftp功能

    描述: 1.基于备份服务器部署的py程序,将需要备份主机目录下的内容下载至备份服务器(服务端和远端都是windows server 2008) 2.py程序部署在windows服务器,后台运行,基于b ...

  6. 关于Python 获取windows信息收集

    收集一些Python操作windows的代码 (不管是自带的or第三方库)均来自网上 1.shutdown 操作 定时关机.重启.注销 #!/usr/bin/python #-*-coding:utf ...

  7. Windows Server 2008R2配置MySQL Cluster并将管理节点和数据节点配置成windows服务

    说明:将mysql的管理节点和数据节点配置成windows服务是为了防止有人手误关闭管理节点或数据节点的dos命令窗口,管理节点或数据节点的命令窗口误关闭可能会造成mysql某台或某几台mysql不能 ...

  8. python安装(windows)

    1.python安装(windows) 1.1 下载安装包 https://www.python.org/downloads/ 1.2 安装 python2.7默认安装路径:C:\python27 注 ...

  9. Python入门-----Windows安装

    摘要:Python,windows安装 1.进入python的官方网站下载:https://www.python.org 点击Download,选择windows版本:

  10. python在windows(双版本)及linux环境下安装

    python下载 下载地址:https://www.python.org/downloads/ 可以下载需要的版本,这里选择2.7.12和3.6.2 下面第一个是linux版本,第二个是windows ...

随机推荐

  1. Windows 脚本放到 Linux 服务器不生效的问题 /bin/bash^M: bad interpreter: No such file or directory

    在windows编辑shell脚本后,由于文件格式原因,在linux下运行报错 有三个方法 1.在windows下,使用notepad++,将文件格式改为unix就可以了 2.在linux下,使用vi ...

  2. TypeScript - 属性的修饰符

    class Person { /** * TS 可以再属性前增加属性的修饰符 * public 修饰的属性可以再任意位置访问(修改)默认值 * private 私有属性,私有属性只能在类内部进行访问和 ...

  3. 087_VS load codes for Salesforce

    1. 下载VShttps://code.visualstudio.com/ ,安装后:Extensions 安装Salesforce Extension Pack .Salesforce Packag ...

  4. k8s 1.20.5(补充)

    1.根据前面1.15.0补充 2.初始化操作 selinux swap firewall关闭防火墙 swapoff -a 禁用交换空间 vim /etc/sysctl.d/k8s.conf net.b ...

  5. docker之rabbitmq delayed message exchange

    创建dockerfile FROM rabbitmq:3.9.11-management-alpine COPY rabbitmq_delayed_message_exchange-3.9.0.ez ...

  6. Vue-cli JSX踩坑问题!

    今天封装一个公用组件库,期间使用到了JSX,发现在Data配置中去配置渲染函数出现了 h function is not defined的问题?? 网上查询一大堆所谓安装JSX的东西,其实Vue-cl ...

  7. SSB调制与解调(Simulink&Matlab)

    题目:基于Simulink的SSB信号调制与解调仿真 参考文章 一.实验目的与要求 目的:学习SSB信号的调制与解调仿真 要求: 具有MATLAB的仿真结果并附上代码 具有基于Simulink的模块的 ...

  8. 负载均衡集群ipvsadm常见参数以及基本用法

    ---- 固定调度 rr:论调 wrr:加权论调 weight,加权 sh:source hash ,源地址hash 动态调度lc:最少链接 active*256+inactivewlc:加权最少链接 ...

  9. VS2010查看DLL导出函数的方法

    在window下查看动态库的导出函数可以用vs自带的Dependenc工具:对于VC6.0,VC所带的Depends软件,在VC6安装目录下的tools文件夹里面,可以直接运行. VS2010中没有了 ...

  10. vue 简单原理

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...