This past Wednesday night, I participated in the DevNation Hack Night in conjunction with Red Hat Summit. I was joined by Phase2’s CTO Frank Febbraro and Joe Caccavano, our CMO. Here at Phase2 we are big fans of OpenShift, RedHat’s open source Platform-as-a-Service (PaaS) offering, and we see a huge opportunity for Drupal in this space. In order to make Drupal a first class citizen on OpenShift, we helped develop Drupal 7 and 8 quickstart packages for Openshift in addition to building the official OpenShift Origin community site using Open Atrium, our Drupal social collaboration distribution.
Some of the benefits of using a PaaS like OpenShift is the ability to have a uniform environment, security, and automatic deployments with the Git distributed version control system. PaaS also gives you an API to spin up applications the same way Infrastructure as a Service (cloud computing) providers give you an API to spin up compute resources.
With our enthusiasm for OpenShift and Drupal, we decided to develop our own Drupal-based PaaS on top of OpenShift as a proof of concept at DevNation’s Hack Night. In just under two and half hours, we were able to create an application to host an OpenShift Origin set up on Google compute engine, and build a Drupal based PaaS on top of this.
In order to create a Drupal-based PaaS that can be used like other cloud hosting providers, we developed an application that runs on OpenShift that communicates with the OpenShift API to quickly spin up new applications. Our application was built with node.js and Angular and works alongside another application we built with PHP to help set up Drush-based automation for Drupal sites. With these applications running on OpenShift, you can have your dev, stage and live site all together with the ability to pull a database from stage to dev or promote a database from stage to live.
Here is a demo I have recorded to show the MVP we put together in 2.5 hours during the hack night. We had a blast building this Drupal hosting dashboard with OpenShift and I'm happy to say that our team won first prize. Earlier during the conference, we also contributed a number of improvements to a Node.js OpenShift Client.
This project really shows the power of OpenShift Rest API’s: if you have access to any language that can consume REST web services, you can fully automate your application lifecycle. I’m looking forward to continuing to build, develop, and hack with open source partners like OpenShift.