Чтобы потом на тестовом сервере можно было легко сайт развернуть и обновлять какие нужно.
Я использую команду
composer show
но выведеный список все рано нужно довольно много редактировать.
Ок, и как получить список вида (?):
composer require 'drupal/admin_theme^1.0.0-beta2' 'drupal/admin_toolbar^2.4.0' 'drupal/advagg^4.1.0' 'drupal/allowed_formats^1.3.0'...
или как-то по другому можно?
Т.е. просто перенести файлы
composer.json, composer.lock и выполнить composer install?
А если сайт на 1м композере собран, а я хочу на 2м его пересобрать?
Переход на второй композер нужен не для того, чтобы сайты были круче, а потому что второй композер работает быстрее. Это как отвёртка и шуруповёрт. Если ты собрал табуретку отвёрткой, а потом у тебя появился шуруповёрт, это не значит, что теперь табуретку надо пересобрать)))
Честно - поставил послденюю версию docer4drupal - загрузил на нее composer.json, composer.lock, запустил composer update и все заработало.
Но меня все равно интересует вопрос: ка пересобрать чужой сайт у себя. Например, если я подозреваю, что в composer.json руками что-то неправильно прописано. Неужели мой вопрос настолько странный?
Речь о том, чтобы сгенерить composer.json исходя из фактически установленных модулей? Для этого есть (были) два брошенных модуля Друпал (Composerize и Generate Composer) и вроде бы не совсем брошенный, но не факт что актуальный плагин для композера Composerize Drupal.
сформируется он даже при composer install, даже если его не существует, но по факту будет выполняться composer update.
честно говоря, тема уже в какой-то дет. сад переходит ))) Просто надо 1 раз разобраться с композером раз и навсегда, по факту пару тройку команд понять и верный процесс
Его имеет смысл удалять только если уже возникли какие-то проблемы. А так он нужен для того, чтобы устанавливались пакеты той версии, которую ты устанавливал в последний раз, а не та, которая последняя на данный момент. Грубо говоря, если ты вчера локально обновил сайт и у тебя всё работало, а сегодня ты выкладываешь его на продакшн, удалив composer.lock, то какая-то внезапно обновившаяся зависимость может тебе всё сломать.
Комментарии
так вы уже имеете всё что нужно, чтобы развернуть: composer.lock composer.json
composer install
Ок, и как получить список вида (?):
composer require 'drupal/admin_theme^1.0.0-beta2' 'drupal/admin_toolbar^2.4.0' 'drupal/advagg^4.1.0' 'drupal/allowed_formats^1.3.0'...
или как-то по другому можно?
зачем такой получить?
задача, так понимаю, развернуть, зачем ещё что-то нужно для этого кроме composer install?
Т.е. просто перенести файлы
composer.json, composer.lock и выполнить composer install?
А если сайт на 1м композере собран, а я хочу на 2м его пересобрать?
именно так!
а это уже отдельная история, тянущая на другую ветку
Там не надо ничего пересобирать, ЕМНИП.
Переход на второй композер нужен не для того, чтобы сайты были круче, а потому что второй композер работает быстрее. Это как отвёртка и шуруповёрт. Если ты собрал табуретку отвёрткой, а потом у тебя появился шуруповёрт, это не значит, что теперь табуретку надо пересобрать)))
если, конечно, ты спинку не хочешь прикрутить, или мягкие ручки ))
При прикручивании спинки шуруповёртом ножки, прикрученные отвёрткой, перекручивать не надо))
а вот это не факт, т.к. придётся некоторые зависимости всё же разрулить
Честно - поставил послденюю версию docer4drupal - загрузил на нее composer.json, composer.lock, запустил composer update и все заработало.
Но меня все равно интересует вопрос: ка пересобрать чужой сайт у себя. Например, если я подозреваю, что в composer.json руками что-то неправильно прописано. Неужели мой вопрос настолько странный?
Что значит пересобрать-то? Какого результата ты хочешь добиться?
да - странный! Все ответы выше, непонятно, что тебе ещё не ясно )
Хочу добиться получить список типа:
composer require drupal/мобуль1(версия) drupal/мобуль2(версия)...
зачем???
Распарси composer.json и composer.lock, сформируй список
Речь о том, чтобы сгенерить composer.json исходя из фактически установленных модулей? Для этого есть (были) два брошенных модуля Друпал (Composerize и Generate Composer) и вроде бы не совсем брошенный, но не факт что актуальный плагин для композера Composerize Drupal.
При запуске команды composer install он скажет тебе, если composer.json и composer.lock не соответствуют друг другу.
composer.lock вообще можно удалить и он сгенерируется вновь
а как ты потом собираешься выполнять composer install ?
файл composer.lock генерируется при выполнении composer install
разве нет?
composer update
Нет. Команда composer install устанавливает всё что записано в composer.lock. А формируется он, например, при запуске composer update
сформируется он даже при composer install, даже если его не существует, но по факту будет выполняться composer update.
честно говоря, тема уже в какой-то дет. сад переходит ))) Просто надо 1 раз разобраться с композером раз и навсегда, по факту пару тройку команд понять и верный процесс
Его имеет смысл удалять только если уже возникли какие-то проблемы. А так он нужен для того, чтобы устанавливались пакеты той версии, которую ты устанавливал в последний раз, а не та, которая последняя на данный момент. Грубо говоря, если ты вчера локально обновил сайт и у тебя всё работало, а сегодня ты выкладываешь его на продакшн, удалив composer.lock, то какая-то внезапно обновившаяся зависимость может тебе всё сломать.
понял, спасибо.