Skip to main content
  • Log in
  • Manage Cookies
projects.eclipse.org
Download
  • Projects
  • Working Groups
  • Members
  • Community
    • Marketplace
    • Events
    • Planet Eclipse
    • Newsletter
    • Videos
    • Blogs
  • Participate
    • Report a Bug
    • Forums
    • Mailing Lists
    • Wiki
    • IRC
    • Research
  • Eclipse IDE
    • Download
    • Learn More
    • Documentation
    • Getting Started / Support
    • How to Contribute
    • IDE and Tools
    • Newcomer Forum
  • More
      • Community

      • Marketplace
      • Events
      • Planet Eclipse
      • Newsletter
      • Videos
      • Blogs
      • Participate

      • Report a Bug
      • Forums
      • Mailing Lists
      • Wiki
      • IRC
      • Research
      • Eclipse IDE

      • Download
      • Learn More
      • Documentation
      • Getting Started / Support
      • How to Contribute
      • IDE and Tools
      • Newcomer Forum
    • Search

  1. Home
  2. Projects
  3. Eclipse Cloud Development
  4. Eclipse Tools for Cloud...
  5. Eclipse Tools for Cloud Foundry
×

Informative message

This proposal has been approved and the Eclipse Tools for Cloud Foundry project has been created.
Visit the project page for the latest information and development.

Go to Project

Eclipse Tools for Cloud Foundry

Basics
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Parent Project: 
Eclipse Cloud Development
Background: 

Cloud Foundry (CF) is an open platform as a service (PaaS) that provides a choice of clouds, runtime frameworks, and application services. It is an open source project with an active and growing community that contributes and supports it, and includes many corporations and organizations like Pivotal, IBM, HP, EMC, Cisco, and SAP.

The Cloud Foundry Tools project was started as a collaboration between Pivotal and IBM, and it is a framework for Eclipse that contains common, reusable application deployment, scaling and service features for Cloud Foundry, and allows third-party vendors to contribute their own Cloud Foundry-based definitions where users can deploy their applications from within their Eclipse IDE.

Scope: 

In Scope:

The scope of this project is to help users deploy and test their applications on Cloud Foundry without leaving their Eclipse integrated development environment. Instead of separately running builds and using the Cloud Foundry command line tool to deploy, scale, or configure applications on Cloud Foundry, developers are able to deploy application projects directly from within their Eclipse IDE, see the running applications on CF, bind or unbind services, scale them up or down, and debug them on CF.

Out of Scope:

This project does not deal with the development of Cloud Foundry as a platform itself and does not provide tooling to assist with that. Working on the CF open-source code itself is unrelated to this project, which focuses solely on users working with the Eclipse IDE and targeting a Cloud Foundry platform where they can deploy and test their applications.

Description: 

Cloud Foundry Tools provide an extensible framework and common UI to deploy applications to different Cloud Foundry targets, and it is a framework that closely integrates with Web Tools Platform (WTP) and Eclipse. It allows application scaling and services management from the same Eclipse-based IDE where applications are developed. Applications can also be debugged on Cloud Foundry using the built-in Eclipse debugger. This makes it very convenient for developers to work on applications running on CF.

The Cloud Foundry Tools are not specialized to just work with a specific Cloud Foundry platform. It allows users to set various Cloud Foundry targets, may it be public Cloud Foundry-based platforms like Pivotal Web Services, IBM Bluemix, or others.

Why Here?: 

Cloud Foundry Tools are a framework that integrates with WTP and uses existing Eclipse UI for application deployment. Cloud Foundry Tools are accessible from existing Eclipse views like the Servers view, and allows application deployment to CF through common Eclipse wizards, like the New Server and Run On Server wizards. It also integrates with the Eclipse Console, streaming application logs from CF to the user, and presents a view of files in CF through the Remote Systems view.

In addition the tool has gained a degree of maturity with various release cycles as an open source project since 2012. It is being actively developed and maintained by two experienced Eclipse development teams, Spring Tool Suite on the Pivotal side, and WTP on IBM. The project also receives additional pull requests from development teams at other organizations.

Being an extensible, open source framework, where third parties can contribute their own CF target definitions through the Cloud Foundry Tools branding extension point, it is an ideal common CF deployment tool for Eclipse.

