Make is all about producing a file (so you need PHONY for tasks that should still run if such a name already exists).
But for many modern tasks that are not producing a file, like "deploy" -- you're right. Although I'd argue that then it's easier to have multiple bash scripts, each with its own "set -euo pipeline" on top. Easier to read.
Honorable mention: single python script.