Skip to content
This repository has been archived by the owner on Feb 13, 2023. It is now read-only.

Releases: geerlingguy/drupal-vm

3.0.0 "The Light Sailer"

19 May 20:55
Compare
Choose a tag to compare

Read the Drupal VM 3 announcement blog post.

Drupal VM 3 is here! There are some amazing new features no matter what kind of developer you are. Here are a few of the highlights:

  1. Teams can commit a shared config.yml, then individual developers can override specific settings in local.config.yml
  2. Projects can store Drupal VM in a subfolder, but manage the VM in the parent directory.
  3. The default configuration includes PHP 7 and MySQL 5.7 running on Ubuntu 16.04 (other OSes and versions still supported - see PHP 5.6 documentation).
  4. Drupal VM is on Packagist! - you can include Drupal VM as a dependency of your project
  5. You can now run custom pre/post provision Ansible tasks and/or shell scripts.

Breaking changes

  • Some new defaults (e.g. PHP 7 or upgrading to Ubuntu 16.04) require a full box rebuild (vagrant destroy and vagrant up)
  • Requirements: Vagrant 1.8.1+, VirtualBox 5.0.20+, and (if using Ansible installed locally) Ansible 2.0.1+.

New variables in config.yml

  • vagrant_box now defaults to geerlingguy/ubuntu1604 (was geerlingguy/ubuntu1404)
  • drush_makefile_path is now "{{ config_dir }}/drupal.make.yml" (to support Drupal VM in a subdirectory)
  • memcached, xdebug, and xhprof are now commented from installed_extras by default
  • extra_packages now includes sqlite by default
  • php_version is now "7.0"

Improvements

  • #522: Add SQLite support to Drupal VM.
  • #455: Add support for local.config.yml.
  • #608: Automate ansible-galaxy role installation (requires Vagrant 1.8+).
  • #609: Default to Ubuntu 16.04, PHP 7, and MySQL 5.7.
  • #616: Update Travis CI automated tests to test on Ubuntu 16.04 in addition to other OSes.
  • #618: Use latest stable Drupal 8 release instead of working-copy (git clone) by default.
  • #633: Support custom pre/post provision Ansible task files.
  • #378: Decouple Drupal VM from it's existing directory so it can be managed in other directories.
  • #378: Add a composer.json (Drupal VM is on Packagist!)
  • #526: Added Blackfire.io support (PHP 7 or 5.x).

Bugfixes

  • #614: Install cron jobs as the SSH user instead of as root.
  • #620: Update JJG-Ansible-Windows to latest version.
  • #635: PHP 5.6 documentation didn't include required php_fpm_pool_conf_path.
  • #619: Fix OpCache CLI error caused by conflicting ini files.

2.5.1 - Stable PHP 5.6

13 May 14:33
Compare
Choose a tag to compare

This will be the last major release of the 2.x series—this version locks in all the Ansible roles at a stable version compatible with 2.5.1 / PHP 5.6 / Ubuntu 14.04 (or any of the other supported options).

The next release of Drupal VM will switch a lot of defaults with a few backwards-slightly-incompatible changes. PHP 5.3/5.4 will no longer be supported, and support for Ubuntu 12.04 will become 'best-effort' only.

2.5.0 "Magic Landings"

11 May 04:40
Compare
Choose a tag to compare

This release is aptly named, since many Drupal VM users and contributors have 'landed' in NOLA for DrupalCon, for this last major release in the 2.x series, and are helping plan the next major release (3.0.0) at a BoF!

There are many small new features in this release, but there should be no breaking changes. There are a few new variables available in config.yml, so please read through these release notes when upgrading Drupal VM!

Note: If you haven't updated your configuration since before Drupal VM 2.2.0, be sure to read through the 2.2.0 Release Notes for some important information.

Changed default variables in example.config.yml

  • installed_extras now contains two additional (optional, disabled by default) features: blackfire and newrelic
  • extra_packages is now empty by default (it used to contain unzip in its default state)
  • New variable: nodejs_install_npm_user: "{{ drupalvm_user }}"
  • New variable: pre_provision_scripts: []

Improvements

  • #573: Support Ubuntu 16.04 LTS Xenial release.
  • #587: Add support for New Relic.
  • #526: Add Blackfire.io support to Drupal VM.
  • #598: Add option for pre-provisioning scripts (similar to post-provisioning scripts).
  • #513: Better winnfsd documentation for Windows users.
  • #540: Clarify PHP7 requirements.
  • #557: Document usage with Arch Linux and other distros with default Python 3 environment.
  • #589: Install Apache 2.4 in Ubuntu 12.04 LTS.
  • #536: Document the Drupal VM upgrade process.

Bugfixes

  • #550: Make unzip a dependency.
  • #424: Fix NPM packages installed under root user.
  • #562: Fix pip installation under Windows.

2.4.0 "A New Tron and the MCP"

08 Apr 16:01
Compare
Choose a tag to compare

This release contains many small optimizations, and also makes Drupal VM an even better environment for testing all the new performance and caching features included in Drupal 8, specifically BigPipe and Cache Tags. See the following blog posts for some learnings and background information on both features:

