Packaging of EPICS-basedControl System Software

Slides:



Advertisements
Similar presentations
Epics Configuration Management Steve Hunt v1.0. Goals Maximize control system availability Minimize development cycle time Reduce risk.
Advertisements

Control System Studio (CSS)
Developing in CAS. Why? As distributed you edit CAS 3 with Eclipse and build with Maven 2 – Best Practice for Release Engineering – Difficult edit-debug.
EPICS Noboru Yaamamoto Jan 27, 2009 for EPICS seminar at RRCAT, Indore Installing EPICS.
Copyright GeneGo CONFIDENTIAL »« MetaCore TM (System requirements and installation) Systems Biology for Drug Discovery.
Finding, Deploying and Managing EPICS Support Modules Andrew Johnson Computer Scientist, AES Controls.
Web Applications Basics. Introduction to Web Web features Clent/Server HTTP HyperText Markup Language URL addresses Web server - a computer program that.
WHAT IS PHP PHP is an HTML-embedded scripting language primarily used for dynamic Web applications.
Talend 5.4 Architecture Adam Pemble Talend Professional Services.
Julie McEnery1 Installing the ScienceTools The release manager automatically compiles each release of the Science Tools, it creates a set of wrapper scripts.
Installing Linux softwares Sirak Kaewjamnong. 2 Software packets  When Linux developers create their software they typically bundle all the executable.
EPICS Collaboration meeting, Pohang,, Oct 2012 Page 1IDM UID: 97W6QN Status of ITER Core Software (“CODAC Core System”) CHD/CIT/CODAC ITER Organization.
Agenda Adaptation of existing open-source control systems from compact accelerators to large scale facilities.
EPICS Collaboration meeting Fall 2012, SDD status and plansPage 1 Self-Described Data - SDD status and plans Lana Abadie, ITER CODAC.
Downloading & Installing Software Chapter 13. Maintaining the System Yum Pirut BitTiorrent Rpm Keeping Software Up To Date Up2date Red Hat Network Wget.
Managing Software using RPM. ♦ Overview In Linux, Red Hat Package Manager referred as RPM is a tool used for managing software packages and its main function.
Linux Operations and Administration
Input/Output Controller (IOC) Overview Andrew Johnson Computer Scientist, AES Controls Group.
SUSE Linux Enterprise Server Administration (Course 3037) Chapter 4 Manage Software for SUSE Linux Enterprise Server.
 Intro/features  DCBD tool architecture  Software used Dynamic library loader EPICS Device support modules DCDB-server DCDB-client  RPM packages &
CODAC Core System, 2-June-2010, EPICS Collaboration Meeting Aix-en-Provence Page 1 CODAC Core System F. Di Maio ITER IO / CHD / CIT / CODAC.
October, Scientific Linux INFN/Trieste B.Gobbo – Compass R.Gomezel - T.Macorini - L.Strizzolo INFN - Trieste.
Matthias Clausen, DESY CSS GSI Feb. 2009: Introduction XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser 1 CSS – Control System.
1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer.
INFSOM-RI Juelich, 10 June 2008 ETICS - Maven From competition, to collaboration.
Install Software. UNIX Shell The UNIX/LINUX shell is a program important part of a Unix system. interface between the user & UNIX kernel starts running.
A U.S. Department of Energy Office of Science Laboratory Operated by The University of Chicago Argonne National Laboratory Office of Science U.S. Department.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
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.
SUSE Linux Enterprise Desktop Administration Chapter 6 Manage Software.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS Jan Control System Studio, CSS Overview.
Final Review of ITER PBS 45 CODAC – PART 1 – 14 th, 15 th and 16 th of January CadarachePage 1 FINAL DESIGN REVIEW OF ITER PBS 45 CODAC – PART 1.
05/29/2002Flavia Donno, INFN-Pisa1 Packaging and distribution issues Flavia Donno, INFN-Pisa EDG/WP8 EDT/WP4 joint meeting, 29 May 2002.
Integrating EPICS and LabVIEW on Windows using DCOM Freddie Akeroyd ISIS Computing Group.
GPIB Device Control with COSYLAB microIOC COSYLAB microIOC Development for microIOC with SDK GPIB device control microIOCs in SLAC Things learned Jingchen.
EPICS Application Development At The Canadian Light Source Glen Wright.
ITER Update, 11-Oct-2010, EPICS Collaboration Meeting Brookhaven Page 1 ITER Update F. Di Maio ITER IO / CHD / CIT / CODAC.
EPICS Collaboration Meeting, 05-Oct-2011, Willingen Page 1 ITER Tools Franck Di Maio, Lana Abadie CHD/CSD/CODAC ITER Organization.
G.Govi CERN/IT-DB 1 September 26, 2003 POOL Integration, Testing and Release Procedure Integration  Packages structure  External dependencies  Configuration.
Making Software Executable by Others Varun Ratnakar USC/ISI April 17, 2015
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS 2012, January 9-12 at NSRRC, Taiwan Control System Studio Training.
Linux Operations and Administration
Andrew McNab - Globus Distribution for Testbed 1 Globus Distribution for Testbed 1 Andrew McNab, University of Manchester
RedHat Package Management RPM and YUM in RedHat Enterprise, Fedora, Suse and Centos.
Software Deployment & Release 26/03/2015 1EN-ICE.
Aaron Corso COSC Spring What is LAMP?  A ‘solution stack’, or package of an OS and software consisting of:  Linux  Apache  MySQL  PHP.
ESS Integrated Control System Software Core Components S.Gysin
C Copyright © 2006, Oracle. All rights reserved. Oracle Secure Backup Additional Installation Topics.
DECTRIS Ltd Baden-Daettwil Switzerland Continuous Integration and Automatic Testing for the FLUKA release using Jenkins (and Docker)
Scientific Linux Inventory Project (SLIP) Troy Dawson Connie Sieh.
Integrating Advantech PCI I/O cards into EPICS. Outline ANTARES computer control and data acquisition systems architecture STAR computer control and data.
System Administration Application Management. ● A common task for a system administrator is the installation, updating and removal of software. Several.
1 Policy Based Systems Management with Puppet Sean Dague
Stephanie Allison Software Mar 2, 2006 IOC Applications Host Applications Directory Structure Environment Setup Issues.
with Some Eclipse Tricks included Safa Bacanlı Fall 16
CompTIA Server+ Certification (Exam SK0-004)
EPICS Training Client Tools
Lecture 13 RPM and its advantages.
More Scripting & Chapter 11
Maven IIB9 Plug-in Version 9.0
With Some Eclipse Tricks included.
F. Di Maio ITER IO / CHD / CIT / CODAC
University of Texas Rio Grande Valley Systems Administration CSCI 6175
Cmake Primer.
Control System Studio (CSS)
Maven IIB9 Plug-in Version 9.0
PLCs integration into the ICS
EPICS at Diamond Mark Heron Head of Controls Group
Microsoft 365 Business Technical Fundamentals Series
Microsoft 365 Business Technical Fundamentals Series
Presentation transcript:

