CSS: where do we want to go? Gabriele Carcassi Contributions from: Gabriele Carcassi, Kunal Shroff – BNL Jan Hatje – DESY Kay Kasemir – ORNL.

Slides:



Advertisements
Similar presentations
Websydian products.
Advertisements

Control System Studio (CSS)
Jenkins User Conference San Francisco, Sept #jenkinsconf Business Process Model & Notation (BPMN) Workflows in Jenkins Max Spring Cisco
Managed by UT-Battelle for the Department of Energy Xihui Chen, Kay Kasemir ORNL/SNS April 2013 at IHEP Control System Studio Setup - Hierarchical.
E4 July 2010 Move | © 2010 Eclipse Contributors, made available under the EPL v1.0E4 July 2010 Move | © 2010 Eclipse Contributors, made available under.
CSS Developments at BNL / NSLS-II Gabriele Carcassi Feb
AccelUtils Gabriele Carcassi, Kunal Shroff – BNL Eric Berryman, Robert Gaul – MSU Ralph Lange – HZB.
Java development infrastructure at FMI Pekka Rantala FMI.
JCA 2.0 Eric. Boucher – APS EPICS Collaboration Meeting - June 18-20, 2003.
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of Creating Eclipse plug-ins.
© 2006, Cognizant Technology Solutions. All Rights Reserved. The information contained herein is subject to change without notice. Automation – How to.
Managed by UT-Battelle for the Department of Energy Kay Kasemir, Xihui Chen ORNL/SNS 2012, April at SLAC Eclipse Products, Features, Plugins,
Version Control with Subversion. What is Version Control Good For? Maintaining project/file history - so you don’t have to worry about it Managing collaboration.
Control System Studio (CSS)‏ Kunal Shroff EPICS Training Meeting 07/10/2010.
Workshop Report Berryman - Carcassi - Kasmir - Shroff.
Tools Strategy for BNL and MSU Gabriele Carcassi - BNL Eric Berryman - MSU.
Introduction to Android. Android as a system, is a java based operating system that runs on the Linux kernel. The system is very lightweight and full.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS 2012, April at SLAC Control System Studio - Introduction.
Introduction to Eclipse and Eclipse RCP Kenneth Evans, Jr. Presented at the EPICS Collaboration Meeting June 13, 2006 Argonne National Laboratory, Argonne,
Deutsches Elektronen-Synchrotron DESY Helmholtz Association of German Research Centres Hamburg, Germany The European X-Ray Laser Project.
Jan Hatje, DESY CSS ITER March 2009: Technology and Interfaces XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser 1 CSS – Control.
Control System Studio (CSS) Overview Kay Kasemir, July 2009.
Copyright © 2015 – Curt Hill Version Control Systems Why use? What systems? What functions?
Sage ACT! 2013 SDK Update Brian P. Mowka March 23, 2012 Template date: October 2010.
Prachi Chitnis.  The CSS feel  SDS – Synoptic Display Studio  ADL Converter  PV table, Probe…
CSS Linux and Eclipse 1. CSS Account Log into your CSS account with the NoMachine client (NX client) 2.
Copyright © IBM Corp., All rights reserved. From SWT to RCP: Experiences implementing RSSOwl 2.0 with RCP Benjamin Pasero.
9/2/ CS171 -Math & Computer Science Department at Emory University.
GumTree Development Environment Setup Windows Only Compatible with Eclipse 3.2 M3 (Last update: 16/11/05)
© 2002 IBM Corporation Confidential | Date | Other Information, if necessary June, 2011 Made available under the Eclipse Public License v Mobile.
CSS – Control System Studio
XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser Matthias Clausen, DESY XFEL Refrigerator Controls – April CSS Introduction 2 nd.
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Stephen Childs Trinity College Dublin &
Matthias Clausen, DESY CSS GSI Feb. 2009: Synoptic Display Studio and ArchiveBrowser XFEL The European X-Ray Laser Project X-Ray Free-Electron.
Managed by UT-Battelle for the Department of Energy Kay Kasemir, Xihui Chen ORNL/SNS April Control System Studio Training - Development.
Managed by UT-Battelle for the Department of Energy CSS Update Matthias Clausen, Helge Rickens, Jan Hatje and DESY Delphy Armstrong, Xihui Chen,
CSS Build and Update System Kunal Shroff EPICS Spring Collaboration Meeting, June 2010 Aix-en-Provence.
Paul Chu SLAC App. 10/14/ SLAC (LCLS) Application Plans P. Chu for SLAC High-Level Application Team.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS 2012, January 9-12 at NSRRC, Taiwan Control System Studio Training.
Eclipse Rich Client Platform Discover the Anatomy of an Application Based On Eclipse Wayne Beaton Evangelist, Eclipse Foundation.
Gradle and Eclipse RCP Ned Twigg
Jan Hatje, DESY CSS GSI Feb. 2009: Technology and Interfaces XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser 1 CSS – Control.
This material is based upon work supported by the U.S. Department of Energy Office of Science under Cooperative Agreement DE-SC , the State of Michigan.
Jan Hatje, DESY CSS – Control System Studio EPICS collaboration meeting CSS – Control System Studio Update EPICS collaboration meeting 2008 Shanghai.
Introduction 1 Lars Vogel 4/22/2009.  Who am I?  Eclipse as a platform  What is Eclipse RCP?  Extension Points / Extensions  Equinox  SWT & JFace.
Applications Kay Kasemir ORNL/SNS Using Information and pictures from Matthias Clausen, Jan Hatje, and Helge Rickens (DESY) October 2007.
Version Control and SVN ECE 297. Why Do We Need Version Control?
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS Jan Control System Studio Training - Extension Points:
Developing GUIs With the Eclipse Visual Editor, SWT Edition David Gallardo.
BOY, A Modern Graphical Operator Interface Editor and Runtime Xihui Chen, Kay Kasemir RAD Control Group.
CSS Build and Update System Kunal Shroff EPICS Fall Collaboration Meeting, June 2010 Aix-en-Provence.
Introduction to Control System Studio (CSS) Kay Kasemir, Kunal Shroff EPICS Fall Collaboration Meeting, October 2011 PSI.
Objectives Update IDE used to develop AWIPS2 plugins  Learn about API Baseline/Target Platform  Configure formatter and code templates.
ECLIPSE RICH CLIENT PLATFORM Part 1 Introduction.
This material is based upon work supported by the U.S. Department of Energy Office of Science under Cooperative Agreement DE-SC , the State of Michigan.
XNAT 1.7: Getting Started 6 June, Introduction In this presentation we’ll discuss:  Features and functions in XNAT 1.7  Requirements  Installing.
This material is based upon work supported by the U.S. Department of Energy Office of Science under Cooperative Agreement DE-SC , the State of Michigan.
AccelUtils Gabriele Carcassi, Kunal Shroff – BNL
Agenda:- DevOps Tools Chef Jenkins Puppet Apache Ant Apache Maven Logstash Docker New Relic Gradle Git.
Open-O Integration Project Introduction
Proposed IT Infrastructure for TOP OS project
Goals Give you a feeling of what Eclipse is.
Brian Leonard ブライアン レオナルド
Control System Studio (CSS)
Sr. Developer Cloud System - Architecture
Kunal Shroff EPICS Spring Collaboration Meeting, October 2010 BNL
Kay Kasemir, ORNL/SNS Kunal Shroff
Presentation transcript:

