Experimental Physics and Industrial Control System
|
Aldditional - If you look in Area Detector, There is a script that Mark Rivers wrote (makeADPrebuilt) which zips up all the important directories (opi,db,bin,lib,dbd,etc)
so that you get a rather small repository which you can deploy on similar hardware, and all you have to do is resolve the scripts or support files (in iocBoot) that may have hard encoded references. So if you have a single development location which builds
for many platforms, a script such as this can make your deployment packages.
From: [email protected] <[email protected]>
On Behalf Of Ralph Lange
Sent: Friday, October 12, 2018 2:38 AM
To: EPICS Tech Talk <[email protected]>
Subject: Re: EPICS Application Package
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.
|
- References:
- EPICS Application Package Vikram Bhagat via Tech-talk
- Re: EPICS Application Package Ralph Lange
- Navigate by Date:
- Prev:
Base R3.15.6 Released Ralph Lange
- Next:
Re: EPICS Application Package Bo Jakobsen
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
<2018>
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: EPICS Application Package Ralph Lange
- Next:
Re: EPICS Application Package Bo Jakobsen
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
<2018>
2019
2020
2021
2022
2023
2024
|
ANJ, 12 Oct 2018 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
·
Search
·
EPICS V4
·
IRMIS
·
Talk
·
Bugs
·
Documents
·
Links
·
Licensing
·
|