The Top 5 New Features in eXo Cloud IDE
Four months ago we launched cloud-ide.com, the first free online service eXo has ever provided, and its success has been incredible. Our goal: to be the preferred path for developers to Platform-as-a-Service (PaaS) deployments.
Today we are unveiling a major upgrade to the service, with more than 75 new features. I would like to show you my top 5 favorites.
1) Git Support
Git popularity is huge and more and more projects use it to manage their source code. Even some PaaS, such as Heroku or Openshift Express, use it as an application deployment paradigm.
Supporting Git in eXo Cloud IDE was clearly our number 1 priority, and we focused on improving the integration we announced in May at Red Hat Summit. Now we support most of the protocol commands, all natively integrated within eXo Cloud IDE.
As you can see in the first screenshot, we support many Git commands that are exposed in a new Git menu in the IDE. It is possible to init or clone a remote repository, add a file to the index, create a branch, add remote repositories and push the code to different branches on different remote repositories! And at every step of the way, you can view the current status of your repo.
To be able to support private Git repositories, and to communicate with them using the SSH protocol, we have also added the capability to create private and public keys for dedicated domains, and the ability to upload existing private keys and bind them to a domain. In the next screenshots, you can see that I have created 2 private/public keys for the Heroku and GitHub domains, as well as uploaded 2 private keys for Red Hat OpenShift and CloudBees.
It is also possible to browse the version history of Git repositories, see the changes and who made them!
2) OpenShift and Heroku Support
The primary goal of eXo Cloud IDE is to be able to develop apps in the cloud, then deploy them to the different PaaS available in the market. With this upgrade, we now support 3 different PaaS, each that has a different deployment model.
For Heroku and OpenShift, we use some REST commands from the PaaS menu (see the next screenshot) to create applications bound to a Git repository.
Then we use the Git menu to clone and push modifications to this remote repository, such as the OpenShift repo shown in the next screenshot.
We have announced our Red Hat OpenShift support at Red Hat Summit last month in Boston. You can see the video demonstrating how to deploy to OpenShift here.
3) CloudBees Support
For deploying Java apps to CloudBees RUN@cloud PaaS, we only use Git and the CloudBees DEV@cloud service.
A developer first has to create a Java project in eXo Cloud IDE. Then he has to init that repository and push the code to the CloudBees Git repository (after having registered its public SSH key in the service). From here, we leverage CloudBees DEV@cloud, which uses Maven and Jenkins to manage both the build of the Java WAR artifacts and the deployment to CloudBees RUN@cloud PaaS.
4) Java / JSP support
Java is the language of choice for most eXo developers. In the first version of Cloud IDE a developer could write some REST API in Java using the JAX-RS specification. He could also store structured data inside a Java Content Repository (JCR).
With this upgrade, we now also support standard Java classes (Servlets or POJOs) and Java Server Pages (JSP).
As before, every file has some color syntaxing, code completion and outline. The next screenshot shows those features for a JSP page.
Once the Java and JSP have been written it is possible to deploy them to CloudBees DEV@cloud, which manages the build (it can also manage any unit tests that you add in the Cloud IDE) and the deployment of the generated WAR.
As you can see, you can now create, test and deploy standard Java projects directly in the Cloud.
5) Ruby and PHP Support
With the launch of Red Hat OpenShift Express, we announced support for the Ruby language within eXo Cloud IDE. A developer can quickly create a Ruby file; the IDE provides some color syntaxing, outline and auto completion. A Ruby project can then be deployed to either OpenShift or Heroku, as described previously.
Red Hat OpenShift also supports the PHP language, so it was a great opportunity for us to add support for this dynamic language to our catalog. And of course, we have some color syntaxing, outline and auto completion.
These are my top 5 favorite new features. I hope you will check out the new and improved Cloud IDE and give us your feedback!
For now, we’re getting back to work – this is just the beginning of a new era.