CSS: where do we want to go? Gabriele Carcassi Contributions from: Gabriele Carcassi, Kunal Shroff – BNL Jan Hatje – DESY Kay Kasemir – ORNL

Last couple of years of CSS 2011/5/ Alluring Albatross 2012/2/ Ballistic Beaver 2010/7 Mercurial repository 2010/7 SourceForge 2010/8 Continuous build

Pre 3.0 Moved to sourceforge – Mailing list – Wiki Mercurial repository – On sourceforge – Revised directory structure Continuous build – Use of p2 – Jenkins for continuous integration

Release 3.0 Modularization – Starting to break platform apart – Use of adapters – Use of commands – Menu redefined using extensions Introduced common stable 3.0.x branch

Release 3.1 Finished modularization Common change-log for core and features Moved OS dependent JNI bindings to fragments Expanded common ui element – Error bar/dialog – CommandHandler base class

TASKS FOR FUTURE RELEASES Non-exhaustive, non-definitive, highly optimistic, that will take more than a year to do, list of

Janitorial tasks Remove non-modularize code? – After 2012/7/31 DESY Go through and review “common” utilities? – Pretty much each site has been dumping things – We need a way to distribute at least javadocs Published through build? SNS does not care, BNL does – How can we improve?

git This year Eclipse is going to migrate away from CVS in favor of git Migrate CSS too? – Eclipse git integration is now good and will probably have the most focus from the community – BNL, SNS and DESY seem to all agree – Can the better handling of branching help us? – After 2012/7/31 DESY Any change in the repository structure we want to do? – Separate 3 rd party dependencies? Separate core? Separate features?

