Experimental Physics and
| |||||||||||||||
|
Hi Vikram,
As so often, there are many solutions for packaging EPICS IOC applications. Some institutes are building system packages (RPM or DEB depending on the distribution) of all EPICS and Driver modules (Asyn, Stream etc.). In such a context, an IOC application can also be packaged into an RPM/DEB that contains dependencies on the packages it needs to function. Installing the IOC application package on the production host will exactly pull all packages that it needs. This approach needs a serious building and repository infrastructure, and package building has a steep learning curve. Only efficient for large installations. Other institutes are using an NFS mounted repository of all applications and shared libraries and a database of versions of tested combinations of these, and load device support and EPICS modules dynamically from the startup script of the IOC. This also needs a careful design and serious building infrastructure in the background, but maybe requires less upfront work and learning compared to the first option. Some installations have started experimenting with creating IOC applications as containers, e.g. using Docker. This increases robustness and portability, as all needed files and libraries are inside the container which can be run on any Docker server, with little further requirements on operating system and version of the host. Note that access to specific hardware is limited from inside a container, but applications that only need network access should work fine. If your requirement really is "no EPICS installation necessary on target", the best simple and pretty robust option might be building your IOC application statically (and expanding all substitutions into db files on the host), then creating a tar of the (bin, dbd, db, iocBoot) directories. You should be able to unpack such a tar and run the IOC on any host that has the same operation system. Change management (versioning and safe roll-back of your IOC applications) is a whole separate story. Hope this helps, ~Ralph
| ||||||||||||||
ANJ, 12 Oct 2018 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing · |