Extension Manager

September 3, 2008 · By Gert Franz · 10 Comments

With the new extension manager we are implementing for Railo 3.1 Open Source many problems with installing applications or Railo Extensions should be a thing of the past.In Railo 3.1 we will introduce a new way of installing and uninstalling applications or extensions on your Railo server. This will allow you to install an application like BlogCFC including all database settings et.c with a few clicks from the Railo Administrator.
The idea behind this was that at the moment application providers have to provide an installation guide and of course an installation routine. These routines can be different from application to application. The problem of course was and is, that an end user might end up having to read all these install documentations and maybe check for different preconditions of their systems themselves. This of course then results in a higher barrier one has to overcome when wanting to install a certain application.
Another reason is, that there is no real place where someone might find applications of a certain kind, because not every application or extension might be listed on riaforge or other sources. Updates as well can be very painfull since you never get notifications from the providers of all your installed applications that there is an update for your particular application. Then the installation procedure might start over again.

The new extension manager tries to solve these hurdles and overcome the lacks mentioned above. It will be available in every Railo administrator that has a connection to the internet. In the extension manager you recieve a list of all applications that are available on the providers server and their status etc. By following the installation API installs, updates and uninstalls can easily be done. Here's a first glance at the new extension manager. It will of course change over time and over requirements but at the moment it looks like this:



It first lists all installed applications with their current status (update available etc.) and offers you options to either update or uninstall it. If the list gets longer over time, the filtering and sorting options above the list help you to find the applications you need. These filters will grow over time. Below the list of installed applications you find a list of all available ones. We might split this into two separate pages but at the moment this is how it looks like.
In the current example we have three sample applications that can be installed since they are following the new Extension API. The Extension API will be covered in one of my next blog entries, since it is subject of change at the moment. The video below demonstrates how easy it can be to install or uninstall an application.
All applications listed in the "Not installed" section are queried from the servers of the available Extension providers. More on the extension providers further below. The listed applications display the list metadata of the applications and more information if you click on the Application link. Then the detail page for the application is displayed which at the moment looks like this:



You may wonder where the metadata for the application comes from. Well, they are entered when you upload an extension in the providers web interface for extensions. This will be a matter of one of the next blog entries as well. As you can see you will be able to add user videos as well in order to present the capabilities of your application or extension.

Extension providers
In order to provide applications or extensions that can be listed in the Railo Administrator, you need to provide a webservice that obeys the API for providing extensions. It will be subject of one of our next blog entries as well. In the Railo administrator you can add several extension providers in addition to the predefined ones by entering the URL path to the providers webservice. Then all the applications or extensions hosted on that certain provider will be included in the application list as well. But more to that in a later entry.
The advantages for you as a developer or user are:
  • Have one place to look for applications
  • Installation procedure is always the same
  • Updates are very easy to manage
  • Railo can be easily extended

The advantages for you as a application provider are:
  • Have your application presented to all Railo Open Source users
  • Use the common API to plug in into the extension manager
  • Easy offer updates for your clients
  • Easy check preconditions on the target system

Type of applications/extensions
The type of applications that can be installed with the extension manager is not really specified. You could easily install applications like:
  • Coldbox
  • Fusebox
  • Mach-II
  • ModelGlue
  • ColdSpring
  • Transfer-ORM
  • Reactor
  • BlogCFC
  • MangoBlog
  • Lighthouse Pro
  • CFWebstore
  • GoSava CMS
  • Farcry CMS
  • Contens CMS
  • or any other application
There are no special requirements for the applications, except for the fact that they have to obey the installer API.
As for extensions we will extract several of the enterprise features and convert them into small extensions that can be installed after the Railo Open Source installation. Amongst others, the following extension packages will be offered from the Railo extension provider:
  • CFVIDEO, multimedia invocation
    CFVIDEOPLAYER will be included in the OS version by default
  • Amazon S3 resource
  • Database resource
  • SFTP resource
  • Cluster scope
  • Admin synchronization
  • and many more...
This is of course a major innovation in the CFML world and we think it can have a huge impact on the spreading and the distribution of applications. It should make life easier for users and for the application providers. Please let us know what you think of it.

Tags: Features · New release · Presentation · Railo 3.1 · Release

10 responses so far ↓

  • 1 Sean Schroeder // Sep 3, 2008 at 7:04 PM

    This is a great addition, can't wait to see it in action. One thing that might be nice would be a link to both the front-end of the app as well as the admin from the extension manager.
    Excellent work, fellas.
  • 2 Gert Franz // Sep 3, 2008 at 8:21 PM

    Sean,

    the links provided at the end of the installation are completely up to the developer of the extension. So you might add whatever you like, even a cfvideoplayer in order to display a "getting started" video.

    Gert
  • 3 Sean Schroeder // Sep 3, 2008 at 8:25 PM

    Awesome. Thanks, Gert. This is very exciting stuff.
  • 4 Sana // Sep 4, 2008 at 12:35 AM

    Gert this is really great stuff, I am happy as we do this in ColdBox to check for updates and ready to support this feature in railo.
  • 5 Gert Franz // Sep 4, 2008 at 2:07 PM

    If you have any things you would like to see in the extension manager, please comment them either here or in the corresponding ticket found here: https://jira.jboss.org/jira/browse/RAILO-35
    We are still collecting feature requests for the extension manager so please don't hesitate to comment accordingly.
  • 6 Peter Amiri // Sep 5, 2008 at 3:08 PM

    Great job guys. As Railo gets penetration in the shared hosting market, the ability to install and update applications with a single click is going to revolutionize the CFML landscape. At the moment several off the shelf hosting control panels offer similar functionality but are primarily limited to php apps. The Extension Manager could potentially level the playing field.
  • 7 Jeff Gladnick // Sep 9, 2008 at 8:51 AM

    This is just plain beautiful
  • 8 Hansjoerg // Nov 2, 2008 at 8:52 PM

    So transfer ORM is now running on railo?
  • 9 Gert Franz // Nov 2, 2008 at 9:32 PM

    Well, yes. Our tests showed that the test suite and the samples work. If you find any problems with it, we would be happy to know and solve them.

    Gert
  • 10 James // Mar 5, 2009 at 12:48 AM

    I'm noticing that I'm not able to install ColdSpring from the extensions wizard...
    is there something i should know about?

Leave a Comment

Leave this field empty: