Hi! Welcome to the very late release post for VVV v3.0. As we follow semantic versioning, this is a breaking release, and requires slightly different update instructions.
Ubuntu 14 EOL and moving to Ubuntu 18 LTS
VVV 2 uses Ubuntu 14, but this reached end of life recently. In response Ondrej deleted the unsupported PHP packages, and all VVV 2 installs were no longer able to provision. VVV contributors had setup a package mirror in case this had happened, but it seems only 70% of the needed packages were mirrored.
For this reason, VVV 2 is no longer supported, and won’t be recieving fixes and updates.
VVV 3 moves us to a new Ubuntu 18.04 LTS box, which should cover us until 2024. Additionally, we’re using a leaner custom built box. This does mean that you will need to destroy your VM to update:
# turn off the VM vagrant halt # destroy the Ubuntu 14 VM vagrant destroy # pull down the latest update git pull # provision a shiny new Ubuntu 18 VM vagrant up --provision
This will destroy the database, but luckily VVV has been creating backups for a long time, you can restore them after updating with this command:
vagrant ssh -c "db_restore"
If you turned off database backups, you can manually back up your database before updating with this command:
vagrant ssh -c "db_backup"
What Else Has Changed?
MariaDB data No Longer Inside the VM
VVV3 stores its database in
database/data now, which means it will survive a
vagrant destroy. If you’re having trouble provisioning mariadb, let us know on github issues.
We also added a config option to return to the old behaviour for those having problems:
general: db_share_type: false
We continued optimising provision in this release, and making VVV friendlier.
Vagrant Guest Additions Plugin Disabled
Our new box has recent guest additions, so this shouldn’t be needed. However, some users like this plugin, and when reprovisioning encountered problems. We’ve disabled the plugin just for VVV to avoid these issues.
Changes To Utilities
Utilities are now simpler and easier to work with and debug:
- TLS certificates are now accessed via a new
- Utilities are now announced with messages for if no provisioner was found
- The trusted hosts utility has been deprecated and merged into the core provisioner, fixing several dashboard cloning issues
- VVV2 referred to utilities internally as resources, this has been changed to utilities, and they’re now cloned to the
Mapped Folder Changes
With this release, we removed the
/vagrant mapped folder and eliminated overlapping vagrant shared folders. This improves compatibility, the new shares are:
VVV will now copy the
vvv-custom.yml file on provision into
/vagrant inside the VM, but this folder is no longer mounted and is erased on every provision prior to copying.
Ubuntu 18 Changes
Ubuntu brings with it lots of Kernel improvements that make Ubuntu faster in a virtual machine. Expect to see small to large performance improvements in some areas depending on your machine and workload.
We also had the opportunity to update some packages, Mongodb has been updated from v3.4 to v4.0, and various security improvements have been inherited.
We also improved the provisioners:
- The Git PPA is now only added if it’s missing
- Various composer and git commands now run as
root( VirtualBox determines the ownership of those folders, so they will always be owned by the
- The branch and repo URL are mentioned when cloning dashboards, sites, and utilities
- the VVV splash no longer shows on a
- when provisioning on Ubuntu 14 it aborts and gives instructions on updating
- added the VVV PPA package mirror
- nginx now gets reloaded instead of restarted
- VVV now copies over a minimal MySQL config for overrides
- Provisioners now log their output to
logs/provisioners/datetime/provisionername.login addition to showing in the terminal
nvmwas removed from the core provisioner, it made a network request on every provision, and downloaded a script that always failed with syntax errors
VirtualBox and Vagrant Versions
If you’re using the 6.x versions of VirtualBox, be sure to update to v
6.0.8 which contains several important fixes regarding shared folders.
We also now require Vagrant v
2.2.4 as a minimum version.
.dev Domains Removed
We deprecated these a while ago, but
vvv.dev is no longer added as a host or listened for by Nginx. We also removed
vvv.localhost to avoid confusion. From now on
vvv.test is the dashboard URL.
As an aside,
vvv gets added, and we’d like to remove it, but aren’t sure how. If you know how to do it, let us know!
Finally, a Big Thank You To Our Testers
To make sure we eliminated as many kinks and issues as possible, we had a large pool of testers, community members who took their own time to help verify and find problems. I have no doubt some still remain, and I hope a v3.1 will be out in the next week or two. Dealing with the sudden changes to Ubuntu 14 have been tough on a lot of people, and a major disruption to others, thank you for being patient!