I have deployment (capistrano) that, on success, reloads systemd:
sudo systemd reload myserver.service
But, just after the first deploy, the service is not yet running. In that case, I want to start it, instead.
sudo systemd start myserver.service
Is there a flag or other trick in systemd that figures out: "is the service running, then reload, otherwise, start it"? The alternative would be to build this into the deployment tooling itself, but I'd rather use existing features if systemd provides these.
You probably mixed something up. The command to reload or start a systemd service is systemctl.
You can try
sudo systemctl reload-or-restart myserver.service
That should do what You asked for.