jenkins如何安装python第三方库
本帖最后由 四十四只石狮子 于 2021-12-29 14:17 编辑在jenkins上运行python的测试脚本,我是直接在jenkins上下好python的插件直接吧代码进去运行的。
然后代码用的是unittest库还有公司自己写的api库,自己本地跑没有问题,然后jenkins上跑就出现问题了,说没有相关的模块。
百度了一下说需要在jenkins服务器上面安装第三方库,运维那边说是安装在debian上面的,也输入过一些命令也说不行,像:$ apt-get install python-unittest,也说找不到这个库。
问问大神们如何在上面安装第三方库啊,让我的脚本在jenkins上面自己跑起来啊{:301_972:} Jenkins应该是有个用户的,你得给那个用户权限和环境变量,在root里面操作一般没用,用Jenkins的话,建议现在还是用docker的方式去做构建和测试,这样起码保证环境的一致性。
Jenkins也是支持docker的,之前Jenkins大部分的时候就是用docker来跑测试代码和构建的。 lm93129 发表于 2021-12-29 14:36
Jenkins应该是有个用户的,你得给那个用户权限和环境变量,在root里面操作一般没用,用Jenkins的话,建议现 ...
额,,,领导给我的任务是吧自动化脚本部署到jenkins上面去,开发人员更新后要能自动测试,我就是做测试的,我也没接触过这个jenkins平台,运维也不懂,我就想着能部署上去跑起来先 四十四只石狮子 发表于 2021-12-29 14:43
额,,,领导给我的任务是吧自动化脚本部署到jenkins上面去,开发人员更新后要能自动测试,我就是做测试的, ...
换个领导 大兵马元帅 发表于 2021-12-29 15:15
换个领导
不敢,哈哈 四十四只石狮子 发表于 2021-12-29 14:43
额,,,领导给我的任务是吧自动化脚本部署到jenkins上面去,开发人员更新后要能自动测试,我就是做测试的, ...
我之前也是做测试的呀,那你大概是想要开发人员提交代码后Jenkins自动运行测试脚本是吧,其实这个需求,你用docker来做吧,简单一点。你的开发环境用docker打包下最好,然后Jenkins跑就行。
比如下面的这个Jenkins流程代码,就是用docker部署个环境
stage('环境部署') {
parallel {
stage('测试环境部署') {
agent { label "${TEST_ENV}" }
when {
beforeAgent true
environment ignoreCase: true, name: 'DEPLOY_TO', value: 'test'
}
steps {
echo '开始环境部署'
sh "docker login -u ${HAR_NAME} -p ${HAR_PASS} harbor.xxx.com.cn"
sh "docker pull harbor.xxx.com.cn/${HAR_NAME}/${JOB_NAME}:${git_tag}"
sh '''if [ $(docker ps -aq --filter name=^/${JOB_NAME}$) ]; then docker stop ${JOB_NAME} && docker rm ${JOB_NAME};fi'''
//自动部署最新版本
sh '''docker run -d --restart=unless-stopped --name ${JOB_NAME} -p ${CON_PROT}:${CON_PROT} harbor.xxx.com.cn/${HAR_NAME}/${JOB_NAME}:${git_tag} --spring.profiles.active=test '''
echo '部署结束'
}
}
docker打包环境也挺简单的,例如下面这个
FROM registry.cn-hangzhou.aliyuncs.com/xxxx/python:3.7.4-slim
// 设置Pip源
ENV PIP_INDEX_URL https://mirrors.aliyun.com/pypi/simple/
RUN pip3 install pipenv --no-cache-dir
// 设置项目目录
RUN set -ex && mkdir /app
WORKDIR /app
COPY Pipfile Pipfile
COPY Pipfile.lock Pipfile.lock
// 安装依赖
RUN set -ex && pipenv install --deploy --system
COPY . /app
CMD [ "pipenv" ,"run" ,"flask" ,"run" ] 四十四只石狮子 发表于 2021-12-29 14:43
额,,,领导给我的任务是吧自动化脚本部署到jenkins上面去,开发人员更新后要能自动测试,我就是做测试的, ...
运维也不懂,把运维拉出去祭天。。。 lm93129 发表于 2021-12-29 16:42
我之前也是做测试的呀,那你大概是想要开发人员提交代码后Jenkins自动运行测试脚本是吧,其实这个需求, ...
这个是不是需要在Jenkins的服务器上面部署啊?我刚入行测试,感觉太难额 蔡_老头 发表于 2021-12-29 17:19
运维也不懂,把运维拉出去祭天。。。
问他怎么部署Python上去都叫我百度,人麻了 四十四只石狮子 发表于 2021-12-29 17:28
问他怎么部署Python上去都叫我百度,人麻了
弱弱的问一句,你们的运维主要是做啥的:rggrg
页:
[1]
2