Note: this was a self-solved problem. I’m leaving this here regardless, in case others get the same confusion as me. See next post for my answer.
I’m currently managing the plugins of a particular site with specific versions (not wildcards) in composer. This has allowed me to match the exact versions of plugins that are running on the current live installation of the site, while I prepare the new trellis version.
The problem I’m having is that when I bump the version number in composer.json, then run deploy.yml, the new version doesn’t get installed, because the playbook runs
composer install, and of course, this command only installs what is in the lock file. What I’d like is
composer update, which would look for new versions in the json file, and install those instead.
Thinking about it, I guess
composer install might be a better default, because lots of projects will use wildcards, and we really only want wildcard versions to be bumped manually, when we’re around to see what the effects are.
However, in my case, I’m specifying exact version numbers, so I’m happy for my automated deployment process to go ahead and update to new versions. It’s kind of bugging me that I have to ssh into the server and do
composer update manually… I want a “one click” operation.
Could we perhaps have an optional setting in Trellis, where deploy.yml runs
composer update instead?