Codenvy’s Developer Environment Cloud (CDEC) allows you to provision, share, and scale developer environments without the need for manual configuration.
Today most development environments are manually installed, configured and maintained on general-purpose servers or VMs. Unfortunately the nature of development means that those environments are frequently changing. The task of updating environments typically falls to the developer (and when it does fall to IT often the change process and time delays involved mean the developer does it themselves to speed things up). The frequency with which environments change, and the effort required to make those manual configuration changes is why a recent survey found that the average developer spends 13 hours a week installing, changing or maintaining their developer environment. That’s more than a month a year of time spent not developing…
At Codenvy we wanted to create a platform that would remove the need for developers to configure environments ever again. This meant considering the automation and orchestration of developer actions, such as editing, building, running, debugging, and deployment as first-class citizens, not just workloads on a general-purpose VM (you can read more about how Codenvy works on our site).
To help make environments lightweight, easy to share and quick to build out we use Docker as the execution environment for our builders and runners. Docker provides a lightweight container technology that boots quickly, requires low overhead, and whose contents can be specified by a recipe file:
We expose these recipe files into the tool itself so that each user on each project can create recipes of containers that they need to run their application. This allows you to choose between the many built-in recipes and images we offer or create a completely new recipe for your specialized needs.
We have included sections in this doc that outline how to use our pre-built environments (a great place to start) and that show you how to create a custom environment from the ground up or based on our recipes.
We encourage you to play with this capability – it’s fun and will allow you to completely tailor your Codenvy Developer Environments to your tools and needs.
You can continue reading the rest of this chapter where we outline the various usage scenarios for CDEC and how you might use the power of no-configuration developer environments. Or, if you want to jump right in you can read the Getting Started chapter.
What Would the World Look Like If You Didn’t Have to Configure Developer Environments?
Online: Instant Environment
Create projects with APIs, CLI, and desktop or browser IDEs. Complete, no-installation developer environment cloud to code, build, test, debug and deploy any app.
Online: Instant Hacking
Work on projects while embedded in other products and sites with Codenvy environments that load without authentication or user configuration.
Free yourself from your machine’s constraints. Launch an infinite number of builders and runners, limited only by your account’s RAM and compute to shorten builds and debugging.
Share a workspace collaboratively and securely with others, thereby sharing its resources such as files, RAM (for runs), storage, and bandwidth. There is a last write wins policy when collaborating on common files with Google Docs-style multi-cursor editing coming soon.
Upgrade runners with Always-On to get 24/7 availability, even when you are not logged on. The runner is continuously accessible by anyone with the URL.
Share an organization for your business allowing administrators to create multiple workspaces. Apply role-based access control and resource policies for each workspace.
Online / Offline: SCM Link
Initialize a git repository within your remote Codenvy project and clone it to your desktop for offline usage. Add, commit, and push changes back to the remote git repository when online.
Online / Offline: Sync Points
Create a local sync of a remote Codenvy project with the CLI. Use any desktop tools or IDEs to edit, build or run the project locally. The local project is synchronized with the remote sync point when connected.
Online / Offline: IDE Plug-Ins
Use our Eclipse plug-in (IntelliJ soon) to synchronize your desktop IDE projects directly with your remote Codenvy projects.
Offline: Local Clone
Make a non-sync’d copy of a remote Codenvy project with the CLI. Use your favorite desktop tools to edit, build or run the project offline and manually push changes back to Codenvy later.
Offline: Eclipse Che Local
Codenvy is Eclipse Che! Run the free and open Eclipse Che as a desktop app, disconnected from the cloud. Run Che to get a free, fast and extensible desktop IDE.
Private Cloud: Developer Cloud
Install a single node Codenvy Developer Environment Cloud on premises resulting in a private system to manage populations of developers, resources, workspaces, projects, users and accounts.
Private Cloud: Horizontal Scale
Install CDEC on premises with scalability across as many physical nodes you can muster! Access firewalled resources (databases, etc.), connect your LDAP, and quarantine group access. Bi-weekly updates from Codenvy are installed on schedules you set to keep the system current.
Private Cloud: Data Geek
Benchmark performance, track usage, and quantify adoption, engagement, and abandonment with embedded analytics, developer intelligence, and reports.
Tool Development: Micro Services
Create new experiences and clients by tapping into over 75 REST APIs that represent the full range of developer functions as atomics: from project through builders through instance management. Our IDE, dashboard, CLI, and Eclipse plug-in all reuse the same services that are available to your organization.
Tool Development: Create New Cloud Tools
Everything within Codenvy is a plug-in, and can be extended through extension creation. Build entirely new solutions deployed within Eclipse Che or modify Codenvy functionality, whether it is client- or server-side. The only limits are those imposed by your imagination.
Our architecture is modular and is designed to be fast, secure and extensible for everyone. However, to make the most of CDEC you can choose to use additional features through a paid subscription:
- Additional RAM: More RAM not only allows you to run larger build and run environments, it allows you to run more of them simultaneously. With a premium subscription you get a dedicated builder and runner and the ability to have both running simultaneously without stealing resources from each other. With more RAM you can even run multiple application environments simultaneously – perfect for testing cross-platform application behavior or evaluating different infrastructure options for your application.
- Organization Add-On: The organization add-on allow you to create multiple workspaces within an account. This is ideal of organizations that are running multiple projects simultaneously and want the freedom to set group membership and privacy / access policies for different workspaces separately.
- Always-On Runners: By default a runner (which contains the running application environment) has a timeout dictated by your subscription plan. At the end of that timeout the environment is shut down by the Codenvy elves. However, you can choose to use an Always-On runner which removes the timeout altogether and keeps the application environment always live. This is especially useful for larger, more complex applications or teams who are doing development or testing around the clock.
Pricing and packaging information can be found on our website on the pricing pages for the Codenvy Developer Environment Cloud.
Additionally, Codenvy is available in an on-premises private cloud version. The on-premises installation is useful for enterprises that have identity or resource restrictions behind the firewall, or for other software vendors that intend to create their own developer environment clouds as branded solutions, operating disconnected from Codenvy itself. If you want to explore more about the on-premises version of CDEC visit our website or the on-premises docs.