monte at sweattechnologies.com
Fri Dec 20 18:04:20 EST 2013
I'm wondering if anyone has experience with OpenShift?
A project I'm working on where I setup a git based deployment of a web app to a VPS via push to the server and a post update hook got me intrigued with deploying web apps with git. It's quite a popular idea (Heroku, AWS Elastic Beanstalk, OpenShift, AppFog, CloudFoundry etc).
I had a little play with Heroku which looks like a neat service although quite expensive once you leave the free levels. I implemented a build pack for LC Server on Heroku which is available here: https://github.com/montegoulding/heroku-buildpack-livecode. If you use revIgniter then the build pack will deploy the latest version from github and you just need the application and assets directory in your repo. One of the cool things about these services is they are designed around scaling the web app so you can easily change the resources assigned to it and scale horizontally by running multiple instances all connecting to the same database.
In order to implement the build pack I needed compile LC Server 64bit and thanks to the work of Mark Wieder and others it wasn't all that complicated to do. It's available here: http://mergext.com/lcserver.tar.gz
I deployed revIgniter here http://evening-lowlands-1899.herokuapp.com
Anyway, back to OpenShift... The pricing of OpenShift seems much better than Heroku and it also supports a small amount of local data storage (1GB scalable) so I'm contemplating making a thing like the Heroku build pack which is called a cartridge in OpenShift terminology. However, it all seems more complicated than the Heroku way of doing things so if there's someone out there that has an interest and/or experience in making an OpenShift cartridge for LC server then I'd be interested to hear from you. Basically I'm thinking of starting with the php cartridge and removing the php stuff and adding lc server stuff.
M E R Goulding - software development services
mergExt - There's an external for that!
More information about the Use-livecode