What is the correct way to deploy a Django project online? Currently, the method I use involves ssh-ing onto the server, git pull, performing Django chores (migrations, collectstatic etc) and then restarting the web server. There must be an automated way of doing this. E.g. If I wanted to deploy onto 10 servers, I don't want to manually update them all!
I can't seem to find anything concrete about best practices. I have heard of Fabric but I don't think it is compatible with Python3 (which I am using). There seem to be many tools but I'm not sure which are reputable.
Any advice would be helpful, thanks