-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
Windows 2008R2 Slave.
We've been trying to configure a Windows 2008R2 slave (our first slave with this OS) to run a job that is already known to run successfully on other Windows XP and 2003 machines. We know that the plugin runs fine on a Windows 2008 master.
We have confirmed that Perforce has been installed successfully by running all the equivalent commands from the command line and have checked and double checked the configuration and executable locations.
We suspect that the problem is associated with the fact that with Windows 2008 the command line syntax has become far more strict and that the Perforce plugin uses different code paths to build the command line and execute the perforce process. On the master the plugin uses the Launcher classes to run the Perforce binary but on the slave it appears to use CmdLineExecutor class.
The following exception is seen in the logs:
[TEST_util] $ C:\PROGRA~1\Perforce\p4.exe workspace -o hudson_1_glp_4.0_utility_test-3510769
Caught exception communicating with perforce. Connect to server failed; check $P4PORTcom.tek42.perforce.PerforceException: Connect to server failed; check $P4PORT
at com.tek42.perforce.parse.AbstractPerforceTemplate.getPerforceResponse(AbstractPerforceTemplate.java:381)
at com.tek42.perforce.parse.AbstractPerforceTemplate.getPerforceResponse(AbstractPerforceTemplate.java:291)
at com.tek42.perforce.parse.Workspaces.getWorkspace(Workspaces.java:53)
at hudson.plugins.perforce.PerforceSCM.getPerforceWorkspace(PerforceSCM.java:1183)
at hudson.plugins.perforce.PerforceSCM.checkout(PerforceSCM.java:574)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1180)
at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:506)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:422)
at hudson.model.Run.run(Run.java:1362)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:145)
- is duplicated by
-
JENKINS-9695 Perforce Plugin running on a Windows 2008R2 slave fails to poll or check out.
-
- Resolved
-
[JENKINS-9697] Perforce Plugin running on a Windows 2008R2 slave fails to poll or check out.
Resolution | New: Cannot Reproduce [ 5 ] | |
Status | Original: Open [ 1 ] | New: Resolved [ 5 ] |
Assignee | New: Rob Petti [ rpetti ] | |
Resolution | Original: Cannot Reproduce [ 5 ] | |
Status | Original: Resolved [ 5 ] | New: Reopened [ 4 ] |
Which version of Jenkins and which version of the Perforce Plugin are you using?
Why do you say it's using the CmdLineExecutor class? On the master, it uses the Launcher class, which in turn uses the LocalLauncher class. On the slave it's using a custom class which in turn uses a LocalLauncher to perform the actual execution. They both end up using the exact same code to perform the execution.
If your master is 2008 as you say, then this could just be a problem with 2008R2 and have nothing to do with the fact that it's running as a slave.
All that being said, I'm unable to reproduce this problem. There aren't any issues when running the perforce plugin on a WS2008R2 slave machine. Make sure your perforce connection information is correct in the plugin configuration. The error you are getting suggests a problem with the configuration, and not anything to do with the way windows handles command line arguments. It's possible that the problem only exists in a particular version of Jenkins and/or the plugin, so I'll need to know what versions you are running in order to be sure.