Jenkins主从节点使用nw.js打包node程序(一)
2017-07-12 10:15
260 查看
公司根据客户需求将前端打包成了一个windows的客户端,采用的技术方案是Nw.JS以及Inno Setup配合,将前端初步编译生成之后的静态文件手工进行打包之后发布给测试人员。前端打包工作较为重复繁琐,准备将打包流程归纳到整个项目的自动发布流程中,由测试人员自主进行自动打包。
通过研究网上资料以及与前端人员交流,得到基本思路是先跳过编译过程,将编译后的静态文件和Inno 打包脚本取出后通过命令行执行。大概步骤是通过安装windows版的jenkins 作为slave节点,Linux主节点发出构建命令后slave节点从Git获取编译后的静态代码拷贝静态文件到指定的目录,然后直接在workspace空间目录执行inno Compil32 预置脚本,编译完成后将构建完整的可执行exe文件回传到主master节点或者直接发布。
1、首先构建主从节点
在slave机器上正常安装好jenkins,然后在主节点上配置从节点,进入系统管理——管理节点——新建节点,选择永久节点。进入后需要填的就是远程工作目录和启动方法,其中有个坑就是如果没有在系统管理——Configure Global Security里面启用JNLP,Lanuch Java Web Start是看不到的。
选择保存以后来到这个页面,现在有两种方式启动slave的服务程序,第一种首先点击slave.jar下载这个jar包,然后拷贝到slave节点,使用Jenkins提示的如下Java命令行执行这个jar包,看到命令窗口执行后提示agent
discoery successful就可以了。
第二种方式是点击这个Launch按钮,下载一个jnlp文件拷贝到slave节点并执行就见到如下界面,如果想安装成服务点击FIles选择对应项目就可以了。当然,这里还有一个坑是JNLP是跑的端口,所以主节点需要打开防火墙啦。
看到如上界面我们主从服务器就连接上了,主节点可以看到从节点连接成功,这样主从的配置就完成了。
下一步是再windows的从服务器上实现自动构建
通过研究网上资料以及与前端人员交流,得到基本思路是先跳过编译过程,将编译后的静态文件和Inno 打包脚本取出后通过命令行执行。大概步骤是通过安装windows版的jenkins 作为slave节点,Linux主节点发出构建命令后slave节点从Git获取编译后的静态代码拷贝静态文件到指定的目录,然后直接在workspace空间目录执行inno Compil32 预置脚本,编译完成后将构建完整的可执行exe文件回传到主master节点或者直接发布。
1、首先构建主从节点
在slave机器上正常安装好jenkins,然后在主节点上配置从节点,进入系统管理——管理节点——新建节点,选择永久节点。进入后需要填的就是远程工作目录和启动方法,其中有个坑就是如果没有在系统管理——Configure Global Security里面启用JNLP,Lanuch Java Web Start是看不到的。
选择保存以后来到这个页面,现在有两种方式启动slave的服务程序,第一种首先点击slave.jar下载这个jar包,然后拷贝到slave节点,使用Jenkins提示的如下Java命令行执行这个jar包,看到命令窗口执行后提示agent
discoery successful就可以了。
第二种方式是点击这个Launch按钮,下载一个jnlp文件拷贝到slave节点并执行就见到如下界面,如果想安装成服务点击FIles选择对应项目就可以了。当然,这里还有一个坑是JNLP是跑的端口,所以主节点需要打开防火墙啦。
看到如上界面我们主从服务器就连接上了,主节点可以看到从节点连接成功,这样主从的配置就完成了。
下一步是再windows的从服务器上实现自动构建
相关文章推荐
- Jenkins主从节点使用nw.js打包node程序(二)
- Jenkins主从节点使用nw.js打包node程序(三)
- 使用 node.js 开发前端打包程序 ---转载
- VMWare的Cloud Foundry实践(一):安装使用和第一个云端node.js程序
- 使用Node.js的socket.io模块开发实时web程序
- node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理
- 为Node.js程序配置使用Nginx服务器的简明教程
- nw.js node-webkit系列(8)Native UI API MenuItem的使用
- 使用Node.js的socket.io模块开发实时web程序
- nw.js node-webkit系列(15)如何使用内部模块和第三方模块进行开发
- 使用nw.js将html项目打包为桌面程序
- nw.js node-webkit系列(10)Native UI API Clipboard的使用
- 使用Node.js为其他程序编写扩展的基本方法
- nw.js 开发跨平台应用(2)使用nw打包项目
- Node.js程序配置使用Nginx服务器(2017.11.17添加https)
- nw.js node-webkit系列(25)child_process中spawn和exec方法的使用
- nw.js node-webkit系列(17)怎样打包和分发你的应用
- nw.js 打包白屏问题解决方案 node-webkit白屏
- 使用Node.js为其他程序编写扩展的基本方法
- nw.js node-webkit系列(7)Native UI API Menu的使用