Ошибка с правами файла при установке через composer

Аватар пользователя svisch svisch 11 апреля 2020 в 14:51

Добрый день. При попытке устанавливать модули через composer выдает такую ошибку:

Installation failed, reverting ./composer.json to its original content.
                                                                               
  [RuntimeException]                                                          
  Could not delete /home/end/Projects/local/kot/codebase/web/sites/default/de  
  fault.services.yml:  

Приходится каждый раз менять права файла default.services.yml на 777. Но догадываюсь, что так быть не должно.

Лучший ответ

Аватар пользователя ivnish ivnish 11 апреля 2020 в 14:55

Права нужно менять не на файл, а на каталог sites/default, потому что composer не может заменить файл, если нет прав на запись в каталог

Но если надоедает постоянно это делать, то нужно добавить в settings.php:

$settings['skip_permissions_hardening'] = TRUE;

И друпал больше не будет снимать права на запись у этого каталога

Я делаю это на всех проектах

Комментарии

Аватар пользователя ivnish ivnish 11 апреля 2020 в 14:55

Права нужно менять не на файл, а на каталог sites/default, потому что composer не может заменить файл, если нет прав на запись в каталог

Но если надоедает постоянно это делать, то нужно добавить в settings.php:

$settings['skip_permissions_hardening'] = TRUE;

И друпал больше не будет снимать права на запись у этого каталога

Я делаю это на всех проектах

Аватар пользователя svisch svisch 11 апреля 2020 в 14:58

Прошу прощения, да менял на каталог site/default
Спасибо за параметр настройки. Буду его использовать, а то и вправду надоедает постоянно менять.

Аватар пользователя ivnish ivnish 11 апреля 2020 в 15:22

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