Intro to Eclipse Che, by Tyler Jewell
Transcript of Intro to Eclipse Che, by Tyler Jewell
Reality: Wikis For Developer Workspace ConfigDjango and
PHP with Eclipse
Tomcat with IntelliJ
Compile and install
Ruby
Mozilla Webmaker
with Vagrant
Continuous delivery demands repeatability - but developer workspace configuration is individual & complex.
Eclipse Che is a cloud IDE and SDK for creating cloud IDE extensions.
Che ships with 55 extensions for Java, JavaScript, AngularJS, git, and Docker.
Assemble your own Che extensions to create distributed developer services accessible in a browser.
Eclipse Che Codenvy Platform Distribution
Plu
g-In
Plu
g-In
Plu
g-In
Plu
g-In
Plu
g-In
IDE + SDK
Elastic Docker Node Pool
Code
Developer Microservice Plug-Ins
Build Run Source Query
Source
External Integration Plug-Ins
CI PaaS Issue Identity
Languages
Eclipse CheEditors Projects
OperationsHA Tenancy Metering Security
API CLI Browser Mobile
Automation ManagementFactories Contrib Admin Analytics
Eclipse Che & Codenvy IP Relationship
Installation
update.codenvy.comNotices Accounts Binaries Installers
OfferingsSaaS @ On-Prem @ Managed @
codenvy.com Your Datacenter Any Datacenter
1-Node n-Node CentOS 6 CentOS 7
Cloud MarketplacesIBM AWS Google ...
Kernel
java javascript c++
maven gradle 55+
Your Extensions
Che Extensions
project builder
REST APIrunner
auth factory analytics
Codenvy Makes Development Boundless
Machines Your SystemsDevelopers Microservices Nodes
Browser IDE
CLI
Eclipse
IntelliJ
Sublime Text
Emacs
vi
Co
den
vy T
oo
lsY
ou
r T
oo
ls
Developer Workspace Cloud
syntax
refactor
clone
build
package
run
debug
query
merge
compile
Middleware
APIs
Code Repo
Artifact Repo
CI / CD
Issue Mgmt
LDAP
Targets
To
ol C
hain
Databases
PaaS
Workflow
contribute
pull request
corporate
hack
Getting Started with Che
Source: github.com/codenvy/sdkgithub.com/codenvy/assembly-che
Developer Mailing List: [email protected] Meetings: wiki.eclipse.org/cheIRC: #eclipseche (routes to slack)
Note: Currently 1000 issues open on Che, hosted at Codenvy’s private Jira. We are working to export into bugzilla.
Che SDK Maven Modules
assembly-platform-api: Local vs. Distributed MocksJava client / DTO / GINServer-side REST API
assembly-sdk: Tomcat bundling of Che
assembly-ide: Main GWT application of the IDE/src/main/resources/com/codenvy/ide/ide.gwt.xml
Che IDE Extension Development
@Inject Service Mgrs: Types, wizards, menus:
GWT: GWT MVP Model Super Dev Mode JS library integration Author in any IDE
Che IDE Extension
@Singleton
public class AngularJSProjectType extends ProjectType {
public AngularJSProjectType() {
super("AngularJS", "AngularJS Project", true, false);
setDefaultRunner("system:/javascript/webapp/grunt");
addRunnerCategories(Arrays.asList(RunnerCategory.JAVASCRIPT.toString()));
}
}
@Singleton
@Extension(title = "AngularJS")
public class AngularJsExtension extends JsExtension {
@Inject
public AngularJsExtension(IconRegistry iconRegistry, AngularJSResources resources) {
super(Const.ANGULAR_JS_ID, iconRegistry, resources);
}
}
plugin-angularjs/core/client/src/main/java/com/codenvy/plugin/angularjs/core/client/
plugin-angularjs/core/server/src/main/java/com/codenvy/plugin/angularjs/core/server/project/type
Roadmap
Q1 ‘15
Che Codenvy
Q2’ 15
IDE invokable actions
JavaDoc in editorJava jump to defiitionJava package viewer
Factory into named workspace
ProjectType abstractionSDK on WindowsMulti-runner panelImport from file system
Machine APICommand panelSVN pluginGradle plug-in
Deployment abstractionChromium packagingFactory into Che
GitHub pull requestContribution from Factory
Multi-node install manager
Factory editor in UDSelective git commit
Meter-based pricing & ccBitBucket pull request
LDAP integration for On-PremAdd / remove runners via IMMachines & Commands
On-Prem backup / restoreDockerHub integrationVisual merge of pull request
Hot deploy Che extensions
About Che
2009
Che + Codenvy CompanyUsers
2010
20112012
2013
2014
2015
cloud-ide.com launched
20k
60k
109k
Begin designing SDK
Begin Eclipse Che
Win WSO2, eXo SDK partners
Gennady, Benjamin, Tyler meet
Codenvy incorporated
45 HC in USA, France, Ukraine
Intuit: 1st enterprise account1st on-prem installation
$8M Series A
Dozen OSS projects
2016
135k 374k
Projects
40k
100k
303k
What is Cloud Development?
Objective: Fully hosted, no install automation and governance of developer and development activities.
Hosted Source Code
Cloud IDE CI / CD Issue Management
Governance: Automation, Policies, Analytics
chef + vagrant + docker
Environment
BuilderCompiler Unit Test Packager
Machine
APIsApp
ServersDatabases
BuilderCompiler Unit Test Packager
Machine
APIsApp
ServersDatabases
Workbench
IDE Plug-Ins Syntax
SCM Issue Deployer
BuilderCompiler Unit Test Packager
Machine
APIsApp
ServersDatabases
Workbench
IDE Plug-Ins Syntax
SCM Issue Deployer
Workflow Policies
per developer DIY + environment
Workspace Governance
manual enforcement + workspace
The Cloud IDE Spectrum
Containers and wikis are not encompassing solutions.
Cloud IDEs Distribute Developer ServicesMachines Your SystemsDevelopers Microservices Nodes
orion
cli
eclipse
intellij
sublime
emacs
vi
EC
D C
lien
tsD
eskt
op
Clie
nts
Development Layering (Raw, RAD, 4GL): dirigible
syntax
refactor
clone
build
package
run
debug
query
merge
compile
Middleware
APIs
Code Repo
Artifact Repo
CI / CD
Issue Mgmt
LDAP
Targets
To
ol C
hain
Databases
PaaS
Workflow
contribute
pull request
corporate
hackche
REST API or flux
ECD Alignment
Objectives: Fully integrated solutionCommon API & object vernacularEliminate IP overlapSupport more IDE clientsRecruit additional ECD projects
Roadmap: Continued advancement of each comp Orion + Flux binding Orion adapter for CheDirigible built on Che
ECD Sessions This Week
Tuesday, March 10th, 3pmSession: Introduction to Eclipse Che
Tuesday, March 10th, 2:15pmSession: Git it Done (Orion)
Tuesday, March 10th, 4:15pmSession: Building Orion Plug-Ins
Tuesday, March 10th, 7pmHackathon (Orion + Che)
Wednesday, March 11th, 10:30amSession: JavaScript Language Tools in Orion
Wednesday, March 11th, 1:30pmSession Adapting JDT to the Cloud (Orion + Flux)
Thursday, March 12th, 11:15amSession: Extending Eclipse Flux