• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Windows+Jenkins+gitblit自动化部署Vue到IIS

武飞扬头像
搬砖的工人
帮助5

过程中遇到的一些问题,记录下来,希望能帮到一些有需要的人

 Jenkins官网下载地址(相关安装这里我就不做任何阐述了,网上有很多相关文章)

学新通

Jenkins  Gitblit部署前端项目Vue自动化部署遇到的问题

首先进入插件管理安装nodejs 和gitblit插件

学新通

 学新通学新通

  1.  
    配置在系统全局设置配置nodejs
  2.  
     
  3.  
    这里可以配置多个nodejs,可以下来进行选择

 学新通

 学新通

 首先,在GitBlit创建一个仓库并且提交相关代码

  1.  
    git提交相关操作这里就不做说明了
  2.  
     

学新通

1.设置源代码管理

  1.  
    这里遇到的第一个问题(仓库名称不能为中文)
  2.  
    如果是中文git拉取代码的时候会提示以下错误
  3.  
    解决方式把仓库名称改为英文

学新通

当jenkins不提示有问题时,就说明验证就通过了

 学新通

 2.配置构建触发器(我这里主要是用Poll SCM 定时轮询获取gitbilit代码进行构建和钩子post-commit进行构建)

 Poll SCM 定时轮询

  1.  
    首先格式为:* * * * *(五个星);
  2.  
     
  3.  
    第一个*表示分钟,取值0~59
  4.  
    第二个*表示小时,取值0~23
  5.  
    第三个*表示一个月的第几天,取值1~31
  6.  
    第四个*表示第几月,取值1~12
  7.  
    第五个*表示一周中的第几天,取值0~7,其中07代表的都是周日
  8.  
     
  9.  
    使用举例:
  10.  
    每隔10分钟构建一次:H/5 * * * *
  11.  
    每隔1小时构建一次: H H/1 * * *
  12.  
    每月30号构建一次: H H 30 * *

 学新通

然后继续配置构建环境,这里nodejs 我选择的是默认,我默认前面全局配置的nodejs

学新通

  1.  
    最后配置构建步骤
  2.  
     
  3.  
    首先创建一个IIS站点,我这里站点访问的文件路径为E:\IISFile\TestTest
  4.  
     
  5.  
     
  6.  
    然后依次使用Execute Windows batch command
  7.  
    cd C:\ProgramData\Jenkins\.jenkins\workspace\Test //进入到项目目录
  8.  
    npm config set registry https://registry.npm.taobao.org //设置npm 淘宝镜像
  9.  
    npm config get registry //检测镜像是否设置成功
  10.  
    npm install //执行初始化
  11.  
    npm run build //执行构建发布
  12.  
     
  13.  
     
  14.  
    XCOPY "C:\ProgramData\Jenkins\.jenkins\workspace\Test是\dist" /E/Y "E:\IISFile\TestTest" //拷贝文件
  15.  
     
  16.  
    然后保存

学新通

  1.  
    最后手动按点击现在构建
  2.  
     
  3.  
    然后进入到控制台查看构建情况
  4.  
     
  5.  
    如果没有提示出错则表示构建成功
  6.  
     

 学新通

 学新通

访问IIS站点是否正常

学新通

 钩子post-commit后触发构建

  1.  
    jenkins 源码构建器设置
  2.  
     
  3.  
    只要勾选 SCM 就可以了不用加定时器,其他的设置和上面一致

学新通

  1.  
    首先进入gitblit服务器
  2.  
    找到data\groovy 目录下jenkins.groovy
  3.  
     
  4.  
    这里可以复制一份,处理改也可以,在原来的基础上改也可以

学新通

  1.  
    打开jenkins.groovy文件编辑
  2.  
    把原来的http://yourserver/jenkins 替换成你jenkins地址
  3.  
    我这里是http://127.0.0.1:8080

学新通

进入gitblit仓库管理里选择hook脚本

 学新通

  1.  
    然后修改代码git提交查看构建,
  2.  
    提交后进入jenkins查看,发现没有触发构建
  3.  
     
  4.  
     
  5.  
    进入gitblit 里查看日志出现错误

学新通

  1.  
    然后用cmd curl curl http://127.0.0.1:8080/git/notifyCommit?url=https://zenghy@git.huipinyc.cn:8443/r/testtesttest.git
  2.  
    访问校验,发现提示需要授权token

学新通

到此,又到了填坑的地方了,一开始,以为是登录jenkins的账号密码token ,然后设置了token 加入链接里访问,依然是提示这个错误,然后就开始百度,发现百度里没有出现相关答案,也看到有些博主的一些解决方式,但是最终按照操作还是没有解决,最后没辙去看jenkins git 插件官网有没有相关现象,可能是运气好,还被真找到了,原来jenkins 在 Git 插件 4.11.3 及更早版本中,可以使用 GET 请求访问此终端节点,而无需进行身份验证。/git/notifyCommit(Git 插件网络钩子中缺少身份验证机制)

学新通

 点击文档查看(发现是github仓库里有说明)

学新通

学新通

然后对Jenkins全局安全配置

  1.  
    进入jenkins 全局安全配置
  2.  
     
  3.  
    然后下来找到Git plugin notifyCommit access tokens
  4.  
     
  5.  
    添加添加token 添加生成
  6.  
     
  7.  
     
  8.  
    然后复制token
  9.  
     
  10.  
    最后把token 拼接到gitblit data\groovy\jenkins.groovy 文件中url拼接起来

 学新通

 学新通

学新通

学新通

  1.  
    最后修改文件,提交git
  2.  
     
  3.  
    发现已正常触发自动构建

学新通

 学新通

git使用ssh拉取代码报错:

using GIT_SSH to set credentials gitblit Verifying host key

using known hosts file

You're using 'Known hosts file' strategy to verify ssh host keys, but your known_hosts file does not exist, please go to 'Manage Jenkins' -> 'Configure Global Security' -> 'Git Host Key Verification Configuration' and configure host key verification.

  1.  
    出现此问题是:jenkins登录使用的是jenkins系统用户,而不是windows系统用户,所以读取known_hosts提示找不到
  2.  
     
  3.  
    解决方式:
  4.  
    C:\Users\Administrator\.ssh 会有config,id_rsa,id_rsa.pub,known_hosts文件,把这4个文件拷贝到C:\Windows\System32\config\systemprofile\.ssh
  5.  
     
  6.  
    注意:
  7.  
    另外Administrator账户是指windows登录账户
  8.  
    .ssh 目录不存在,则创建

到此构建就完成了

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfgiegg
系列文章
更多 icon
同类精品
更多 icon
继续加载