Discuss HN: How do you deploy?
11–14 of 14 posts
[deleted]
Re: Discuss HN: How do you deploy?
#12I use Chef or Puppet for provisioning, and Capistrano or Fabric for deployment. The process varies based on the application, but IMHO the process should be entirely automated (i.e. I shouldn't have to SSH onto a production machine).
Why chef or puppet? Do you have a preference? I'd like to learn one so I'm curious.
Re: Discuss HN: How do you deploy?
#13To deploy without granting your development environment ssh access to the staging or production environments, I suggest you setup port knocking which triggers a script on the server to checkout the latest code. The command can be as simple as git pull or something more complex like capistrano does with symbolic links.
Check out http://www.zeroflux.org/projects/knock - it is very simple to configure.
I find this method to be very secure because if a hacker somehow figures out that a) you're using port knocking and b) the exact ports that you are using, in the right order, then the worst they can do is trigger a code deployment.
Re: Discuss HN: How do you deploy?
#14Continuous releases for now, probably make it major releases soon
ActiveRecord, Postgresql Database
Git for version control
Deployed to heroku (easy web deployment with just "git push heroku master")