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

本篇例子: git + angular4 + nodejs +cnpm
NodeJs安装例子: Linux系统下安装NodeJS

  • 安装最新angular cnpm install -g @angular/cli

  • 创建工程, 输入工程名称, 选择构建一个自由风格的软件项目, 点击OK

    Jenkins自动化部署-前端篇 (四)_第1张图片
    image.png

  • 代码管理, 如果没有创建用户,点击Add配置用户
    Repository URL: git 项目地址
    Credentials: git 用户
    Branch Specifier (blank for 'any'): 分支

    Jenkins自动化部署-前端篇 (四)_第2张图片
    image.png

  • 配置构建Shell, 选择Execute shell

    Jenkins自动化部署-前端篇 (四)_第3张图片
    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自动化部署-前端篇 (四)_第4张图片
image.png
  • 准备好部署包后, 后面只需要上传到远程服务即可, 转到构建后操作, 选择Send build artifacts over SSH
    Jenkins自动化部署-前端篇 (四)_第5张图片
    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自动化部署-前端篇 (四)_第6张图片
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自动化部署-前端篇 (四)_第7张图片
image.png
  • 点击保存, 回到工程页面点击立即构建, 第一次构建会非常慢

    Jenkins自动化部署-前端篇 (四)_第8张图片
    image.png

  • 构建成功后会显示蓝色


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


    Jenkins自动化部署-前端篇 (四)_第10张图片
    image.png

augular 构建问题很多, 建议先在任意一台服务器上自行构建一次, 排除问题比较方便, 构建命令建议使用cnpm, 因为npm构建经常由于网络问题,或依赖包太多导致未知错误

下一篇:Jenkins自动化部署-数据库篇 (五)

你可能感兴趣的:(Jenkins自动化部署-前端篇 (四))