ZeroTurnaround Blog

Product Updates, Company News & Fun

LiveRebel 2.6 Sneak Peek: Now also for PHP, Python, Ruby & Perl!

Over the years we have been working hard the make LiveRebel the most awesome deployment tool for the Java ecosystem; however, during these years, we have constantly been approached by non-Java crowd, inquiring if it will be possible to use LiveRebel with their PHP/Python/RoR/Perl application. LiveRebel 2.6 (coming on March 13) has your answer, and it’s a BIG YES!

I can easily do “ssh + git pull”, why do I need LiveRebel?

While you certainly can do “ssh + git pull” (and many do), it is far from certain as to whether this is a best practice. Ask yourself:

  • Which version of your application is currently deployed in production? How about QA? Do you know?
  • How to do you keep track of the environment-specific configurations for your application? Do you have different files for each environment and then switch, based on an environment variable? How can you be sure that the latest update to your configuration files was correctly added to each environment-specific file?
  • How do you keep your application code and database structure in sync? And across different environments?

Answers to these questions are not easy without proper tooling. We listened, and worked hard to make LiveRebel the tool of choice to help you answer them!

Application versioning

In LiveRebel, all application packages are versioned. You get an easy overview from the Command Center about which version of which application is installed in which path on which particular server. No more browsing the directory tree and using some smart heuristics to guess the version!

Screenshot of LiveRebel Command Center, showing overview of deployed applications and their versions

Environment-specific configuration management

LiveRebel 2.6 adds several features to help you to externalize the configuration from your application archive. You can then inject the right configuration values into the application when it is time to deploy. For more details, check out this blog post.

Configuration scripts

Very often, you may need to do more than just unpack a bunch of files onto a server to deploy an app successfully. You may have to restart services, flush caches or run automatic acceptance tests. Therefore, we introduced the ability to call user-specified shell scripts during different phases of deployment. For more details, check out this blog post (ignore the fact that there is “Java” in the title – it applies equally to non-Java apps :) ).

Database schema management

Anyone who has ever been burned by a “column not found” error in production knows that keeping application code and database schema in sync across different environments can be a daunting and error-prone task. You guessed it – LiveRebel has your back here too! Introduced in version 2.6, LiveRebel can now keep track of your application code AND your database schema so they never get out of sync! For more details, check out this blog post.

Awesome stuff, how can I try it with MY application?

Download a fully featured, free copy (be sure to choose 2.6+). If you are worried that your own application is too large and complex, you can also grab a sample PHP (Yii) application from GitHub  - it makes use of all the new 2.6 features. That sample application uses a relational database, so grab also our easy-to-set-up demo environment from Github (uses Vagrant and VirtualBox).

Join Our Webinar

Finally, you’re welcome to join our LiveRebel 2.6 showcase webinar on March 14. You’ll see it in action and will be able to ask any questions you may have!

  • Konstantin Root

    Node.js support?

  • Neeme Praks

    Sure, you can use this functionality to deploy anything that needs some files to be on some servers (and might need some scripts to be run during the update). If you have questions, feel free to send an e-mail to liverebel@zeroturnaround.com with description of what you are trying to achieve.