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

Eclipse DROPS

Friday, January 21, 2022 - 11:02 by nicolas vannson
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.
Project
Parent Project
Proposal State
Created
Background

Different technologies are developed at different speeds on different platforms, each team with their own toolchain and home-grown scripts. To avoid bottlenecks, DevOps tools must tie all this specific technology together – including the legacy. An efficient DevOps solution should be platform-agnostic, orchestrating a continuous value stream from business owner to end-user, with release visibility and control across all teams, technologies and tools.

ECLIPSE DROPS is a highly scalable solution for Application Release Orchestration, simplifying the deployment, synchronization and tracking of applications in today’s heterogeneous multi-platform and multi-cloud environments. Both applications and data are managed in sync in order to maximize automation of releases and guarantee the reliability of applications in production.

DROPS was originally designed in 2009 by ARCAD Software to respond to a major market need around the secured deployment of composite applications, often comprising ‘legacy’ back end and database together with Web-based front-end.  As provider of the leading DevOps stack for the IBM i platform, ARCAD Software first addressed growing needs within its own customer base: namely, to automate and synchronize the deployment of interdependent back-end and front-end software components, including database upgrades and critical data values, in an enterprise DevOps pipeline based on industry standards.

As regards release management, our main strategy has always been to remain platform agnostic and focus on the ‘orchestration’ of deployments rather than specialize in any particular software development technology. Even if multiple vendors have emerged and in some cases been more relevant in certain dedicated domains, over time, the high-level design of DROPS and its platform agnostic design becomes a key argument for IT departments seeking a single, common deployment solution across all their technologies and platforms.

A key characteristic of the Application Release Orchestration (ARO)market is that each Ops  team has its own specific definition and requirements. The needs of a given Ops team will depend on enterprise expectations, their existing organization and technical heritage. Even at an enterprise level, Application Release Orchestration is an ever-changing world that must adapt to integrate new platforms, communicate with new solutions and commit to delivering the same level of quality to the end-user.

Scope

Eclipse DROPS delivers to Ops teams a single, centralized and open-source solution for managing, building and deploying applications that is wholly independent of the underlying technology being deployed.

Key components of the project include:

  • Eclipse DROPS Server - based on REST APIs communication and built on Equinox – the DROPS server:
    • Manages all the data, 
    • Supports all the configuration actions (Repositories, Users, Rights and Roles Schema, etc)
    • Executes, plans, delegates or monitors deployment operations
    • Interacts with external provisioning or instantiation solutions
    • Provides all the information required to generate statistics and reports
    • Proposes multiple extension mechanisms to interact with instantiation and provisioning solutions, external artifact repositories or technical target services.
  • The RCP-based Eclipse DROPS Studio that provides a rich GUI to manage all configurations and operations
  • The Eclipse DROPS-Agent- based on REST APIs communication, the agent is optional and used to remotely execute the deployment activities
  • A set of Out-of-the-Box starter scripts that could be used to define deployment processes
Description

DevOps is the industry response to the challenge of application availability. It helps businesses respond rapidly to market changes, accelerating the delivery of high-quality software updates to users. It relies on continuous integration, test and delivery to reduce risk and obtain regular and rapid feedback. But in practice, IT teams face considerable barriers to the “continuous” model and many struggle to deliver against objectives and deploy DevOps principles across the enterprise at scale.  Designed to meet the needs of a modern hybrid, enterprise environment, the Eclipse DROPS CE project delivers an open platform for managing, designing, executing and monitoring secured deployment processes and pipelines. The goal of this project is to support a wide range of application release deployment activities on multiple target services regardless of their underlying technology.

Why Here?

From the outset, the Eclipse DROPS Project is strongly based on the Eclipse technology (e.g., Equinox, EMF, Graphiti, RCP, RAP, JETTY),  so when releasing DROPS as open-source it is only natural that we seek to repay the Eclipse community with our work. Another key reason is that the Eclipse Foundation provides the highly professional services and visibility needed  to make the Eclipse DROPS project a true standard in the Application Release Orchestration domain.

Project Scheduling
  • The initial contribution is expected by Q1 2023
  • The first build may be expected by Q2 2023
  • The release cycle for Eclipse DROPS is planned every 3 months
Future Work

The key work ahead must be community building. This includes the creation of:

  • A dedicated user area offering getting started guides, training guides, and use case focused tutorials (How to Cards). 
  • A developer area offering materials such as architecture overviews, API documentation, and documentation on extension mechanisms.

In addition to community development, the main technical improvements in the short term are focused on

  • Interoperability with major cloud players with respect to instantiation and provisioning processes.
  • The ability of cloud service providers to offer Eclipse DROPS As A Service (multi-tenant mode and high availability).
Description

DevOps is the industry response to the challenge of application availability. It helps businesses respond rapidly to market changes, accelerating the delivery of high-quality software updates to users. It relies on continuous integration, test and delivery to reduce risk and obtain regular and rapid feedback. But in practice, IT teams face considerable barriers to the “continuous” model and many struggle to deliver against objectives and deploy DevOps principles across the enterprise at scale.  Designed to meet the needs of a modern hybrid, enterprise environment, the Eclipse DROPS project delivers an open platform for managing, designing, executing and monitoring secured deployment processes and pipelines. The goal of this project is to support a wide range of application release deployment activities on multiple target services regardless of their underlying technology.

Initial Contribution

ARCAD Software plans to donate the source code of the DROPS Solution, a mature Application Release Orchestration Platform, to form the initial basis of Eclipse DROPS

Source Repository Type