Плагин Jenkins UCM ClearCase не работает из-за прав - PullRequest
2 голосов
/ 06 декабря 2011

Я использую Jenkins с именем плагина управления исходным кодом UCM ClearCase.
Он пытается создать представление и завершается ошибкой:

[onlysourcecode] $ cleartool mkview -snapshot -stream ROLE_Test_Project_DevSG@\Vobname -tag SYSTEM_master_Test_ROLE_001_hudson view
Selected Server Storage Location "Views".
cleartool: Error: unable to set access control list for \\server\viewstor\NT+AUTHORITY\SYSTEM\view.1.vws: Access is denied.
cleartool: Error: protection on \\server\viewstor\NT+AUTHORITY\SYSTEM\view.1.vws is out-of-synch with identity.sd and groups.sd
cleartool: Error: Failed to set identity on view: Permission denied
cleartool: Error: unable to set access control list for \\server\viewstor\NT+AUTHORITY\SYSTEM\view.1.vws: Access is denied.
cleartool: Error: \\server\viewstor\NT+AUTHORITY\SYSTEM\view.1.vws: Permission denied
cleartool: Error: Unable to create view "\\server\viewstor\NT+AUTHORITY\SYSTEM\view.1.vws".
FATAL: UCM ClearCase failed. exit code=1

Что в основном означает, что у него нет прав на создание представления. Теперь мои вопросы:

  1. Есть идеи, в чем именно заключается проблема?

  2. Какой идентификатор используется Дженкинсом для внутреннего использования. Это означает, что у меня есть идентификатор пользователя на контроллере DOMAIN, где я захожу на машину и запускаю Jenkins. Если Дженкинс использует это, то почему эта ошибка, поскольку я могу создавать представления.

  3. Если нет, то какой идентификатор он использует и как я могу заставить Дженкинса использовать мой идентификатор домена, или, возможно, получить внутренний идентификатор как часть группы ClearCase AD.

Ответы [ 2 ]

2 голосов
/ 06 декабря 2011

Чтобы добавить к Raghuram 's ответ , использовать системную учетную запись (NT+AUTHORITY) сложно, потому что даже если вы укажете локальное хранилище представлений:

  • этот аккаунт не будет иметь CLEARCASE_PRIMARY_GROUP, связанный с его профилем
  • , даже если это так, он не будет частью группы, на которую ссылается CLEARCASE_PRIMATY_GROUP

Это означает, что он не сможет получить доступ к vob хранилищу Vob, к которому ему потребуется доступ в представлении.

В любом случае, по крайней мере, вы должны попытаться настроить подчиненную службу для запуска от имени пользователя домена .

2 голосов
/ 06 декабря 2011

Я полагаю, это запускается на Windows-сервере в качестве службы.Таким образом, он не запускается как пользователь домена.

Похоже, что jenkins пытается создать хранилище представлений (.vws) в расположении по умолчанию на основе конфигурации clearcase в системе.

Возможно, вам следует выбрать опцию Advanced... в UCM Clearcase и явно указать место для вашего хранилища представлений.Есть

  • Каталог хранилища Windows View
  • Дополнительные аргументы mkview

Я запускаю jenkins на коробке linux, где я указал явное местоположение для.VWS файл в Additional mkview arguments.

...