Packaging of EPICS-basedControl System Software Takashi Nakamoto (Cosylab Japan) takashi.nakamoto@cosylab.com

Abstract Packaging of control system software Control system software: EPICS base, driver supports, modules, extensions, CSS, etc. Gives a consistent way to install, uninstall and upgrade them. This work is sponsored by ITER Examples in this presentation are taken from ITER CODAC Core System. Visit ITER website for more details about CODAC Core System. https://www.iter.org/org/team/chd/cid/codac/coresystem

Motivation: typical problems EPICS drivers, modules, extensions and relevant applications are provided in different way. In most cases, only source is provided and you need to build it before you use it. Compilation errors Build dependencies. Wrong build configuration. Inconsistent way to install, uninstall and upgrade Many people scatter files in different directories with different conventions. Complex dependencies. How do you manage which version you have? Don’t waste your time to solve the common problems!

Packaging & Repository Make use of RPM, the standard packaging system. ITER: Built for 64-bit RHEL (currently 5.5). You can also use CentOS, Scientific Linux, etc. Save compiled software on a shared repository RHN Satellite Server yum repository exposed via HTTP Distribute software through this repository. Software Repository EPICS base asyn Sequencer …

Advantages from users perspective Standard tools to install, uninstall and upgrade are available. yum install / yum remove / yum upgrade … any GUI tool Compiled software packages are ready for you. Dependencies are automatically resolved. Scripts can be run after installation if any.

Unix standards All packages are installed in accordance with the standard directory structure. Use of “alternative” to resolve path to executable files. Run daemons in the same fashion of other Unix services. Run a daemon with a separate account (not root). opt codac-2.0 bin epics base module extension lib include etc edm archiver init.d var autosave epicsIOCLog Directory structure of CODAC Core System 2.0:

Available packages on CODAC Core System 2.0 EPICS base EPICS modules (record/device/driver support) sncseq, asyn, s7plc, autosave, … ni6259, pxi6682 Tools and libraries VDCT, caSnooper, pycachannel, … CSS (Control System Studio) BOY, BEAST, BEAUTY, Data Browser, … SDD tools

How to make packages? Maven Software project management tool. XML based configuration (pom.xml). We developed Maven plug-ins to make RPMs of control system software. No need to write SPEC file. Particularly customized to quickly package EPICS relevant software (IOC, modules, CSS etc.). Automatically detects dependencies. Beginning part of pom.xml Packaging information in pom.xml

Basic packaging procedure of IOC mvn-make-base-app src/main/epics/xxxApp src/main/epics/iocBoot/iocXXX src/main/edm … Make database, configure st.cmd, make operators’ screen, etc. mvn package This command compiles source, runs tests if any and makes RPMs in target directory. “mvn package” copies all the source to target and trigger “make” in “epics” directory to compile. After compilation, Maven only takes required files and pack them into RPMs. src main edm epics xxxApp iocXXX test target Example source directory structure: xxx-ioc-0.0a1.x86_64.rpm xxx-opi-0.0a1.x86_64.rpm

Example architectural view 1 Software Repository Common Software Repository RPMs RPMs RPMs RPMs RPMs RPMs IOC EPICS base Driver support Archiving server EPICS base Channel Archiver Developers directly upload RPMs to the repository. Operators’ clients EPICS base EDM ALH Developers’ workstation EPICS base EDM ALH VDCT CSS

Example architectural view 2 Common Software Repository Software Repository RPMs RPMs RPMs Continuous Integration server RPMs IOC EPICS base Driver support source Source Repository … source source Operators’ clients EPICS base EDM ALH Developers upload only modified source code.

Thank You for Your Attention ! Conclusion Save your time by using packaging system. Packaging system gives a consistent way to make packages and distribute them. Thank You for Your Attention !