e marks the last official release of Eclipse 3.x Migrate CSS to e4? – First step would be to use the compatibility layer – Then we can move feature/plug-ins – After 2012/6/ release No more difference between “Editors” and “Views” – You can move any application wherever you want!

External libraries Currently external dependencies are put inside the CSS code repository Build the wrapper plug-ins separately, and place them in a common p2 repository? – How is source supported? Eclipse core plug-ins do it! 3 rd party P2 repo Source repo Build

Application release As of today, only core development is properly branched and release – Sites typically release their product from the core branch, were all application development happens As a developer, you have no control of what is being deployed at sites – They will have whatever snapshot you had at time to release – Its impractical to provide support like that As a site, you have no guarantee that what you are deploying was properly tested

Application release - proposals Release train – We coordinate a date, and we all release our products at the same time – Pros: cheap to implement; Cons: high coordination (choosing date, different schedules, …) Break up application features in different repositories – Like Eclipse itself does – Pros: each feature can release at their own pace, each site can choose what to integrate; Cons: scattered development, still need to provide a way to easily bring it back together

Application release - proposals A build for each feature – We setup a separate build for each feature – Each of these builds publishes to a p2 repository – When you build your product, you use the pre- built version (similar to a 3 rd party library) – Pros: does not impact current mode of development, product build is significantly easier and faster, can be integrated in the continuous build; Cons: need to setup a build for each feature

Single “community” product Both CSS DESY Island and CSS SNS Basic EPICS target a “generic” site Some sites are using CSS NSLS-II product Building your site product is currently an expensive process Maybe we could have a “community” product, where people can install the features they want? – It’s one of the things Eclipse RCP supports decently! And that it’s easily branded/customized for each site’s need? Need to investigate what is technically feasable with what tools

Single “community” product Community product: empty shell, you get the feature you want from the update site Product build: you provide your configuration, feature list and splash-screen, and you are done – No knowledge of Eclipse required 3 rd party update site (Eclipse, jca, …) CSS update site (BOY, SDS, …) CSS Community CSS your site Site configuration Feature list

Tycho Currently you have to specify dependencies in multiple locations – OSGi, workspace (for development), features (in the right order!), plugin.list (for command-line build) Tycho (based upon maven) lets you specify things once Would this help us? – Would need someone to get some experience with it – Or get someone that has already experience with it

JavaFX SWT/JFace is my least favorite part of Eclipse – 70% of my time is spent trying to make SWT do reasonable things – It’s not standard, has very little life outside of Eclipse, very few Open Source widget libraries – Performance on Linux is not as great as Win/Mac – Don’t see as much activity on core development as I would like Oracle has been putting a lot of effort in JavaFX – Integration of SWT and JavaFX is actually better than JavaFX and Swing as they live on the same UI thread 4Q/2012 Linux r2.1, 4Q/2013 r3.0 including in Java 1.8 But not too late to get experience – How will integrate with pvManager? – Will current conventions work? – Will it work with webOPI?

Conclusion Plenty of things to do But: there are plenty of sites interested and contributing to CSS If we share this vision, and we are better coordinated, the amount of work is not that much!