Jenkins支持很多的plugin,这些plugin极大地丰富了Jenkins的功能。安装plugin有两种方式:自动安装和手动安装。
这种方式非常简单,但前提是Jenkins必须连接网络。
通过浏览器进入Jenkins界面,Manage Jenkins->Manage Plugins,在Available标签中,列出了所有的plugin。
选中所需plugin前面的复选框,点击“Install without restart”按钮,可以自动安装。安装界面如下图所示:
在不能联网的情况下,就只能手动安装。手动安装又有两种方式:Jenkins CLI安装plugin和Upload安装plugin。
必须先在https://ci.jenkins-ci.org/jnlpJars/jenkins-cli.jar下载jenkins-cli.jar,才能执行Jenkins CLI命令。
Jenkins CLI 命令的格式:
java -jar jenkins-cli.jar [-s JENKINS_URL] command [options...] [arguments...]
其中,JENKINS_URL为所安装Jenkins的URL,如果在装Jenkins的本机上执行命令,可以简单地用http://localhost:XXXX,XXXX为Jenkins的端口号。
如果采用的是HTTP的默认端口80,则可以省略端口,直接用http://localhost。后面的例子为了简便,都是采用80端口。
命令java -jar jenkins-cli.jar -s http://localhost help可以查看Jenkins的所有命令及功能如下:
上面是执行Jenkins CLI命令的一些基础知识,下面开始介绍如何手动安装Jenkins plugin。
1)首先,手动下载需要安装的plugins。
下载地址:http://updates.jenkins-ci.org/download/plugins/
这些下载的plugin应该是hpi文件,将它们放到Jenkins的安装目录下的plugins文件中,如果是Liunx系统,就是/root/.jenkins/plugins目录下。
2)然后,重启Jenkins。
有如下几种重启Jenkins的方式:
浏览器:浏览器地址栏中中输入JENKINS_URL/restart。不过这种方式不稳定,有可能重启过程中会出错。
CLI命令:java -jar jenkins-cli.jar -s http://localhost restart,或者java -jar jenkins-cli.jar -s http://localhost safe-restart
安装命令:java -jar jenkins.war --httpPort=80
3)执行install-plugin命令
等Jenkins重启之后,就可以执行安装plugin的命令,示例命令如下:
java -jar jenkins-cli.jar -s http://localhost install-plugin plugins/XXX.hpi,XXX为plugin名称
安装过程中,可能会提示该plugin依赖的其他plugin还没安装,导致安装失败。
这种情况下,你应该重复前面步骤,先安装所有依赖的plugin,然后才能正确安装该plugin。
等安装完所需plugin之后,可以验证安装是否成功,有两种方式:
CLI命令:java -jar jenkins-cli.jar -s http://localhost list-plugins列出所有已安装的plugin
浏览器:进入Jenkins,Manage Jenkins->Manage Plugins,在Installed标签中显示所有已安装plugin
如果觉得Jenkins CLI的方式安装plugin比较麻烦,这里还有一种类似于自动安装的简单安装方式:upload安装plugin。Upload安装plugin方式,需要手动下载plugin,然后在Jenkins界面中upload plugin,从而实现安装plugin的目的。
进入Jenkins界面,Manage Jenkins->Manage Plugins->Advanced标签,Upload plugin界面如下图所示:
点击Browse按钮,选择已经下载好的plugin的hpi文件,然后点击Upload按钮安装,进入安装的提示界面如下:
上面是以pipeline plugin为例的安装结果。虽然安装失败,但是从Details中可以知道安装失败的原因:依赖的jquery 1.7.2-1和parameterized-trigger 2.17两个plugin不存在。按照前面介绍的upload安装plugin的方法,先安装jquery 1.7.2-1和parameterized-trigger 2.17,再安装pipeline plugin就没问题了。