Let’s take it from the beginning: TYPO3 updates across several versions often require many intermediate steps in the individual versions. You need to upgrade the Core, then any extensions you are using, as well as make updates to the database. Some of these steps are made easier by upgrade wizards, but some require custom, manual adjustments for each project.
Upgrading is Often a Laborious Process
Upgrade wizards often depend on a specific TYPO3 version, meaning that you cannot simply skip TYPO3 versions 10 and 11 when updating from TYPO3 9 to 12, for example. You have to set up these versions and perform specific tasks there.
With DDEV, setting up these installations is usually not a problem. However, since complex TYPO3 websites often require many such tasks, it can be tedious, and you have to repeat all the steps with a fresh database dump.
It is laborious to document the steps, and possibly also laborious to execute them. Not to mention things that get lost, forgotten, or only come to light when the site is supposed to go live.
There Must Be a Better Way!
Yes, there is one — and TYPO3 already provides the tools to do it.
For a long time, we have had a script to automate such steps at our TYPO3 agency, undkonsorten. It was all custom and specifically adapted to our development environment. In order for the TYPO3 community to benefit from it, we needed a better, more independent solution.
That stand-alone, independent solution is here today. In a live coding session the TYPO3 User Group Magdeburg, wrote a small Bash script as the basis. The script has been published on Github along with documentation on how the script can be used for a TYPO3 update.