Note: If you haven't updated your configuration since before Drupal VM 2.2.0, be sure to read through the 2.2.0 Release Notes for some important information.

Changed default variables in example.config.yml

  • ruby_install_gems_user: "{{ drupalvm_user }}"
  • composer_home_path: "/home/{{ drupalvm_user }}/.composer"

New default variables in example.config.yml

  • nginx_ppa_use: true
  • composer_home_owner: "{{ drupalvm_user }}"
  • composer_home_group: "{{ drupalvm_user }}"

Improvements

  • #455: Better support for running Drupal VM on DigitalOcean droplets.
  • #454: Clarify system requirements.
  • #473: Clarify drush alias usage for hosts without Ansible.
  • #480: More robust Drush alias generation for virtualhosts in both Apache and Nginx.
  • #492, #491: Use correct PHP7 PPA and update docs with full required package list.
  • #497: Better Composer support within Drupal VM.
  • #515: Support source install of Drupal 8 with composer install prior to site install.
  • #499: Support Debian base boxes (unofficially).
  • #519: Ensure Parallels guest tools are installed if Parallels is the VM provider.
  • #397: Support Drupal 8 cache tag BAN requests for Varnish/Purge.
  • #527, #532: Support and document Drupal 8.1.x BigPipe streaming.
  • #531: Use official Nginx repository, default to latest stable release.

Bugfixes

  • #469: Fix formatting for hosts file on dashboard.
  • #472: Use rubocop to lint Vagrantfile for better Ruby syntax.

2.3.1

23 Feb 22:46
Compare
Choose a tag to compare

Bugs Fixed

  • #434: Ditch slow CentOS 6 test build and test Nginx with Ubuntu 14.04.
  • #461: Fix variable typo for vagrant_synced_folder_default_type.
  • #464: Make sure drupal_core_path is created in Vagrant successfully.
  • #463: Dashboard doesn't appear if using autonetwork plugin, add dashboard. to vhost

2.3.0 "Miracle and Magician"

21 Feb 05:07
Compare
Choose a tag to compare

This release is aptly named—there are a few new features that I thought I wouldn't see in Drupal VM for a very long time (it's a Miracle they made it so soon), and there's a new collaborator, @oxyc, who has been like a Magician in his uncanny ability to knock out some complex issues in both Drupal VM and upstream roles. If you see @oxyc around, thank him for his incredible level of effort in getting this release out the door!

One of the most incredible new features is a Drupal VM dashboard—after you finish Drupal VM setup, visit the VM's IP address, and you should be greeted with a beautiful new welcome page with all the information you need to get started:

drupal-vm-new-dashboard

This release also has been thoroughly tested with Ansible 2.x, Vagrant 1.8.x, and various Mac, Windows, and Linux configurations. Shortly after Drupal VM 2.2.0 was released, Vagrant 1.8.x started having problems working with the then-new Ansible 2.0 release when using the ansible_local provisioner, so for the time being, Drupal VM has switched back to using JJG-Ansible-Windows as a more reliable substitute.

The third major change (thanks in very large part to @oxyc again) is the Dockerization of all Drupal VM testing—instead of just testing for syntax errors, we're now testing everything inside of Docker containers to make sure provisioning doesn't break. Test coverage has gone from about 5% to about 80% with this change. Better tests == better reliability! And we fixed about 8 upstream bugs to get the tests to pass, so double-win!

There is much, much more included in this release, including experimental Drupal VM-on-DigitalOcean support! See the lists below for all the details.

Note: If you haven't updated your configuration since before Drupal VM 2.2.0, be sure to read through the 2.2.0 Release Notes for some important information.

Changed default variables in example.config.yml

  • drush_makefile_path: ../../drupal.make.yml
  • drupal_domain: "{{ vagrant_hostname }}"
  • Added new dashboard host configuration to both apache_vhosts and nginx_hosts
  • apache_vhosts were updated to use more generic path configurations
  • nginx_hosts were updated to use more generic path configurations
  • proxy.load and proxy_fcgi.load were added to apache_mods_enabled
  • drush_version: "master"

New default variables in example.config.yml

  • dashboard_install_dir: /var/www/dashboard

Improvements

  • #438: Add documentation for SSL configuration.
  • #320 / #404: Add a dashboard.
  • #412: Add Docker-based multi-platform tests.
  • #445: Switch back to JJG-Ansible-Windows for more stability than ansible_local provisioner.
  • #451: Add support for vagrant-hostmanager plugin.
  • #401: Add support for sourcing a local Vagrantfile.
  • #84: Make Drupal VM prod-ready (with a DigitalOcean guide).
  • #454: Add minimum system requirements.
  • #433: Add alternative WinNFSD documentation and mention Cmder.
  • #352 / #440: Update docs on tools that integrate with Drupal VM.
  • #410: Use vagrant hostname instead of machine name for servernames.
  • #400: Use Vagrant 1.8 linked clonse feature for VirtualBox.

