我已经在我的ubuntu服务器上安装了它,并且正在从同一网络上的Windows XP机器访问它。它位于mysql:1667。我可以通过p4v从windows机器访问性能。
我在同一台服务器上安装了jenkins,可以通过mysql:8080访问它。我已经安装了performe插件,并将设置文件的位置放在/usr/local/bin/p4。
当我试图创建一个新项目时,我输入了信息mysql:1667,jenkins,XXXXXXXX,jenkins_space(已创建并列在p4v中的工作空间中),我看到红色"无法根据仓库检查工作空间"。读到这可能是一条误导性的错误消息,我无论如何都试图进行构建(绝对没有构建命令)。"构建"失败,我得到以下结果:
Started by user anonymous
Building in workspace /var/lib/jenkins/workspace/test7
Using master perforce client: jenkins_space
[test7] $ /usr/local/bin/p4 workspace -o jenkins_space
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:406)
at com.tek42.perforce.parse.AbstractPerforceTemplate.getPerforceResponse(AbstractPerforceTemplate.java:301)
at com.tek42.perforce.parse.Workspaces.getWorkspace(Workspaces.java:61)
at hudson.plugins.perforce.PerforceSCM.getPerforceWorkspace(PerforceSCM.java:1545)
at hudson.plugins.perforce.PerforceSCM.getPerforceWorkspace(PerforceSCM.java:1506)
at hudson.plugins.perforce.PerforceSCM.checkout(PerforceSCM.java:843)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1414)
at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:652)
at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:561)
at hudson.model.Run.execute(Run.java:1678)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:231)
ERROR: Unable to communicate with perforce. Connect to server failed; check $P4PORT
Finished: FAILURE
你知道我可能做错了什么吗?
谢谢,Brian
错误表明它没有连接到服务器。日志中没有任何内容表明对performce的调用得到了有效的P4PORT,并且没有向它们发送命令行参数。
仔细检查作业中的Source Code Management
插件是否按预期配置。P4PORT
应该在生成第一个p4
命令之前立即来自Jenkins(尽管它不会出现在日志中)。
通常,"无法根据仓库检查工作区"是一个有效的诊断。如果您得到"工作区不存在",由于多种因素,这可能是伪造的,但"无法检查"错误往往表明无法建立连接或身份验证失败。
如果您使用SSL,请确保将其也放入连接字符串中(例如ssl:mysql:1667
),因为这会导致连接失败,尽管它应该在日志中生成不同的消息。
我遇到了类似的问题,重新启动从机上的jenkins服务器对我来说很有效
检查jenkins中的配置,确保用于执行的用户具有有效权限,并且P4PORT设置正确。完成后,重新启动slave中的jenkins服务。
詹金斯似乎仍在使用导致故障的旧设置。