If you are using cloud solutions like AWS/DigitalOcean/Azure etc what workflow do you use to deploy code? Do you just do a git pull or run some kind of CI server to test and deploy? Assuming that an app has fair amount of unit tests and needs a build step (concatenation, minification etc..) what's the best way to deploy code to the VMs?
Hope this helps!
I am using a simple post receive hook on my VPS to deploy code changes. Basically I have a repo and production directory on my VM. Whenever I need to deploy something I build the project locally and push it to my repo on cloud. Once the push is done, the post receive hook works and copies my new files into production directory which is my web root. I work in a very small team and usually do small projects so it works. Not sure how big teams handle this professionally.
What do you think @lisol? I think you have a fairly large team. How do you handle this?
Jakub
Web Developer
Well I am using most of the time mina deploy or capistrano. Mina is pretty simple so I guess capistrano would fit better for you.
There are several recipies for capistrano, so you can make complex deploy and build tasks.
I am using it for several wordpress projects. It checks out the repository, make a new version, run composer install, npm install, gulp build and even db sync over wp:cli .
You can also include some kind of CI like travis-ci, CircleCi etc.
So you can make something like
it will run the tests and if successfull deploy to your vps, run the build steps etc.