Skip to main content
1-Visitor
Feb 22, 2017 9:12 PM UTC
Solved

Using Jenkins to execute an IM command

Hello,

     I am trying to setup a Jenkins build that will execute an Integrity IM command.  I have installed the Jenkins server on a Windows workstation that also has the Integrity thick client installed.  If I add the IM command directly to the Jenkins project, the error "Attempt to launch Integrity Client timed out" is returned.  I then created a batch file where I added the IM command and the result is the same.  PTC Support then suggested that I run the IM command from it's own instance.  When I execute the build this way, the job returns that it was successful.  However, the command was not executed.



Does anyone have any other suggestions to try?



Thank you,


Paul Hartwig

1-Visitor
Feb 24, 2017 5:19 PM UTC

I have determined that the user that the service runs as "Local System" is not able to launch the Integrity client.  I temporarily changed the server to a network user and the build will execute successfully.

Is it possible to give the "Local System" access to launch the Integrity Client?  Due to security settings (password expiration), I would like to avoid using a network user for the service.

3 replies

12-Amethyst
Feb 23, 2017 10:40 AM UTC

I would be interested what is meant by "from it's own instance" from the jenkins perspective.

Is it "Execute Shell" instead of "Executing Windows Batch" ?

Although I only have experience with the si command I can imagine than

at least for your first approach it might be helpful if you export your environment variables to a text file

and compare it  to environment variables you saved in a command window

where your im command is working.

jenkins.bat (called by jenkins)

========

set > c:\tmp\jenkins_ENV.txt

Console

======

c:\tmp>set > console_ENV.txt

c:\tmp>set > your_difftool jenkins_ENV.txt console_ENV.txt

Just an Idea:

HTH Jürgen

Translate
PH_107698351-VisitorAuthorAnswer
1-Visitor
Feb 24, 2017 5:19 PM UTC

I have determined that the user that the service runs as "Local System" is not able to launch the Integrity client.  I temporarily changed the server to a network user and the build will execute successfully.

Is it possible to give the "Local System" access to launch the Integrity Client?  Due to security settings (password expiration), I would like to avoid using a network user for the service.

Translate
16-Pearl
Feb 28, 2017 1:47 PM UTC

Hello Paul Hartwig‌,

I believe that's a restriction of Windows on the Local System user.  This article on StackOverflow seems to confirm that, and provides ways around it.

Cheers!

-Kael

Translate