Сводка
У меня настроен Hudson на нашем Mac OS Server (Snow Leopard 10.6.5), работающем под стандартным Tomcat (т. Е. Tomcat 6), который включен с помощью ServerПриложение администратора.
Я бы хотел иметь возможность запускать свои сценарии Hudson как пользователь / логин Unix, который не является логином Tomcat.
Подробно
Моя работа в Hudson - это проект в стиле фристайл, который запускает сценарии bash, которые запускают xcodebuild (это проект iPhone) для очистки и сборки сборки.
Проблема заключается в том, что при использовании этой стандартной установки Hudson (asнасколько я могу видеть) работает с пользователем Unix Tomcat, который является _appserver.
Это означает, что _appserver - это пользователь, который вызывает xcodebuild и все сценарии, составляющие задание.
Iпредпочел бы, чтобы у Хадсона был свой собственный логин Unix, в комплекте с домашним каталогом и т. д. Помимо того, что он немного счастливее с разрешениями и т. д. логина, который пытается выполнить сборку, сам Xcode, похоже, предпочитает, чтобы пользовательесть домашний каталог, а журналы сборки заполнены такими предупреждениями, как:
2010-11-11 17: 29: 11.729 Интерфейсный конструктор Cocoa Touch Tool [58771: 1903] CFPreferences: домашний каталог пользователяв файле: // localhost / var / empty / библиотека / приложение% 20Support / iPhone% 20Simulator / User / недоступно.Пользовательские домены будут нестабильными.
и
Не удалось открыть общие возможности памяти GSCapabilities (Нет такого файла или каталога)
PlusЯ подозреваю, что заставить профили инициализации работать для построения сборок устройства было бы намного проще, если бы логин был стандартным логином, который может создавать цели из Xcode.
НО Я совершенно не могу найти какой-либо способ установитьвход в систему!Это похоже на то, что вы хотели бы сделать, но поиск информации в Интернете оказался безрезультатным.tomcat-users.xml
чувствовал, что это может быть полезно, но, похоже, он не ссылается на "настоящего" (Unix) пользователя?
Другой подход может заключаться в том, чтобы жить с Хадсоном как _appserver, но иметь сами сценариизапустить как мой пользователь сборкиКажется, это указывает на использование sudo
, но все кажется настолько заблокированным, что я не могу найти способ запустить скрипт от имени другого пользователя, даже тот, который я могу заблокировать, чтобы иметь минимальный доступ к безопасности ...?
Надеюсь, вы можете помочь людям!