jenkins自定义插件生成以及上传插件
一、环境依赖1.1 JDK配置JDK版本要求在1.6以上1.2 Maven配置Maven官方要求版本在3以上1.3 Maven环境配置到用户目录的.m2下修改setting.xml文件,配置Jenkins库依赖,C:\Users\Administrator\.m2\settings.xml二、插件开发2.1 创建原命令:mvn hpi:create或...
一、环境依赖
JDK版本要求在1.6以上
Maven官方要求版本在3以上
到用户目录的.m2下修改setting.xml文件,配置Jenkins库依赖,C:\Users\Administrator\.m2\settings.xml
二、插件开发
原命令:mvn hpi:create或者mvn -U org.jenkins-ci.tools:maven-hpi-plugin:create
执行后错误信息如下:
更新后使用的最新命令如下,首次创建需要Download必须的依赖,需要一些时间
mvn archetype:generate -Dfilter=io.jenkins.archetypes:plugin
执行过程中需要提交一些信息,
1、选择archetype,提示列出了三种,这里选择一个空白的插件框架1
2、选择版本,默认1.2
3、提供groupId,
Define value for property 'groupId':XXX.XXX.XXX
4、提供ArtifactId,项目名称
Define value for property 'artifactId':XXX
5、提供版本号,默认1.0-SNAPSHOT
Define value for property 'version' 1.0-SNAPSHOT:
6、提供应用包名,默认groupId
Define value for property 'package' XXX.XXX.XXX: :
7、确认以上信息
Confirm properties configuration:Y
创建成功
cd到XXX工程目录下,执行以下命令
mvn install 或者mvn package
执行完成如下
2.3 代码的解释
数据的绑定:
<!--config.jelly-->
<f:entry title="Name" field="name">
<f:textbox />
</f:entry>
//--HelloWorldBuilder.java--
@DataBoundConstructor
public HelloWorldBuilder(String name) {
this.name = name;
}
首先,在config.jelly中包含需要传入的参数配置信息的文本框,field为name,这样可以在Jenkins中进行配置,然后通过DataBoundConstructor的方式,传到类中。
Jenkins插件任务的执行
@Override
public boolean perform(AbstractBuild build, Launcher launcher, BuildListener listener) {
// This is where you 'build' the project.
// This also shows how you can consult the global configuration of the builder
listener.getLogger().println("Hello, "+name+"!");
return true;
}
根据注释可以了解:该处是你在Job进行构建时进行操作的地方,并且这里可以根据你在配置中的设置执行你需要的工作。通常,根据需要修改perform函数即可。
传入数据的检查
public FormValidation doCheckName(@QueryParameter String value)
throws IOException, ServletException {
if (value.length() == 0)
return FormValidation.error("Please set a name");
if (value.length() < 4)
return FormValidation.warning("Isn't the name too short?");
return FormValidation.ok();
}
在该函数中,实现在配置页面中填写内容时,进行校验的过程。如函数所述,当填入内容为空时,提示:Please set a name。你可以根据你的需要进行逻辑的控制。
2.4 转换为eclipse工程
为了便于在编辑器中进行修改,我们需要将生成的maven代码转化为eclipse工程,使用的命令如下:
mvn eclipse:eclipse
或者
mvn -DdownloadSources=true -DdownloadJavadocs=true -DoutputDirectory=target/eclipse-classes eclipse:eclipse
第二条较长的命令中,参数是可选的。
2.5 使用.hpl进行调试
maven中使用.hpl(hudson plugin link)格式来进行插件的调试。hpl文件中只包含一个链接,
链接到类似META-INF/MANIFEST.MF的说明
文件../path/to/your/plugin/workspace/manifest-debug.mf。该文件其中额外定义了一些属性来指定文件目录位置,这样资源的修改可以立即生效(需要配置stapler.jelly.noCache=true),不需要重新打包安装。
在maven中可以使用命令:
mvn hpi:hpl -DhudsonHome=/...
在调试通过后,可以使用.hpi文件来启动jenkins,查看结果,命令如下:
mvn hpi:run -DhudsonHome=/...
三、安装自定义插件
3.1 上传插件
进入jenkinsà系统管理à插件管理à高级
找到上传插件
上传.hpi文件,进入job,就可以找到刚刚安装的插件
更多推荐
所有评论(0)