前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker 实战(2)- 配置 Jenkins 容器上的持续集成环境

Docker 实战(2)- 配置 Jenkins 容器上的持续集成环境

作者头像
小菠萝测试笔记
发布2020-11-13 15:06:51
4440
发布2020-11-13 15:06:51
举报
文章被收录于专栏:自动化、性能测试

如果你还想从头学起 Docker,可以看看这个系列的文章哦!

https://www.cnblogs.com/poloyy/category/1870863.html

搭建 Jenkins 容器

就是实战第一篇文章:https://cloud.tencent.com/developer/article/1746261

Jenkins 初始化流程

访问 Jenkins

查看本机 IP
代码语言:javascript
复制
ifconfig6·rtyjie
查看容器运行端口
代码语言:javascript
复制
docker ps

我的是用主机 80 端口映射到容器的 8080 端口

浏览器访问 Jenkins
代码语言:javascript
复制
http://ip:80

查看管理员密码

进入到页面

查看密码有两种方式

第一种:查看容器日志
代码语言:javascript
复制
docker logs jenkins1

打码那一行就是密码哦

第二种: 去文件夹查看
代码语言:javascript
复制
cat /var/jenkins_node/secrets/initialAdminPassword
  • 因为我创建 Jenkins 容器时,将主机的 目录映射了容器的 /var/jenkins_home 目录

/var/jenkins_node

  • 所以可以直接在主机查到管理员密码,而无需进入容器再查看

初始化流程

创建管理员用户

自己配啥记住就行了,没啥特别要求

实例配置

默认会给一个地址的,不改也可以

配置完成
进入主界面

下载插件

需要的插件 gitlab、gitlab hook、allure

在它安装完后,自己重启 Jenkins 容器

代码语言:javascript
复制
docker restart jenkins1

将插件源切换国内源

直接看这个教程:https://cloud.tencent.com/developer/article/1640872

Jenkins 汉化

直接看这个教程:https://cloud.tencent.com/developer/article/1746266

Jenkins 全局工具设置

配置 JDK
配置 Git
配置 allure

应用保存!即可!

Jenkins 邮件功能测试

配置 Extended E-mail Notification
自定义电子邮=件通知的默认收件人列表
  • 可以在项目中使用 ,来包含此默认收件人列表(下面创建项目时讲到这个变量)

$DEFAULT_RECIPIENTS

  • 若要向某人抄送或密件抄送,不是将其放在“收件人”列表中,请在电子邮件地址之前添加 或密件抄送 bcc: (例如:cc:someone@example.com,bcc:bob@example.com)

cc:

配置邮箱通知

使用 Jenkins 实现自动化测试

将项目放到主机映射到容器的目录下

通过 xftp 将项目上传到主机

这是我自己的一个 pytest 项目

验证项目能正常跑

进入容器内,在项目文件夹爱内执行 pytest 命令

有 28 个测试用例都跑通了哦

Jenkins 创建任务工程

新建任务

Jenkins 任务配置构建后操作

在完成系统设置后,还需要给需要构建的项目进行邮件配置

重点:这里就有 $DEFAULT_RECIPIENTS ,上面也有讲到这个环境变量,默认收件人列表,如果需要添加新的收件邮件,需要用 , 隔开

邮件模板

直接复制粘贴到内容框就行

代码语言:javascript
复制
<!DOCTYPE html>    
<html>    
<head>    
<meta charset="UTF-8">    
<title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>    
</head>    
    
<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"    
    offset="0">    
    <table width="95%" cellpadding="0" cellspacing="0"  style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">    
        <tr>    
            本邮件由系统自动发出,无需回复!<br/>            
            各位同事,大家好,以下为${PROJECT_NAME }项目构建信息</br> 
            <td><font color="#CC0000">构建结果 - ${BUILD_STATUS}</font></td>   
        </tr>    
        <tr>    
            <td><br />    
            <b><font color="#0B610B">构建信息</font></b>    
            <hr size="2" width="100%" align="center" /></td>    
        </tr>    
        <tr>    
            <td>    
                <ul>    
                    <li>项目名称 : ${PROJECT_NAME}</li>    
                    <li>构建编号 : 第${BUILD_NUMBER}次构建</li>    
                    <li>触发原因: ${CAUSE}</li>    
                    <li>构建状态: ${BUILD_STATUS}</li>    
                    <li>构建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li>    
                    <li>构建  Url : <a href="${BUILD_URL}">${BUILD_URL}</a></li>    
                    <li>工作目录 : <a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>    
                    <li>项目  Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li>    
                     <li>测试报告: <a href="${PROJECT_URL}allure">${PROJECT_URL}allure</a></li> 
                </ul>    

<h4><font color="#0B610B">失败用例</font></h4>
<hr size="2" width="100%" />
$FAILED_TESTS<br/>

<h4><font color="#0B610B">最近提交(#$SVN_REVISION)</font></h4>
<hr size="2" width="100%" />
<ul>
${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="%c", changesFormat="<li>%d [%a] %m</li>"}
</ul>
详细提交: <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a><br/>

            </td>    
        </tr>    
    </table>    
</body>

最后保存

进行第一次构建
查看控制台输出

邮件发送成功!!

Jenkins 任务配置构建操作

主要两个任务

  1. 配置 pytest 命令
  2. 生成 allure 报告

配置 pytest 命令

代码语言:javascript
复制
#!/bin/bash
cd /var/jenkins_home/waimai
pytest -s -q --alluredir=${WORKSPACE}/allure-reports --clean-alluredir
exit 0

生成 allure 报告

这张图是重点哦

保存!!就成功了!

进行第二次构建

查看 allure 报告
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-11-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 搭建 Jenkins 容器
  • Jenkins 初始化流程
    • 访问 Jenkins
      • 查看本机 IP
      • 查看容器运行端口
      • 浏览器访问 Jenkins
    • 查看管理员密码
      • 进入到页面
      • 第一种:查看容器日志
      • 第二种: 去文件夹查看
    • 初始化流程
      • 创建管理员用户
      • 实例配置
      • 配置完成
      • 进入主界面
  • 下载插件
    • 将插件源切换国内源
      • 配置 JDK
      • 配置 Git
      • 配置 allure
      • 配置 Extended E-mail Notification
      • 自定义电子邮=件通知的默认收件人列表
      • 配置邮箱通知
  • Jenkins 汉化
  • Jenkins 全局工具设置
  • Jenkins 邮件功能测试
  • 使用 Jenkins 实现自动化测试
    • 将项目放到主机映射到容器的目录下
      • 验证项目能正常跑
        • Jenkins 创建任务工程
          • 新建任务
        • Jenkins 任务配置构建后操作
          • 邮件模板
          • 进行第一次构建
          • 查看控制台输出
        • Jenkins 任务配置构建操作
          • 配置 pytest 命令
            • 生成 allure 报告
              • 进行第二次构建
                • 查看 allure 报告
            相关产品与服务
            容器服务
            腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档