Доступ запрещен при запросе команды windows sc из jenkins groovy - PullRequest
0 голосов
/ 04 июля 2019

Я пытаюсь создать конвейер CI / CD с помощью jenkins, и моя среда devops / deploy - windows server 2016. Конвейерный скрипт, написанный на apache groovy.Какой пакетный файл вызова для развертывания кода, этот пакетный скрипт выполняет 2 задачи.

  • развертывание кода на другом хост-компьютере (с помощью команды robocopy)
  • запуск службы w3svc (с помощью команды sc).

Обе команды упоминаются в командном файле, который вызывается через groovy скрипт с простым 'bat batchfilelocation /name.bat'.Вот пакетный скрипт:

@echo [off]
net use "\\<servername>\<shareddirectory>" <password> /user:<domain\user> /persistent:no
robocopy "C:\jenkins\AngularPipeline\dist\<project>" \\$<Dir>eddistinationServer>\<shar /E /PURGE
sc \\$servername start w3svc
echo on
echo close batch script!

Для выполнения команды sc выдается следующее сообщение об ошибке:

C: \ jenkins \ AngularPipeline> sc \ start w3svc [SC] StartService: OpenServiceСбой 5: Доступ запрещен.

Этот сценарий работает хорошо, пока я напрямую вызывал его через командную строку (без прав администратора).доступ запрещен только тогда, когда этот скрипт выполняется под jenkins groovy.

Я проверил следующие возможности:

  1. Разрешение WMI на исходном и целевом компьютере
  2. // Подтверждениечто WinRM правильно настроен.c:> Winrm quickconfig
  3. // Убедитесь, что удаленный сервер допускает команды с любого компьютера.PS c:> set-item wsman: localhost \ client \ trusthosts -value *
  4. Перезапустить Службу удаленного управления Windows, перезапущенную на обеих машинах
  5. C: \ Windows \ system32> sc \ sdshow w3svc

D: (A ;; CCLCSWRPWPDTLOCRRC ;;; SY) (A ;; CCDCLCSWRPWPDTLOCRSDRCWDWO ;;; BA) (A ;; CCLCSWLOCRRC ;;; IU) (A ;; CCLCSWLOCR)S: (AU; FA; CCDCLCSWRPWPDTLOCRSDRCWDWO ;;; WD)

Пожалуйста, предложите, как решить то же самое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...