Вероятно, потому, что su запрашивает пароль в интерактивном режиме.Попробуйте настроить sudo, чтобы у вашего пользователя hudson были права на запуск вашей команды сборки как user без ввода пароля.См. Руководство sudoers .
Добавлено : Прежде всего, я не совсем уверен, с какой ошибкой вы сталкиваетесь.Если у вас продолжают возникать проблемы, вам следует описать, что происходит более подробно (сообщения об ошибках, вывод журнала) и что вы сделали, чтобы попытаться сузить проблему.
Во-вторых, вы также можете настроить ssh для localhost, используя пару ключей (Google находит множество примеров, вот один ).
Вместо su - user
используйте:
ssh user@localhost cmd
Вам потребуется создать пару ключей (без пароля) в качестве пользователя hudson и установить открытый ключ в author_keys файл пользователя, в который вы хотите войти как.
Наконец, вам следует задать вопрос, все ли это необходимо.Почему пользователь hudson не может запускать ваши сборки?Пользовательская настройка - это запах.