Bug 53391

Summary: Команда 'railsctl setup foreman' не работает, если для пользователя postgres задан пароль
Product: Sisyphus Reporter: Alexander Makeenkov <amakeenk>
Component: railsctlAssignee: majioa <majioa>
Status: NEW --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: 3aHyga, cas, cki, hangurey, ibondarev123, majioa
Version: unstable   
Hardware: x86_64   
OS: Linux   

Description Alexander Makeenkov 2025-03-11 11:07:06 MSK
Шаги воспроизведения:

1. Установить и настроить PostgreSQL:

# apt-get install postgresql17-server
# /etc/init.d/postgresql initdb (по запросу задать пароль для пользователя postgres)
# systemctl start postgresql

2. Установить Foreman:

# apt-get install foreman puppet-theforeman-foreman puppet-theforeman-puppetserver-foreman

3. Запустить настройку Foreman:

# railsctl setup foreman

Получаемый результат:

Work dir is '/var/lib/foreman'
Processing rails application 'foreman' setup...
Applying variables from '/etc/sysconfig/foreman'
Пароль пользователя postgres:

После ввода пароля (который был создан в пункте 1) возникает ошибка:

createuser: ошибка: подключиться к серверу через сокет "/tmp/.s.PGSQL.5432" не удалось: fe_sendauth: no password supplied
Renewing dependencies...
Error code is: 3

Аналогичная ошибка возникает ещё при установке пакетов:

355: foreman-3.13.0-alt2                                                                                                                                           #################################################################################################### [100%]
Пароль пользователя postgres: 
createuser: ошибка: подключиться к серверу через сокет "/tmp/.s.PGSQL.5432" не удалось: fe_sendauth: no password supplied

Как я понимаю, где-то в скрипте вызывается команда createuser, в которую при запуске тоже нужно передавать пароль, но для запроса пароля нужно её запустить с определёнными параметрами.

Воспроизводится так же и в р11.

Обращаю внимание, что даже если задать пустой пароль, то ошибка с createuser всё равно возникает. Хотя, даже запуск psql пустой пароль не принимает, следовательно, пароль нужно задавать обязательно.
Comment 1 Alexander Makeenkov 2025-03-11 11:19:10 MSK
Ввод пароля пользователя postgres требуется во всех версиях postgresql, которые есть в сизифе и р11. Следовательно, в текущем виде настроить foreman не представляется возможным (без изменения скриптов настройки).
Comment 2 Alexander Makeenkov 2025-10-02 15:27:41 MSK
Проблема всё ещё актуальна:

foreman-3.13.0-alt2
railsctl-1.0.2-alt1
Comment 3 Alexander 2025-11-28 16:58:03 MSK
Увы до сих пор проблема не решена