Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)

本篇例子: git + angular4 + nodejs +cnpm
NodeJs安装例子: Linux系统下安装NodeJS
  • 安装最新angular cnpm install -g @angular/cli
  • 创建工程, 输入工程名称, 选择构建一个自由风格的软件项目, 点击OK

    Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)
    文章图片
    image.png 【Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)】
  • 代码管理, 如果没有创建用户,点击Add配置用户
    Repository URL: git 项目地址
    Credentials: git 用户
    Branch Specifier (blank for 'any'): 分支

    Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)
    文章图片
    image.png
  • 配置构建Shell, 选择Execute shell

    Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)
    文章图片
    image.png
  • 配置完成后
构建脚本以angular4 为例子
source /etc/profile : 导入系统环境变量, 要不然cnpm 无效
cnpm cache verify: 清空cnpm 缓存, 多项目anguar4 vue react情况下会导致未知错误
tar -czf web.tar.gz dist: 把包压缩方便传输
source /etc/profile cnpm cache verify cnpm install cnpm run build -- --dev tar -czf web.tar.gz dist rm -rf dist

Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)
文章图片
image.png
  • 准备好部署包后, 后面只需要上传到远程服务即可, 转到构建后操作, 选择Send build artifacts over SSH
    Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)
    文章图片
    image.png
Name: 远程服务器
Source files: 包的路径,相对路径,相对于工作目录
Remove prefix: 移除前缀路径, 如果包的路径为 demo/a.jar, 发到服务器则为/root/demo/a.jar, 如果移除前缀路径为 demo/,则服务器路径为/root/a.jar
Remote directory: 上传到远程服务器的目录, 注意这是一个相对路径, 根目录取决于你的SSH Service配置
Exec command:上传完成后需要执行的命令
点击 Add Service 可添加远程服务器
点击 Add Transfer Set 可添加上传文件
Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)
文章图片
image.png
  • 配置完成后
cd /data/html/shop/dev mv tongji-web /tmp/tongjie-web-`date -d now +%s` tar vxf tongji-web.tar.gz mv dist tongji-web rm tongji-web.tar.gz

Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)
文章图片
image.png
  • 点击保存, 回到工程页面点击立即构建, 第一次构建会非常慢

    Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)
    文章图片
    image.png
  • 构建成功后会显示蓝色

    Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)
    文章图片
    image.png
  • 查看远程服务器 已经成功上传

    Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)
    文章图片
    image.png
augular 构建问题很多, 建议先在任意一台服务器上自行构建一次, 排除问题比较方便, 构建命令建议使用cnpm, 因为npm构建经常由于网络问题,或依赖包太多导致未知错误
下一篇:Jenkins自动化部署-数据库篇 (五)

    推荐阅读