欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

jenkins部署nodejs前端项目

时间:2023-06-28
一、jenkins安装node插件

Manage Jenkins-->Manage Plugins

在可选插件钟搜索NodeJS,找到NodeJS ,勾选,然后点击Install without restart

二、安装node

以node13为例,node14对安装低版本的node-sass有影响

下载和解压

wget https://nodejs.org/dist/v13.9.0/node-v13.9.0-linux-x64.tar.gztar zxvf node-v13.9.0-linux-x64.tar.gz -C /usr/localcd /usr/localmv node-v13.9.0-linux-x64 node13

配置环境变量

#编辑/etc/profilevi /etc/profile#在最后添加#set nodejs envexport NODE_HOME=/usr/local/node13export PATH=$NODE_HOME/bin:$PATH#用source命令是环境变量生效source /etc/profile

查看版本

node -vnpm -v

配置淘宝镜像

npm config set registry https://registry.npmmirror.comnpm config set sass_binary_site=https://npm.taobao.org/mirrors/node-sass

三、Jenkins配置node

Manage Jenkins-->Global Tool Configuration--> NodeJS 安装
新增NodeJS

别名node-v13
安装目录/usr/local/node13

四、项目配置

Manage Jenkins-->Manage Plugins

搜索Git Parameter安装

以git项目打包为例说明使用

新建item

任务名称 任意,类型选Freestyle project

填写内容分6块,分别是 General 、源码管理、构建触发器、构建环境、构建、构建后操作
General内容

1.勾选Discard old builds 设置 策略Loq Rotation 保持构建的天数=1 保持构建的最大个数=52.GitLab Connection 选择 jenkins3.勾选This project is parameterized 添加参数 Git Parameter(这里用到的就是刚才的 Git Parameter插件) 名称 填 branch 参数类型 选择 分支

源码管理内容

1.选择Git Repositories Repository URL 填git地址如http://git.aaa.com/bbb_projects/ccc.git Credentials 这里添加 你的git账号 可以用gitlab的用户名密码,也可以用之前的全局配置的apitoken Branches to build 指定分支(为空时代表any) 填 $branch 其他选项 默认

构建触发器

不填 这里可以配置一些比如push代码后自动构建的操作等

构建环境

勾选 Provide Node & npm bin/ folder to PATH NodeJS Installation 选择之前配置的node-v13 其余选项默认

构建

增加构建步骤-Execute Shell脚本如下PACKAGE_ConFIG=package.jsonVUETEMPLATECOMPILER=2.6.11sed -i 's#("vue-template-compiler": ").*#1'"$VUETEMPLATECOMPILER"'",#g' $PACKAGE_ConFIGnpm install --unsafe -permnpm run build:devzip -r dist.zip dist/usr/local/transfer/transfer cow dist.zip >wenshushu.txtlinklineNumber=$(sed -n '/Download link/=' wenshushu.txt)echo $linklineNumberlinklinestr=$(sed -n "${linklineNumber}p" wenshushu.txt)echo $linklinestrstr=${linklinestr#*link: }mosquitto_pub -h mq.tongxinmao.com -t topic/sunwardtest -m "{"module":"saas-wis-web","link":"${str}"}"

关键构建命令

npm installnpm run build:devzip -r dist.zip dist

五、常见报错

1.node-sass低版本安装不成功

建议安装node版本<=node13,因为低版本node-sass不支持高版本的node

2.node-sass mkdir没有权限

由于node-sass不能用root用户命令运行npm install命令需要加上 --unsafe -perm或者改权限不用root用户执行这个命令

3.Syntax Error: TypeError: Cannot read property 'parseComponent' of undefined

vue的版本与vue-template-compiler不一致导致的

检查package.json里vue 和 vue-template-compiler版本号是否完全一致,不能带有“^” 或者 “~”,如果有去掉,改成数字点号形式。上面的版本都是2.6.11,但是vue-template-compiler前带有“^” ,所以上面的命令用sed命令替换掉了。

4.长时间npm build没有反应

清理工作空间

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。