首页 > 代码库 > Jenkins通过FTP上传站点太多文件导致太慢且不稳定,切换为压包上传再解压的思路(asp.net)

Jenkins通过FTP上传站点太多文件导致太慢且不稳定,切换为压包上传再解压的思路(asp.net)

在本地先处理好要上传的站点文件之后,可能会因为一些网页切图导致ftp上传不稳定,中断,或者文件占用的问题。

那么换了一种实现思路,要借助jenkins的工具jenkins-cli.jar。

解决思路:

1、本地处理好奥上传的站点文件,通过压缩软件进行打包,其中压包的命名有规律,比如日期+BuildID的形式。

2、用FTP插件进行上传到外网的目录。

3、外网的机器上也同样安装Jenkins的环境,并新建好一个Job,这个Job增加参数化构建,参数为BuildID,然后增加批处理进行BuildID的压缩包查找并解压。

4、本地的Jenkins构建好Job之后,再通过jenkins-cli.jar调用外网的解压Job进行解压。

这样一来,解决了零碎文件的上传速度限制。

主要的解决步骤:

1、外网机器上的Job上添加参数化构建(2.x默认已经安装此插件,不需要安装其它)

技术分享

2、外网机器上获取Job上传入的参数,可以利用参数进行批处理的查找解压

技术分享

3、本地的Jenkins处理好打包站点文件后,通过jenkins-cli.jar的远程调用

java -jar jenkins-cli.jar -s http://192.168.199.2:10000/ build test -p buildid=1 --username administrator --passwordd admin

上面的意思是:构建test的项目,传入了buildid这个参数值为1,后面是登录的管理员账号密码。

Jenkins通过FTP上传站点太多文件导致太慢且不稳定,切换为压包上传再解压的思路(asp.net)