I'm running Server 2012 R2 (server core), and I'm having trouble setting up Gitlab CI Multi Runner to run as a service as user created specifically for this service.
Here's the associated issue: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/1265
I've created the user account like this:
net user gitlab-runner "P@55w0rd" /add /fullname:"GitLab CI Runner User" /homedir:"C:\Users\gitlab-runner"
When I try to install the runner, I get an error that the account is not valid:
.\gitlab-ci-multi-runner-windows-amd64 install -u "gitlab-runner" -p "P@55w0rd"
FATAL: Failed to install gitlab-runner: The account name is invalid or does not exist, or the password is invalid for the account name specified.
This error is coming from Windows, and I get the same thing when trying to do this manually:
.\gitlab-ci-multi-runner-windows-amd64 install
PS C:\Users\gitlab-runner> sc.exe config gitlab-runner obj= "gitlab-runner" password= "P@55w0rd"
[SC] ChangeServiceConfig FAILED 1057:
The account name is invalid or does not exist, or the password is invalid for the account name specified.
Do I need to create a "service account" instead?
How do I grant "log on as a service" permission to a (local) from the command-line?
I even followed this answer to add
SeServiceLogonRight
to the user: https://serverfault.com/a/347409/55544 (confirmed viasecedit /export /cfg c:\backup.txt
)