Como uso os módulos "drush make" com um código de módulo local?

9

Eu adorei o fluxo de trabalho "drush make" nos dá. Estou certo de que há outras pessoas que gostariam que seu código de desenvolvimento fosse colocado em um arquivo make, sem estar pronto para o drupal.org, por exemplo, implantando uma nova instância de teste de desenvolvimento do site rapidamente com um script bash ou com o que eu vi em Aegir.

Parece que o fluxo de trabalho atual que pode se adequar a isso seria utilizar um repositório git do seu código de desenvolvimento. No entanto, minha máquina de desenvolvimento é o Windows 7 e eu gostaria de usar o "drush make" em uma caixa virtual com uma instância do servidor Ubuntu.

criança levada
fonte

Respostas:

10

Você pode configurar domínios locais e repositórios git ou tarballs locais, como:

projects[my_module][type] = "module"
projects[my_module][download][type] = "file"
projects[my_module][download][url] = "http://localhost/my_module.tgz"
projects[my_module][subdir] = "contrib"

Em seu script de construção, você pode recriar o tgz

stevepurkiss
fonte
Muito obrigado, que deve ser a mesma coisa dos módulos do d.org, faz sentido. Eu acho que vou treinar da maneira git, só estou tentando fazer isso usando um linux vm em uma máquina Windows.
imp
10

Drush make também suporta file: /// protocol

projects[my_proj][type] = "module"
projects[my_proj][subdir] = "custom"
projects[my_proj][download][type] = "git"
projects[my_proj][download][url] = "file:///path/to/my_proj.git"
projects[my_proj][branch] = "dev"

Use sshfs para montar o repositório dentro do virtualbox. Guia aqui - https://help.ubuntu.com/community/SSHFS

criança levada
fonte
1

Você pode instalar o make_local , que estende os drush makerecursos para também originar módulos das árvores de diretórios. Use-o assim:

projects[my_proj][type] = "module"
projects[my_proj][subdir] = "custom"
projects[my_proj][download][type] = "local"
projects[my_proj][download][source] = "../relative/path/to/my_proj_dir"

Vantagens sobre o "normal" drush make: (1) Ao contrário dos file://URLs, você pode usar caminhos relativos. (2) Você não precisa empacotar seu módulo .tar.gzantecipadamente ou obtê-lo em um diretório git repo. Um diretório normal é suficiente.

O diretório com o módulo pode ser um repositório git, é claro, mas não é necessário. (No seu caso, seria necessário um diretório do sistema operacional host do Windows 7 acessível por meio de diretórios compartilhados do VirtualBox. Não é necessário instalar gitdentro da VM.)

tanius
fonte
0

no caso de você fazer uma distribuição a partir de um site do gitweb via build makefile, lembre-se de citar o URL, pois ele contém ponto-e-vírgula, minha pergunta sobre isso estava aqui no site de criação do drit no URL bruto do gitweb local

groovehunter
fonte
Obrigado! (Eu acho que isso seria melhor como um comentário a uma das respostas acima embora.)
tanius