forked from jenkinsci/jira-plugin
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathJiraVersionCreatorBuilder.java
More file actions
95 lines (77 loc) · 2.76 KB
/
JiraVersionCreatorBuilder.java
File metadata and controls
95 lines (77 loc) · 2.76 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
package hudson.plugins.jira;
import hudson.Extension;
import hudson.FilePath;
import hudson.Launcher;
import hudson.model.AbstractProject;
import hudson.model.Run;
import hudson.model.TaskListener;
import hudson.tasks.BuildStepDescriptor;
import hudson.tasks.BuildStepMonitor;
import hudson.tasks.Builder;
import jenkins.tasks.SimpleBuildStep;
import net.sf.json.JSONObject;
import org.kohsuke.stapler.DataBoundConstructor;
import org.kohsuke.stapler.StaplerRequest2;
/**
* A build step which creates new Jira version. It has the same functionality as
* {@link JiraVersionCreator} but can be used multiple times in the same build
* (e.g. for different projects) and supports conditional triggering.
*
* @author marcin.czerwinski marcinczrw@gmail.com
*/
public class JiraVersionCreatorBuilder extends Builder implements SimpleBuildStep {
private String jiraVersion;
private String jiraProjectKey;
@DataBoundConstructor
public JiraVersionCreatorBuilder(String jiraVersion, String jiraProjectKey) {
this.jiraVersion = jiraVersion;
this.jiraProjectKey = jiraProjectKey;
}
@Override
public BuildStepMonitor getRequiredMonitorService() {
return BuildStepMonitor.NONE;
}
public String getJiraVersion() {
return jiraVersion;
}
public void setJiraVersion(String jiraVersion) {
this.jiraVersion = jiraVersion;
}
public String getJiraProjectKey() {
return jiraProjectKey;
}
public void setJiraProjectKey(String jiraProjectKey) {
this.jiraProjectKey = jiraProjectKey;
}
@Override
public void perform(Run<?, ?> build, FilePath workspace, Launcher launcher, TaskListener listener) {
new VersionCreator().perform(build.getParent(), jiraVersion, jiraProjectKey, build, listener);
}
@Override
public BuildStepDescriptor<Builder> getDescriptor() {
return DESCRIPTOR;
}
@Extension
public static final DescriptorImpl DESCRIPTOR = new DescriptorImpl();
public static class DescriptorImpl extends BuildStepDescriptor<Builder> {
public DescriptorImpl() {
super(JiraVersionCreatorBuilder.class);
}
@Override
public boolean isApplicable(Class<? extends AbstractProject> jobType) {
return true;
}
@Override
public JiraVersionCreatorBuilder newInstance(StaplerRequest2 req, JSONObject formData) throws FormException {
return req.bindJSON(JiraVersionCreatorBuilder.class, formData);
}
@Override
public String getDisplayName() {
return Messages.JiraVersionCreatorBuilder_DisplayName();
}
@Override
public String getHelpFile() {
return "/plugin/jira/help-version-create.html";
}
}
}