This is a work-in-progress notes stream of links that may be helpful for new Windows users, or macOS to Windows converters.
- Visit this page: https://cloud.acquia.com/app/develop/all
- Click on "Add Application"
- Name it something throwaway, like "muppets"
When asked to install Drupal, please choose the option for <None>
, which is the best starting point for new sandboxes.
It will take 15 minutes or more before the sandbox is available.
Via https://github.com/acquia/blt-project
composer create-project acquia/blt-project:10.x-dev --no-interaction my-project
Avoid using a hyphen in your project names, e.g. bltdemo is better than blt-demo
-
All docs are on Acquia Docs: https://docs.acquia.com/blt/
-
Legacy docs in markdown format remain available at https://github.com/acquia/blt/tree/10.x/docs
-
Click the "Watch" button to receive email updates on the BLT project https://github.com/acquia/blt
-
Notice the detailed release notes over time. Scroll down to the 10.0.0-alpha release... https://github.com/acquia/blt/releases?after=9.2.6
-
Read about the major changes in the 10.x branch of BLT https://github.com/acquia/blt/releases/tag/10.0.0-alpha1
-
BLT no longer requires the
wikimedia/composer-merge-plugin
, which dramatically improves Composer performance and reduces the complexity of maintaining BLT projects! -
I usually recommend WSL for Windows 10 users... https://docs.microsoft.com/en-us/windows/wsl/install-win10
-
Jeff Geerling has a lot of guides for Windows on his blog https://www.jeffgeerling.com/blog/2018/installing-php-7-and-composer-on-windows-10
-
There is a variant of Homebrew for Linux and WSL -- I have not used it, but it looks interesting https://medium.com/@edwardbaeg9/using-homebrew-on-windows-10-with-windows-subsystem-for-linux-wsl-c7f1792f88b3
-
Here are his blog posts tagged with "Cmder" in case you prefer that to WSL https://www.jeffgeerling.com/tags/cmder
-
I started a Gist for using DDEV (this is MacOS focused but may be adapted to Windows) https://gist.github.com/markf3lton/fdfb1a7dcb71758c6c17c924ac260ee2
-
Windows install instructions for DDEV https://ddev.readthedocs.io/en/stable/#installation-or-upgrade-windows
-
Jeff Geerling maintains www.DrupalVM.com and there are Windows instructions in the Docs http://docs.drupalvm.com/en/latest/
-
As a general rule, if you can install DrupalVM on Windows, you will have the pre-requisites for BLT. If you cannot install DrupalVM on Windows, following the guides on Jeff Geerling's blog or in DrupalVM.com documentation, you're going to have a bad time!
-
Docker provides a great future for PHP VMs on Windows. As of writing BLT still defaults to DrupalVM so that is what I use for training sessions...
php --ini
https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors
-
Create a new GitHub project and do not initialize it with a README
-
Push your codebase to GitHub
git remote add origin https://github.com/<your-github>/<your-project>.git
git push -u origin master
- You will definitely want to edit your BLT.yml with your Acquia Free Tier repo
git:
default_branch: master
remotes:
- '[email protected]:bltdemo123.git'
Courtesy of LC
I had to pivot the approach several times but I think I got an stable process to get this working. The most challenging part was finding the right troubleshooting information, since I couldn’t find a clear path to the specific issues I was having (for example, realizing that Vagrant 2.2.5 was not the right version to work with and I had to downgrade to Vagrant 2.2.4).
Here is what I did at the end:
-
Enable Windows Subsystem for Linux (https://docs.microsoft.com/en-us/windows/wsl/install-win10) – Windows command line tool(s) don’t work as BLT project installation (acquia/blt#3415)
-
Install Ubuntu (Bash) 18.04 (https://www.microsoft.com/en-us/p/ubuntu-1804-lts/9n9tngvndl3q?rtc=1&activetab=pivot:overviewtab)
-
Within Ubuntu Bash, Install Vagrant (Version 2.2.4 (https://releases.hashicorp.com/vagrant/), 2.2.5 will not install the project), PHP and Composer (https://docs.acquia.com/blt/install/)
-
NOTE: Vagrant 2.2.4 need to be installed in windows as well (same version as in WSL)
-
Install Virtualbox (latest) in Windows (https://www.virtualbox.org/wiki/Downloads) (not in WSL -https://docs.acquia.com/blt/install/local-development/#blt-drupal-vm-blt-projects )
-
In WSL Ubuntu Bash create a blt project
composer clear-cache
export COMPOSER_PROCESS_TIMEOUT=2000
composer create-project --no-interaction acquia/blt-project <projectname>
- In WSL Ubuntu Bash, move to the project directory and run the following command:
blt vm
-
This will fail at the end, but it will create the Vagrantfile and bring the dependencies
-
Switch to a Windows Command Line Tool
-
Navigate to the mapped folder created by WSL. In my case, it was something like this
cd \Users\<user>\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\rootfs\home\<ubuntu user>\<projectname>
- Run vagrant up – this will create the VM
vagrant up
- ssh to the created VM
vagrant ssh
- Navigate to the project folder in the VM. Run composer install
cd /var/www/<projectname>
composer install
-
Drupal vm dashboard at http://dashboard.local..com
-
install Drupal instance with blt
blt Drupal:install
-
Drupal should be available at http://local..com
-
Common Errors I encountered:
-
Memory limits:
https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors
Use “COMPOSER_MEMORY_LIMIT=-1”
- Updating dependencies
- BLT not working after install:
If you have trouble creating the project, attempt to resolve the issue by using one of the following methods:
-
Clear the Composer cache https://docs.acquia.com/blt/install/creating-new-project/
-
Increase the process timeout by running the following command:
composer clear-cache
export COMPOSER_PROCESS_TIMEOUT=2000
If you have trouble using the blt alias, verify the alias is installed as expected, and then restart your terminal session by running the following commands, based on your version of Acquia BLT:
./vendor/bin/blt blt:init:shell-alias
source ~/.bash_profile
If you receive syntax errors from vendor packages, ensure that the version of PHP on your host matches the version of PHP in your VM, or else be sure to always run Composer commands from the VM.