(mac)Docker+jenkins+pipeline运行python接口自动化项目

目录

一、实现思路

二、环境准备

1、在mac上安装docker

2、docker安装jenkins

三、配置jenkins容器

四、 jenkins插件安装

 1、安装git

 2、安装docker

 3、html Publisher安装

4、 pipeline安装

5、安装后重启jenkins容器

五、创建jenkins任务

1、重新登录jenkins,点击new item

2、选择创建pipeline项目​ 3、配置构建记录保存规则

​ 4、配置git仓库

5、添加git凭证 

6、配置完成点击保存即可

六、配置及构建

一、实现思路

1、在mac安装 docker
2、创建 jenkins 容器
3、jenkins 中创建 pipeline 项目
4、根据自动化项目依赖包构建 python 镜像(构建自动化 python 环境)
5、运行新的 python 容器,执行 jenkins 从仓库中拉下来的自动化项目
6、执行完成之后删除容器

二、环境准备

1、在mac上安装docker

Mac安装docker

2、docker安装jenkins

docker run --name=jenkins_save01 -p 8080:8080 -p 50000:50000 -v jenkins_home:/var/jenkins_home jenkins/jenkins:lts

参数说明:

--name :容器名称

 -p 9999:8080:端口映射,宿主机端口:jenkins 容器端口   

-v jenkins_home:/var/jenkins_home:将宿主机 docker 客户端映射到 jenkins 容器中

jenkins/jenkins:lts   jenkins镜像

安装成功后,你会在docker客户端看到这个容器,并且是启动状态

 docker命令看启动的容器,docker ps 

三、配置jenkins容器

1、浏览器访问http://127.0.0.1:8080

2、从上边的提示中获取到管理员密码登录进去。

这一步会比较慢,请耐心等待。 

 3、

 4、设置管理员用户名和密码(以后就用这个账号密码登陆你的 jenkins)

5、jenkins 初始化完成看到如下界面 

四、 jenkins插件安装

接上一步开始使用jenkins,进入到如下界面。注,安装过过程中出现失败,就找到失败的插件重新安装一下就可以了。

 1、安装git

 2、安装docker

 3、html Publisher安装

4、 pipeline安装

5、安装后重启jenkins容器

docker restart jenkins_save01

五、创建jenkins任务

1、重新登录jenkins,点击new item

2、选择创建pipeline项目 3、配置构建记录保存规则

 4、配置git仓库

        远程仓库地址要去gitee上去复制链接

5、添加git凭证 

6、配置完成点击保存即可

六、配置及构建

1、将项目的依赖包导出到 requirements.txt 文件中,txt 文件名称可以随意写

        pip freeze > requirements.txt

2、在宿主机(安装 docker 的机子)上新建一个目录(我的目录在/app),将 requirements.txt 文件复制进去

3、在app 目录下创建 Dockerfile 文件(文件名必须是 Dockerfile,没有后缀)

4、我的requirement.txt 文件内容如下

unittestreport==1.3.2
openpyxl==3.0.7
ddt==1.4.2
pytest==6.2.2
selenium==3.141.0
pymysql==1.0.2
faker==8.1.0
jsonpath==0.82
BeautifulReport==0.1.3
rsa==4.7.2
pytest-html==3.1.1
allure-pytest==2.9.43
requests-toolbelt==0.9.1

5、Dockerfile 内容以及解释如下

FROM python:3.7.4  #基于python:3.7.4这个基础镜像镜像构建镜像
WORKDIR /app   #切换工作空间目录
ADD ./requirements.txt /app #将python项目依赖包文件添加到镜像
RUN pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple #安装依赖包
CMD ["python3", "main.py"] #设置容器执行后自动执行的命令,这里main.py是我们自动化框架的执行入口文件

在 app 目录下执行镜像构建命令
docker build -t python3.7:annlin .
-t:镜像名称
点(.):点表示 Dockerfile 文件所在的目录,我现在在 app 目录下,点表示当前目录

6、构建成功后会看到一个新的镜像(命令:docker images)

7、创建 build.sh 文件并放到python项目的根目录下

echo "运行容器python执行自动化"
docker run --rm -w=$WORKSPACE --volumes-from=jenkins_save01 python3.7:annlin
echo "python执行自动化执行成功"

8、 写 Jenkinsfile 文件并将放到python项目的根目录下

pipeline{
    //配置执行环境
    agent any
    //配置构建过程
	stages{
		stage('build'){
			steps{
			    echo '开始执行shell脚本'
				sh 'sh build.sh'
			}
		}//stage
	}//stages
 
   //配置构建后操作
	post{
        always{
          echo 'Pipeline 构建成功'
                   		publishHTML(target:[allowMissing: false,
					 alwaysLinkToLastBuild: true,
					 keepAll: true,
					 reportDir: 'reports',
					 reportFiles: '*.html',
					 reportName: 'My Reports',
					 reportTitles: 'The Report'])
        }
    }//post
}//pipeline

8、提交代码到git仓库

git add .

git commit -am'update'

git push

9、构建 jenkins 任务

 10、查看构建日志

11、查看测试报告,此时的测试报告会没有样式,因为被 Jenkins 禁用了 CSS 样式,需要我们手动解决

 12、解决测试报告没有样式的问题

 把这个代码放进去执行:System.setProperty("
hudson.model.DirectoryBrowserSupport.CSP","")

 执行成功返回是空,说明没问题

重新构建就可以看到漂亮的测试报告了 

番外:jenkins介绍

jenkins流程

 jenkins特点

1、跨平台的

2、所有的功能都是通过各种插件来支持的

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值