9

I got to love the workflow "drush make" gives us. I am sure there are others who would want their development code to be put into a make file with it not being ready for drupal.org, for example, deploying a new development testing instance of the site quickly with a bash script or from what I have seen in Aegir.

It seems the current workflow that may suit this would be to utilize a git repository of your development code. However, my development machine is Windows 7, and I would like to use "drush make" in a virtual box with an Ubuntu server instance.

4 Answers 4

10

You can set up local domains and local git repositories or tarballs like so:

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"

Then in your build script you could just recreate the tgz

1
  • Nice thankyou that must be the same thing it does from the d.org modules, makes sense. I think I will workout the git way, just I am trying to do this from withing a linux vm on a windows machine.
    – imp
    Jan 1, 2012 at 10:56
10

Drush make also supports 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 to mount the repository inside virtualbox. Guide here - https://help.ubuntu.com/community/SSHFS

1

You can install make_local, which extends drush make capabilities to also source modules from directory trees. Use it like this:

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"

Advantages over "normal" drush make: (1) In contrast to file:// URLs, you can use relative paths. (2) You do not need to package your module into a .tar.gz beforehand, or to source it from a git repo directory. A normal directory is enough.

The directory with the module could be a git repo of course, but does not have to. (In your case, a Windows 7 host OS directory that is accessible via VirtualBox shared directories would do. No need to install git inside the VM.)

0

in case you drush-make a distro from a gitweb site via build makefile take care to quote the url as it contains semicolons, my question about that was here on drush make on local gitweb raw url

1
  • Thanks! (I think this would be better as a comment to one of the answers from above though.)
    – tanius
    Sep 2, 2015 at 2:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.