Tapd+腾讯工蜂+Jenkins持续部署

Tpad关联腾讯工蜂

tapd,项目设置,流水线设置
Tapd+腾讯工蜂+Jenkins持续部署_第1张图片
这个网址复制到:腾讯工蜂,项目,项目高级设置,网络回调钩子
Tapd+腾讯工蜂+Jenkins持续部署_第2张图片

服务器安装git

这里已安装,只是查看。
在这里插入图片描述
git需要配置ssh秘钥,设置本地全局账户

    $ git config --global user.name "xxx"
    $ git config --global user.email "你的邮箱"

生成秘钥

    $ ssh-keygen -t rsa -C "你的邮箱"
    # 运行上面命令后,连续按3个回车(如果不需要密码的话)。

然后在服务器的root/.ssh文件夹下就会有
Tapd+腾讯工蜂+Jenkins持续部署_第3张图片
pub公钥在腾讯工蜂添加到个人设置里面的ssh秘钥
在这里插入图片描述

安装Jenkins

可以直接yum安装,也可以官网下载压缩包上传服务器安装。
在这里插入图片描述
之后通过服务器公网地址进入Jenkins,设置初始密码,安装推荐的插件,进入主页面。
Tapd+腾讯工蜂+Jenkins持续部署_第4张图片
下载tapd Jenkins插件
Tapd+腾讯工蜂+Jenkins持续部署_第5张图片
进入Jenkins系统管理,插件管理,高级,上传插件
Tapd+腾讯工蜂+Jenkins持续部署_第6张图片
配置全局tapd插件(图自Tapd文档)
Tapd+腾讯工蜂+Jenkins持续部署_第7张图片
Tapd+腾讯工蜂+Jenkins持续部署_第8张图片

字段说明:

  • Jenkins名称: 给Jenkins命名,方便在TAPD管理Jenkins配置时,根据名称选择调用对应Jenkins服务 (格式要求:8-20位字符,请输入中英文、下划线、英文句号和数字,且只能以中英文开头
  • Jenkins管理员: 填写Jenkins的管理员账号,以便管理Job构建
  • Jenkins访问地址: 请确保当前jenkins服务器已开通外网访问策略,并填写可以从外网访问的jenkins主页链接地址(示例:http://123.207.x.x/jenkins), 以支持从TAPD访问当前Jenkins
  • Jenkins API Token:在用户管理中生成token填入Tapd+腾讯工蜂+Jenkins持续部署_第9张图片
  • Webhook地址:进入TAPD 项目设置-应用设置,选择【流水线】配置并获取地址填入。
  • Secret Token:进入TAPD 项目设置-应用设置,选择【流水线】配置并获取。

tapd授权Jenkins 服务:命名随意,访问地址为服务器地址+端口号
Tapd+腾讯工蜂+Jenkins持续部署_第10张图片

配置项目环境

git拉下来的项目所需的环境,比如vue项目,或者springboot项目等。
进入系统管理,全局工具配置,
Tapd+腾讯工蜂+Jenkins持续部署_第11张图片
配置maven所安装的settings.xml路径
Tapd+腾讯工蜂+Jenkins持续部署_第12张图片
Git,Node,Maven之类配置都差不多
Tapd+腾讯工蜂+Jenkins持续部署_第13张图片
Tapd+腾讯工蜂+Jenkins持续部署_第14张图片
Tapd+腾讯工蜂+Jenkins持续部署_第15张图片

创建Jenkins Job

这里由于是maven项目,需要安装 Maven Integration插件。
Tapd+腾讯工蜂+Jenkins持续部署_第16张图片
关联tapd,项目中填写tapd项目 id
Tapd+腾讯工蜂+Jenkins持续部署_第17张图片
Tapd+腾讯工蜂+Jenkins持续部署_第18张图片
参数设置,时间随意。
Tapd+腾讯工蜂+Jenkins持续部署_第19张图片
填写腾讯工蜂仓库地址。Tapd+腾讯工蜂+Jenkins持续部署_第20张图片
Credentials中添加前面生成的ssh秘钥
Tapd+腾讯工蜂+Jenkins持续部署_第21张图片
maven项目构建
Tapd+腾讯工蜂+Jenkins持续部署_第22张图片
可选择构建触发器,也可不选

Tapd+腾讯工蜂+Jenkins持续部署_第23张图片
构建好后执行的命令。
Tapd+腾讯工蜂+Jenkins持续部署_第24张图片
命令中的脚本。

# 将之前部署的应用停止
# stop.sh
echo "Stopping SpringBoot Application"
pid=`ps -ef | grep demo-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
   kill -9 $pid
fi
#replace.sh 用于将上次构建的结果备份,然后将新的构建结果移动到合适的位置
# 先判断文件是否存在,如果存在,则备份
# 运行项目的目录
file="/home/demo-0.0.1-SNAPSHOT.jar"
if [ -f "$file" ]
then
   mv /home/demo-0.0.1-SNAPSHOT.jar /home/backup/demo-0.0.1-SNAPSHOT.jar.`date +%Y%m%d%H%M%S`
fi
# 把Jenkins工作空间中打包好的文件移动到目标目录
mv /var/lib/jenkins/workspace/flips-2/target/demo-0.0.1-SNAPSHOT.jar /home/demo-0.0.1-SNAPSHOT.jar

你可能感兴趣的:(踩坑)