Octopush was born of the need to arbitrate our deployments to Staging environment, to guarantee the consistency of the environment with Production and to coordinate DEV and RM Jenkins. It is basically a queue and a web-page where everybody can see what is being deployed, what is on wait, and what has recently been deployed.
It also integrates with Github providing SSO authentication and permission handling to push releases LIVE!
Users from different teams in the company can easily deploy LIVE their components with a push of a button, they also can rollback to any version available in the Production - Deployed section.
An interesting thing we implemented in order to make the process more fool-poof and secure, is that we configured a couple of Alerts in our NAGIOS system, whenever they detect a number of errors that go above a certain threshold they call Octopush disabling it, this takes Octopush into a paused state where no more releases can be made. We combine this logic with our Canary release process on Jenkins, where we deploy to a subset of servers and then wait for a couple of minutes before moving on with the rest. Before resuming the deployment we check Octopush state, and if it is paused it means there are errors LIVE an we should not proceed with the whole deployment, so Jenkins job rollbacks automatically the few servers it has deployed to and returns a FAILED DEPLOYMENT state.
Octpush has been released as an Open Source PHP project so everybody can download, try and contribute! In the github page you can find plenty documentation and even a link to a running version with its own Jenkins installation.