Мы используем Symfony2 в приложении AWS Beanstalk. Для развертывания мы скорректировали Deployment-Script, чтобы сделать композитор установить после того, как приложение было загружено.Symfony2, AWS Beanstalk: как подтолкнуть поставщика как файлы, а не git-подмодули к репо
Несмотря на то, что это теоретически работает, оно имеет некоторые недостатки - в основном, постоянно увеличивающееся время развертывания (что иногда приводит к таймаутам сервера) и увеличению зависимости от доступности других серверов.
Я прочитал, что некоторые люди копируют vendor/*
в tmp-dir и перемещают его после развертывания до speed-up the deployment.
Это определенно полезно, но мы часто обновляем наш composer.json
, поэтому нам по-прежнему нужно установить композитор в наш процесс развертывания. Мы считаем, что наилучшим подходом является включение всех зависимостей (vendor/*
) в качестве файлов в репо и пропускание композиции , устанавливающей во время развертывания.
К сожалению, большинство библиотек включены в качестве git-подмодулей, а AWS не поддерживает подмодули (все файлы должны быть в репо).
Так вот идет мой вопрос:
Что это лучший способ, чтобы удалить весь ГИТ-подмодуль и совершать реальные файлы, а?
Я попытался объединения:
git submodules --recursive foreach
с How do I remove a submodule? но без Succes.