Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Installing Jenkins Slave as Service on win8.1 and win10

Tags:

I am trying to install Jenkins slave service after starting the slave via web start. I get the following error when it tries to install on windows 10 and windows 8.1.

[JenkinsWorkDirectory]$ c:\JenkinsWorkDirectory\jenkins-slave.exe install WMI.WmiException:AccessDenied at WMI.WmiRoot.ClassHandler.Invoke(Object proxy, MethodInfo method, Object[] args) at WMI.Win32ServicesProxy.Create(String, String, String, ServiceType, ErrorControl, StartMode, Boolean, String, String, String[]) at winsw.WrapperService.Run(String[]_args,ServiceDescriptor descriptor) at winsw.WrapperService.Main(String[]args). 

I can install the slave service without any issue on win 7. Any idea why is this happening or is it some limitation of Jenkins or am i missing some dependency?

My jenkins version is 1.655 and using chrome browser when installing. Jenkins master is running on windows 7. Thanks, Daniel

like image 418
zalimgandhera Avatar asked Apr 08 '16 13:04

zalimgandhera


People also ask

Does Jenkins need to be installed on slave?

Since each slave runs a separate program called a "slave agent" there is no need to install the full Jenkins (package or compiled binaries) on a slave.

How do I run a service as local or domain user in Jenkins?

To run Jenkins service using a local or domain user, specify the domain user name and password with which you want to run Jenkins, click on Test Credentials to test your domain credentials and click on Next.


1 Answers

I found another way to get the slave to install.

  1. Open a command window with "Run as Administrator".
  2. Change directory to the place where you saved the slave-agent.jnlp file.
  3. at the prompt run "slave-agent.jnlp"
  4. Now with the running slave click the menu item to "Install as Service".

The trick is to do it while running as an administrator. This installs the service running under localsystem.

Additionally, if you're like me and you need your jenkins routines to hit another machine, you'll need to change the service to run as a user with permission (network or otherwise) to do the task you want done.

like image 174
Steve Brownell Avatar answered Sep 20 '22 14:09

Steve Brownell