What we're releasing in Lagoon 1.6.0 - (not just Drupal 9 compatibility)
Drupal 9 support, Lagoon metadata and Trivy scanning
The main reason for this release is to ensure that our images and infrastructure are ready to support Drupal 9 on release day. We’ll also be releasing a blog post outlining what we’ve put in place.
This release has also added customisable metadata fields to Lagoon projects, contributed by Stuart (and thanks to Salsa Digital) - we’ll expand more on what’s possible with this, and why it’s so important shortly.
Also, in big-ticket items, we have updated the image and vulnerability scanning component bundled with our Harbor install to use Trivy (instead of Clair). In our tests, Trivy not only detected more vulnerabilities, but was significantly less resource-heavy, and returned faster results - triple win!
API & Authentication subsystem
We’ve rewritten the JWT system (that provides short-lived tokens for use in the UI, or via the CLI) from a complex bash script into a much more streamlined Python implementation.
Build & Deploy subsystem
The most significant change here is that pre and post rollout tasks can now be disabled using an environment variable instead of commenting them out in .lagoon.yml - this can be useful for some conditional deploy scenarios. Allied to this change is an update to the way projects process updates to their config_map - previously an update would not trigger a redeploy - now any change to variables or settings in the config_map will trigger a re-deploy and re-read of the config_map.
A couple of other changes here to include Ingress annotations (which allow for, amongst other things, single entry redirects) and label updates (to improve use of kubectl and oc commands)
Logging & Reporting subsystem
For customers hosting their sites on Kubernetes, we’ve also released the first step in our logging system upgrade, providing the helm charts for the components needed to forward logs to our logging infrastructure.
Base Images & Testing subsystem
Most of the changes in here are to do with Drupal 9 - updating the version of MariaDB in use, automating any needed MariaDB database upgrades, and building an initial set of Drupal 9 tests. Also, we came across an issue with the Python3.7 images, so fixed that (sidenote - we’re really interested to gather feedback from anyone using our Python3 images!)
Documentation & Examples / DX subsystem
The usual couple of tweaks to documentation, cleaning and tidying. Rest assured we’re hard at work behind the scenes on getting some docco magic happening!
Automation, Services & Helpers subsystem
A couple of additions needed here to streamline yet more of our internal processes and keep systems running!