如何配置 Nodejs 项目的持续集成?
2018-03-29 by dongnan
目标
基于 Jenkins
与 Docker
完成 NodeJs
项目的持续集成工作;
流程图
必要的组件
docker
&nodejs
相关请参考这里。jenkins
相关请参考这里。jenkins
使用gogs webhook
插件,请参考这里。- 用于
build
&push docker
镜像脚本程序。 harbor
相关请参考这里。
操作步骤
安装 NodeJs 插件
在 jenkins -> 系统管理 -> 管理插件 -> 过滤 -> NodeJS -> 安装。
配置 NodeJs 程序
在 jenkins -> 系统管理 -> 全局工具配置-> NodeJs -> 按需求填写 。
确认后 jenkins 将自动安装 NodeJs 程序,安装的目录在:
Your-Jenkins-dir/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/NodeJS-9.8.0
创建任务
创建任务比较简单,这里任务类型为自由风格项目,并按照实际情况填写,可以参考这里。
需要说明的是,以下使用webhook
方式,配置项目,如果不使用 webhook
方式 则跳过webhook
的相关步骤即可,例如选择SCM
方式:
选择其它的“触发方式” 每5分钟检查一次 git
仓库。
构建触发器, 选择 Build when a change is pushed to Gogs
构建环境,选择 Provide Node & npm bin/ folder to PATH
构建,选择 Execute Shell
Command 内容
node -v && cnpm -v
cnpm install
cnpm run test
bash ${WORKSPACE}/docker/war2image.sh
验证
提交代码后,gogs
将推送事件消息到 jenkins
,触发 jenkins
进行项目构建工作。
更新升级 Nodejs 程序
20210220 升级Nodejs 版本,并将 jenkins 中全局工具配置为本地 NodeJs 程序
版本
jenkins 2.280
node-v12.20.1-linux-x64 二进制包
步骤
- 下载
nodejs
解压并放置到/usr/local/node
目录。 - 配置
jenkins
全局工具。 Manage Jenkins -> Global Tool Configuration -> NodeJS -> NodeJS installations -> ADDNodeJS -> Name填写名称 -> Installation directory填写nodejs程序安装的目录。
- 配置项目中的Nodejs编译环境。
- 具体项目 ->
Configure Build Environment -> Provide Node & npm bin/ folder to PATH -> NodeJS Installation
-> 选择第2步骤中的 Name名称。