Experimental Physics and Industrial Control System
|
Hello Eddy,
This, now merged PR might be interesting for you:
https://github.com/epics-base/epics-base/pull/558
Will be in next release.
There was earlier work by Dirk Zimoch that was the origin for this PR and the work, named afterInit, in this repository:
https://github.com/paulscherrerinstitute/iocsh_utilities
Cheers,
Timo
From:
Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of "Blomley, Edmund (IBPT) via Tech-talk" <tech-talk at aps.anl.gov>
Reply to: "Blomley, Edmund (IBPT)" <edmund.blomley at kit.edu>
Date: Thursday, 26 June 2025 at 11:27
To: EPICS Tech Talk <tech-talk at aps.anl.gov>
Subject: "Inject" code into IOC startup files?
Dear all,
Most of our IOCs use the (current?) "default" IOC structure created by the `makeBaseApp.pl` script.
Now there are several scenarios where we currently add the same line of code or same „functionality" to each start up file "by convention“. (For new IOCs we have some scripts adjusting the results of `makeBaseApp.pl` from the beginning).
One example: we export the list of PVs after IOC init. Because we use a custom ENV variables set by our systemd script for each IOC, this line is 100% identical for each IOC and looks something like that:
cd ${TOP}/iocBoot/${IOC}
iocInit
# Write list of records.
dbl > "${EPICS_AUTOPVLIST_IOC_FILE}"
The second scenario is to do some things _before_ IOC init: For example load the iocStats records.
Adding these lines of code once is one thing… But for example, now I would like to add recCaster to each startup file… if that is done, we might also can get rid of the dbl export…
So the question: Is there a way to define some generic „hook-in“ behavior which allows to „add code“ _before_ AND _after_ IOC init, where the actual code is managed outside of the IOC structure and could be used across multiple IOCs? Also
due to our orchestration and systemd files, we can do some „customization“ during IOC deployment if necessary.
Our current „brain-storming“ idea is maybe through a module, we could add an IOC shell function that allows registering files for later execution. But before we start working on that… other ideas? Is there already
a built-in option? Have other labs already created some custom code to allow for something like that?
|
- References:
- "Inject" code into IOC startup files? Blomley, Edmund (IBPT) via Tech-talk
- Navigate by Date:
- Prev:
Re: "Inject" code into IOC startup files? Maren Purves via Tech-talk
- Next:
Problems with the alarm-server and large number of channels Charles Jenkins via Tech-talk
- 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
<2025>
- Navigate by Thread:
- Prev:
Re: "Inject" code into IOC startup files? Maren Purves via Tech-talk
- Next:
Re: "Inject" code into IOC startup files? Mark Rivers via Tech-talk
- 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
<2025>
|
ANJ, 26 Jun 2025 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
·
Download
·
Search
·
IRMIS
·
Talk
·
Documents
·
Links
·
Licensing
·
|