package org.jenkinsci.plugins.p4.groovy; import hudson.EnvVars; import hudson.FilePath; import hudson.Launcher; import hudson.model.Run; import hudson.model.TaskListener; import hudson.tasks.BuildStepMonitor; import hudson.tasks.Builder; import jenkins.tasks.SimpleBuildStep; import org.jenkinsci.plugins.p4.workspace.Workspace; import org.kohsuke.stapler.DataBoundConstructor; import java.io.IOException; public class GetP4 extends Builder implements SimpleBuildStep { private final String credential; private final Workspace workspace; private P4Groovy p4Groovy; public String getCredential() { return credential; } public Workspace getWorkspace() { return workspace; } public P4Groovy getP4Groovy() { return p4Groovy; } @DataBoundConstructor public GetP4(String credential, Workspace workspace) { this.credential = credential; this.workspace = workspace; } @Override public BuildStepMonitor getRequiredMonitorService() { return BuildStepMonitor.NONE; } @Override public void perform(Run<?, ?> run, FilePath buildWorkspace, Launcher launcher, TaskListener listener) throws InterruptedException, IOException { // Set environment EnvVars envVars = run.getEnvironment(listener); envVars.put("NODE_NAME", envVars.get("NODE_NAME", "master")); workspace.setExpand(envVars); workspace.setRootPath(buildWorkspace.getRemote()); // Create Task GetP4Task task = new GetP4Task(credential, workspace, listener); p4Groovy = buildWorkspace.act(task); } }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#2 | 23685 | Paul Allen | Copy main -> dev | ||
#1 | 20641 | Paul Allen | Copy main -> dev (jenkinsci/p4-plugin) | ||
//guest/perforce_software/p4jenkins/main/src/main/java/org/jenkinsci/plugins/p4/groovy/GetP4.java | |||||
#1 | 20308 | Paul Allen |
P4Groovy (experimental) Get a P4 object in groovy. Supporting basic functions: ’run’ (to run perforce commands), ‘fetch’ and ‘save’ (to access Perforce specs). |