I started the week with another Monday morning production deployment, it provided a good opportunity to validate the production release process steps I updated last week.
I ran into several issues when merging my feature branch into target release branches (stage, pre-prod and prod). I had only installed Drupal/Redis with composer, so I expected to see differences related to that but instead saw all manner of unrelated differences and had some merge conflicts to boot!
I used a couple of techniques to fix things:
// Update the composer lock file hashes $ composer update --lock
and...
// To use composer files from the target branch and then apply my intended change $ git checkout origin/release-branch -- composer.lock composer.json $ composer require drupal/redis --update-with-dependencies
Mid-week I switched from client projects to an internal project: our Client Dashboard - which we're porting to from Symfony to Drupal.
I was able to add comprehensive documentation to our client dashboard project wiki about getting a local development environment set up (we're currently using our ce-vm development stack). I also captured the tear down process for the times when someone might just need to throw everything away and start from scratch!
Problems with getting a local development environment set up is a common issue we face when developers roll onto a project... in some cases, the documentation has fallen behind, in other cases the steps haven't been tested on their particular set up or versions of software... to try and address these issues, I had the idea that we capture a log of when the setup process was last tested from a standing start so anyone joining the project can know that at a certain point in time, on certain versions of software, the process worked... and if it doesn't for them, who to seek help from...
Homeschooling update: we found all the verbs!