We are a digital agency who mainly focuses on WordPress and Magento design and development. We are using Media Temple to deploy our websites, but we are running into some issues with SSH limitations.
Currently, Media Temple only allows for root access to be given in order to access the server via SSH. This is problematic as we work with remote developers who we can't give root access to – for security reasons. This puts us in a position where when a remote developer is Pushing changes to GitHub, these changes still need to be Pulled by a root user to the staging server, in order take effect. That has proven to be very problematic with the differentiation of time zones and keeps the remote developer from easily troubleshooting and issue immediately after deployment. We would love to be able to give our remote developers SSH access to an isolated website/project/staging server so that they can deploy their own updates via SSH.
So, with that being said, We are thinking that it might be a good idea to use either Digital Ocean or Heroku (I'm open to any other suggestions as well) to launch each of our sites on its own Droplet or Dyno. This would allow us to give full access to each environment without handing over access to every single site on our two Media Temple servers. This would also isolate any security issues if there were to ever occur.
So, I guess this question is a multi-level question: Is this a good idea? Which service makes the most sense for our WordPress focused agency?
Lastly, any additional input on how our deployment process might look would be greatly appreciated. I.E. We are thinking it would look something like this:
Local dev using MAMP > Deployed to staging Droplet (Digital Ocean) > Launched on Production Droplet.
Sorry for the long-winded question but thanks for reading!