Jump to content

Teamcity - vcs connection fails


zz74b

Recommended Posts

While trying to get Plastic SCM4 working with Teamcity 7.1 I am hitting this issue:

 

Path to cm : (None of the following work) "cm", "cm.exe", "c:\Program Files\PlasticSCM4\Client\cm.exe"

(%Path variable contains 'c:\Program Files\PlasticSCM4\client')

 

Selector:

 


repository "nts@server:8087"

  path "/"

    branch "/main"

    checkout "/main"

 

Workspace directory: <blank>

 

Yields a connection error with the following in the logs:


 

[2013-03-14 23:06:09,875]   WARN [bio-1080-exec-7] -      jetbrains.buildServer.VCS - Error occurred in test connection

java.lang.NullPointerException

at com.codicesoftware.plastic.core.PlasticShell.checkValidClientExecutable(Unknown Source)

at com.codicesoftware.plastic.core.PlasticShell.testConnection(Unknown Source)

at com.codicesoftware.plugins.teamcity.PlasticVcsSupport.testConnection(PlasticVcsSupport.java:446)

at jetbrains.buildServer.controllers.admin.projects.EditVcsRootsController.doPost(EditVcsRootsController.java:43)

at jetbrains.buildServer.controllers.BaseFormXmlController$1.handleRequest(BaseFormXmlController.java:54)

at jetbrains.buildServer.controllers.AjaxRequestProcessor.processRequest(AjaxRequestProcessor.java:45)

at jetbrains.buildServer.controllers.BaseFormXmlController.doHandle(BaseFormXmlController.java:52)

at jetbrains.buildServer.controllers.BaseController.handleRequestInternal(BaseController.java:73)

....

 

Teamcity is running on Windows, the same box that is hosting the Plastic Server. Build agents are remote from the server, but can communicate with plastic via gui client.

 

Any idea how I can get this working?

 

Cheers
Link to comment
Share on other sites

Hello,

 

Can you check if the windows user that is starting the TeamCity server is having Plastic SCM configured. You can do it by starting a command line window (cmd) as the TeamCity server user and run a "cm lrep" command, if the command success, you can connect to TeamCity, otherwise you will need to configure the client (plastic.exe --configure). Sometimes there are  problems, because the user who starts TeamCity server is not the same as Plastic configured user.

 

Another question, what authentication mode are you using in Plastic? Are you using SSL?

 

Best regards,

Carlos

Link to comment
Share on other sites

Hi

 

Authentication mode is username/password

 

Not using SSL

 

Have now run plastic.exe --configure as the user running teamcity..

 

Now the error is:

 

 

[2013-03-15 20:15:24,060]   WARN [ VCS executor 1] -      jetbrains.buildServer.VCS - Error while loading current state for root 'repository "nts@server:8087"
  path "/"
    branch "/main"
    checkout "/main" {instance id=3, parent id=1}', id=3: Error getting workspace from path C:\Data\TeamCity\system\caches\plasticscm\plasticscm_3: Unable to communicate with Plastic SCM command line shell - Error running command line client on shell mode. The 'cm shell' command was launched but the process terminated abnormally. 
Link to comment
Share on other sites

Hi, let´s do some steps:

 

- The first thing you can try is to write the full cm.exe path in the "Plastic command line executable" textbox, instead just the "cm" (check the user who run TeamCity has "cm" in %Path variable )

- Open task manager and check if there are some some cm.exe processes running. Close cm.exe processes.

- Go to windows services ans restart TeamCity service. In properties, you can check if the user that starts TeamCity is the same as using Plastic. 

Later, you will need to check if the windows user that is starting the TeamCity server is having Plastic SCM configured. You can do it by starting a command line window (cmd) as the TeamCity server user and run a "cm lrep" command, if the command success you will not have any problem with TeamCity, otherwise you will need to configure the client (plastic.exe --configure).

 Note: There's a trick to avoid configuring Plastic SCM with the TeamCity server account, you can copy your current "client.conf" file (C:\Users\XYZ\AppData\Local\plastic4\client.conf") into the plastic.exe location   (C:\Program Files\PlasticSCM4\client). Using this trick all the computer users will be using this configuration and probably the problem will be fixed

 

If you follow the steps, and the connection doesn´t succeed, we can get connected in order to debug the problem.

 

Best regards,

Carlos

Link to comment
Share on other sites

  • 4 weeks later...

Just FYI

 

I created a Windows 2008 r2 Virtual Machine which I installed TeamCity on, and the Plastic Plugin works out of the box, so there is obviously some issue with it being on the same machine as the Plastic SCM service, or some other oddity with the box. 

 

For the moment I am just going to be sticking with the Virtual machine, so I consider this issue closed..

 

Cheers

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...