Por exemplo, se você executar os seguintes comandos:
drush dl views
drush en views views_ui views_export
Você receberá o seguinte erro ao tentar ativar os módulos de visualizações:
As visualizações do módulo não podem ser ativadas porque dependem dos seguintes módulos que não foram encontrados: ctools
Existe uma maneira de obter drush para baixar as dependências necessárias do módulo?
drush en -y
farão o download e habilitarão dependências automaticamente.Respostas:
Drush 5 e acima:
As versões mais recentes do Drush (versão 5 e superior) perguntam se você deseja fazer o download das dependências necessárias ao ativar (
drush en
) um módulo. Ele também perguntará se você deseja fazer o download do próprio módulo, se ainda não o fez. Combinado com a opção "-y" (por exemplodrush en views -y
), tudo será baixado e ativado automaticamente sem fazer mais perguntas.Observe que o download automático de dependências pode falhar se o nome do módulo necessário não for igual ao nome do projeto em drupal.org. Para mais informações, consulte a minha resposta original para o Drush 4 abaixo.
Resposta original (Drush 4):
Não, não há como fazer isso. O problema é que há uma diferença entre um módulo e um projeto. Freqüentemente (mas nem sempre) o nome do projeto é idêntico ao módulo (ou um dos módulos) contido no projeto. Um único projeto (por exemplo, Views) pode conter vários módulos (views, views_ui, views_export). Enquanto
drush dl
baixa um projeto ,drush en
ativa um módulo .Quando um módulo declara dependências, declara dependências nos módulos, não nos projetos. Ao executar um
drush en
, o Drush pode verificar se o módulo necessário está disponível. No entanto, se não estiver disponível, o Drush não tem como saber qual projeto baixar. Para que o Drush possa baixar automaticamente os projetos necessários, é necessário trabalhar na infraestrutura subjacente de projetos / módulos, para que o Drush possa recuperar um mapeamento de projetos e módulos. Consulte também Manipulação mais inteligente de dependências ausentes .fonte
Na verdade, o drush5 (ainda em desenvolvimento) possui um mapa de dependências comuns conhecidas (content.module, ctools, ...). Portanto, ele realmente faz o download de ctools para você no seu exemplo.
fonte
isso não é mais um problema, já que as versões mais recentes do drush fazem isso "automagicamente":
fonte
Alguns módulos ou projetos incluem um script make drush , que pode baixar dependências e instalar bibliotecas externas.
No entanto, isso geralmente não é o caso, e há problemas com o aninhamento de scripts drush make. Ainda vale a pena procurar com alguns dos módulos que são mais complicados de configurar.
fonte
Experimente o módulo de atualização rápida . Ele fará o download de todos os projetos de dependência ausentes para você.
Aqui está uma citação sobre ele (na página do projeto do módulo):
fonte