Packaging of EPICS-basedControl System Software - PowerPoint PPT Presentation

About This Presentation
Title:

Packaging of EPICS-basedControl System Software

Description:

Software Repository * Packaging & Repository Make use of RPM, the standard packaging system. ... CSS (Control System Studio) BOY, BEAST, BEAUTY, Data Browser, ... – PowerPoint PPT presentation

Number of Views:190
Avg rating:3.0/5.0
Slides: 13
Provided by: Mati125
Learn more at: https://epics.anl.gov
Category:

less

Transcript and Presenter's Notes

Title: Packaging of EPICS-basedControl System Software


1
Packaging ofEPICS-basedControl System Software
Takashi Nakamoto (Cosylab Japan) takashi.nakamoto_at_
cosylab.com
2
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

3
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?

Dont waste your time to solve the common
problems!
4
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

5
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.

6
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).

7
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

8
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
9
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.

xxx-ioc-0.0a1.x86_64.rpm
xxx-opi-0.0a1.x86_64.rpm
10
Example architectural view 1
Common Software Repository
Software Repository
RPMs
RPMs
RPMs
RPMs
RPMs
RPMs
  • IOC
  • EPICS base
  • Driver support
  • Archiving server
  • EPICS base
  • Channel Archiver

Developers directly uploadRPMs to the repository.
  • Operators clients
  • EPICS base
  • EDM
  • ALH
  • Developers workstation
  • EPICS base
  • EDM
  • ALH
  • VDCT
  • CSS

11
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.
12
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 !
Write a Comment
User Comments (0)
About PowerShow.com