Bugfixes

  • #357: Update README and other documentation.
  • #426: Check for post-provisioning scripts before attempting to run them.
  • #427: Use php_fpm_listen variable in Nginx server template.
  • #413: Update PHP 7 configuration documentation.
  • #408: Skip drush aliases for development tool hosts and fix drush aliases for nginx.
  • #405 / #379: Set drush_version explicitly to a string.
  • #379: Add proxy and proxy_fcgi modules to example config.
  • #394: Fix paths for special domains.
  • #381: Update xhprof docs to mention disabling xdebug.

2.2.1

25 Jan 15:59
Compare
Choose a tag to compare

Please be sure to read the below note, copied verbatim from the 2.2.0 release notes. This release is a bugfix-only release to fix a few small issues that cropped up as a result of switching Drupal VM from defaulting to mod_php to PHP-FPM with Apache.

New variables in config.yml

  • Important: If you're using Apache, make sure you add a ProxyPassMatch parameter to each Drupal or PHP vhost, for example:
apache_vhosts:
  - servername: "{{ drupal_domain }}"
    documentroot: "{{ drupal_core_path }}"
    extra_parameters: |
          ProxyPassMatch ^/(.*\.php(/.*)?)$ "fcgi://127.0.0.1:9000{{ drupal_core_path }}"

FastCGI is not supported on CentOS 6, so If you're using the geerlingguy/centos6 base box, there is no need to add the extra_parameters. Note that CentOS 6 and Ubuntu 12.04 support are both slated for removal sometime later this year, see #376.

2.2.0 "Wormhole"

16 Jan 04:17
Compare
Choose a tag to compare

This release adds a few great new features (like Redis support, FastCGI with PHP-FPM for Apache, and optional custom post-provisioning scripts). This release also requires one change to your configuration if you're using Apache, and you need to be sure to update all your roles if you have Ansible installed on your host machine: sudo ansible-galaxy install -r provisioning/requirements.yml --force. Read on for details!

New variables in config.yml

  • Important: If you're using Apache, make sure you add a ProxyPassMatch parameter to each Drupal or PHP vhost, for example:
apache_vhosts:
  - servername: "{{ drupal_domain }}"
    documentroot: "{{ drupal_core_path }}"
    extra_parameters: |
          ProxyPassMatch ^/(.*\.php(/.*)?)$ "fcgi://127.0.0.1:9000{{ drupal_core_path }}"

FastCGI is not supported on CentOS 6, so If you're using the geerlingguy/centos6 base box, there is no need to add the extra_parameters. Note that CentOS 6 and Ubuntu 12.04 support are both slated for removal sometime later this year, see #376.

Improvements

  • #346: Switch Apache to use FPM instead of mod_php.
  • #289: Add Redis as optional install.
  • #278: Make Drupal Console install optional.
  • #174: Add ability to provide custom shell scripts to run after provisioning, with Solr config example.
  • #332: Update documentation for running PHP 7.0.0+ on Drupal VM.
  • #344: Document unsupported PHP extensions for PHP 7.
  • #293: Add support for overriding any synced_folder option.
  • #356: Allow override of default /vagrant synced folder type.
  • #355: Use new ansible_local provisioner included with Vagrant 1.8.0+.
  • #363: Document xDebug NetBeans Configuration.

Bugfixes

  • #332: PHP causes fpm error.
  • #350: Update Nginx vhost template for more optimal Drupal 8 usage.

2.1.2 "We've Got Company"

04 Dec 15:59
Compare
Choose a tag to compare

This release is aptly named—up until 2.1.1, I've been developing and testing Drupal VM on only a Mac OS X workstation, so many issues that were found on Linux and Windows-based workstations had to be fixed by the community, and I couldn't test the fixes myself! Now I have a Lenovo T420 with three SSDs, with Windows 10, Fedora 23, and Ubuntu 15.10, so I can test across four platforms myself!

New variables in config.yml

None.

Improvements

  • #234: Added ansible task which copies known_hosts file from host to guest.
  • #279: Updates to examples and syntax highlighting fixes in docs.
  • #281: Better documentation of rsync options for synced folders.
  • #290, #291, #297: Vast improvements to Windows docs (Jeff finally has a Windows laptop to test with!)
  • #308: Add .idea and .project configs for editors to .gitignore.
  • #331: Update docs based on the fact that PHP 7.0.0 has been released!

Bugfixes

  • #273: Minor grammatical error fixes.
  • #247: Fix problem that can cause Apache installation to fail.
  • #301, #245: Fix some issues that caused Linux host usage (Fedora/Ubuntu) to have issues.
  • #77: Fix PHP config so Xdebug works better out of the box.
  • #329: Docs cleanup for synced folders.

2.1.1 "Only Solutions"

07 Oct 11:23
Compare
Choose a tag to compare

New variables in config.yml

None.

Improvements

  • Started naming releases after songs from Wendy Carlos' 1982 soundtrack from Tron.
  • Added Nginx security configuration for https://www.drupal.org/node/2508591.
  • #232: Add better PowerShell documentation for Windows.
  • #235: Add better Git documentation for Windows.
  • #248: Use YAML for requirements file.

Bugfixes

  • #260: Revert previous addition of port number in drush aliases (was causing issues for some).