Чтобы обновить настройки электронной почты для всех пользователей экземпляра Phabricator:
1. запустите следующий скрипт SQL в консоли mysql:
use phabricator_user;
/*handle users who haven't customized their preferences yet (replace 'test' with name of your model user)*/
insert into user_preferences(userPHID, preferences) select l.PHID, (select p.preferences from user u join user_preferences p on (p.userPHID=u.PHID) where
u.userName = 'test') from user l where not exists(select * from user_preferences r where r.userPHID=l.PHID);
/*change individual parameters for all users*/
update user_preferences set preferences = replace(preferences, '"audit-add-ccs":1', '"audit-add-ccs":2');/*set A commit's subscribers change. to Ignore*/
update user_preferences set preferences = replace(preferences, '"audit-projects":1', '"audit-projects":2');
update user_preferences set preferences = replace(preferences, '"maniphest-priority":1', '"maniphest-priority":2');
update user_preferences set preferences = replace(preferences, '"maniphest-cc":1', '"maniphest-cc":2');
update user_preferences set preferences = replace(preferences, '"maniphest-projects":1', '"maniphest-projects":2');
update user_preferences set preferences = replace(preferences, '"maniphest-unblock":1', '"maniphest-unblock":2');
update user_preferences set preferences = replace(preferences, '"maniphest-column":1', '"maniphest-column":2');
update user_preferences set preferences = replace(preferences, '"maniphest-other":1', '"maniphest-other":2');
/*list current users' preferences*/
select u.phid, u.userName, p.preferences from user u left join user_preferences p on (p.userPhid=u.phid);
2. перезапустите демоны Phabricator и веб-сервер:
./bin/phd restart
service httpd restart
Отказ от ответственности: в моем конкретном случае это сработало на определенной версии Phabricator, но это, безусловно, «хак» и может повредить пользовательские настройки.
person
Sergey Tarasov
schedule
04.12.2014