Its inclusion as an Eclipse project and eventual end-goal of adding it to the Eclipse release train will greatly enhance Eclipse as a primary application development environment for Cloud Foundry.

Licenses: 
Apache License, Version 2.0
Eclipse Public License 1.0
Legal Issues: 

This project will be distributed under both the Apache License 2.0 and the Eclipse Public License. The current version of the project (at the Cloud Foundry Foundation) is already using the Apache License 2.0 and has contributors and adopters that are using it via the Apache License. To avoid confusion and not force the existing community to change the license immediately, a dual license would be ideal for the project under Apache License 2.0 as well as the Eclipse Public License.

Project Scheduling: 

The project already shipped a number of releases in the past and uses an established release and development cycle of 6 weeks. This process will continue once the project is at Eclipse.

As well as becoming an Eclipse project, our intention is to get Cloud Foundry Tools onto the Eclipse release train, ideally in the Eclipse 4.5 (Mars) Service Refresh 1 (SR1) timeframe.

The following is a general roadmap for the next 12 months:

  • Begin migration from Cloud Foundry to Eclipse Project after version 1.8.3 of Cloud Foundry Tools are released after mid-June 2015.
  • The current code base contains vendor specific definitions for Pivotal Web Services. Scope refactoring work to define a core framework and move vendor specific definitions into extensions and determine how much of this is necessary.
  • Cloud Foundry itself experiences frequent changes. In particular it may experience changes with the Cloud Controller API, so compatibility at the tools level, with possibly some enhancements already in place to better handle version incompatibilities.
  • Adopt WTP changes that allows users to better discover vendor specific downloadables into the core framework from existing WTP user interfaces. This is future work that may be available before the next Eclipse GA in 2016.
Future Work: 

The first step is to turn Cloud Foundry Tools into an Eclipse project, and the existing code base will be migrated “as is” with the Pivotal Web Services definition. The second step is to include it in the Eclipse release train in SR1, which is the end-goal of this migration to the Eclipse Foundation. Discussions are ongoing on whether to refactor the vendor definitions out of the tool and create a pure core framework, with possibly a vendor-neutral definition example, or do the refactoring after it is part of the release train. Past experiences with WTP indicate that including vendor definitions may be problematic for maintenance. An ideal scenario is to have a pure core framework and vendor specific definitions hosted externally, but discoverable through the framework UI. Current work is being done with WTP to allow this discovery and better support vendor defined Cloud Foundry targets outside of a pure Cloud Foundry Tools core framework.

People
Project Leads: 
N Singh
Elson Yuen
Committers: 
Nieraj Singh
Elson Yuen
Keith Chong
Steven Hung
Jonathan West
Ben Chen
Orlando Rincon
Mentors: 
Mike Wilson
Interested Parties: 

Pivotal

IBM

HP

Huawei

Source Code
Initial Contribution: 

The initial contribution is been donated by the Cloud Foundry Foundation with Pivotal and IBM working on the project.

The initial contribution is a stable codebase and is already used in production.

Source Repository Type: 
GitHub
Source Repositories: 
https://github.com/cloudfoundry/eclipse-integration-cloudfoundry
  • Sign in to post comments.

Project Links

  • Website
Eclipse Tools for Cloud Foundry

Related Projects

Related Projects:

  • Eclipse Web Tools Platform Project
    • Eclipse Server Tools

Project Hierarchy:

  • Eclipse Cloud Development
  • Eclipse Tools for Cloud Foundry

Tags

Technology Types
  • Tools
Build Technologies
Other Tags
  • cloud
  • cloud foundry
  • development tools
  • remote tools

Eclipse Foundation

  • About Us
  • Contact Us
  • Sponsor
  • Members
  • Governance
  • Code of Conduct
  • Logo and Artwork
  • Board of Directors
  • Careers

Legal

  • Privacy Policy
  • Terms of Use
  • Copyright Agent
  • Eclipse Public License
  • Legal Resources

Useful Links

  • Report a Bug
  • Documentation
  • How to Contribute
  • Mailing Lists
  • Forums
  • Marketplace

Other

  • IDE and Tools
  • Projects
  • Working Groups
  • Research@Eclipse
  • Report a Vulnerability
  • Service Status

Copyright © Eclipse Foundation. All Rights Reserved.

Back to the top