@@ -30,7 +30,7 @@ This folder needs to contain these two items:
30
30
can take a number of forms
31
31
`listed here <https://github.com/epics-containers/ibek/blob/ea9da7e1cfe88f2a300ad236f820221837dd9dcf/src/ibek/templates/ioc/config/start.sh >`_.
32
32
33
- values.yaml
33
+ values.yaml
34
34
~~~~~~~~~~~~~~~~~~~~~~~
35
35
36
36
We will start by creating the values.yaml file:
@@ -45,7 +45,7 @@ This should launch vscode and open the values.yaml file. Add the following:
45
45
46
46
.. code-block :: yaml
47
47
48
- image : ghcr.io/epics-containers/ioc-adsimdetector-linux-runtime:2023.10.7
48
+ image : ghcr.io/epics-containers/ioc-adsimdetector-linux-runtime:2023.11.1
49
49
50
50
This tells the IOC Instance to run in the ``ioc-adsimdetector-linux-runtime ``
51
51
container. This container was built by the Generic IOC source repo here
@@ -190,7 +190,7 @@ This should launch vscode and open the ioc.yaml file. Add the following:
190
190
191
191
.. code :: yaml
192
192
193
- # yaml-language-server: $schema=https://github.com/epics-containers/ioc-adsimdetector/releases/download/2023.10.7 /ibek.ioc.schema.json
193
+ # yaml-language-server: $schema=https://github.com/epics-containers/ioc-adsimdetector/releases/download/2023.11.1 /ibek.ioc.schema.json
194
194
195
195
ioc_name : bl01t-ea-ioc-02
196
196
description : Example simulated camera for BL01T
@@ -290,6 +290,9 @@ Now we can start our simulation detector like this:
290
290
.. code-block :: bash
291
291
292
292
ec ioc exec bl01t-ea-ioc-02
293
+ # enable the PVA plugin that publishes the output
294
+ caput BL01T-EA-TST-02:PVA:EnableCallbacks 1
295
+ # start the simulation detector
293
296
caput BL01T-EA-TST-02:DET:Acquire 1
294
297
295
298
You should see a moving image appear in the ``c2dv `` window. For smoothest
@@ -317,15 +320,15 @@ That is because every Generic IOC publishes an *IOC schema* that describes
317
320
the set of entities that an instance of that IOC may instantiate.
318
321
319
322
The Generic IOC we used was released at this location:
320
- https://github.com/epics-containers/ioc-adsimdetector/releases/tag/2023.10.7 .
323
+ https://github.com/epics-containers/ioc-adsimdetector/releases/tag/2023.11.1 .
321
324
This page includes the assets that are published as part of the release and
322
325
one of those is ``ibek.ioc.schema.json ``. This is the *IOC schema * for the
323
326
``ioc-adsimdetector `` Generic IOC. This is what we referred to at the top of
324
327
our *IOC yaml * file like this:
325
328
326
329
.. code :: yaml
327
330
328
- # yaml-language-server: $schema=https://github.com/epics-containers/ioc-adsimdetector/releases/download/2023.10.7 /ibek.ioc.schema.json
331
+ # yaml-language-server: $schema=https://github.com/epics-containers/ioc-adsimdetector/releases/download/2023.11.1 /ibek.ioc.schema.json
329
332
330
333
When editing with a YAML aware editor like VSCode this will enable auto
331
334
completion and validation of the *IOC yaml * file. To enable this in VSCode
@@ -361,16 +364,17 @@ To see what ibek generated you can go and look inside the IOC container:
361
364
.. code :: bash
362
365
363
366
ec ioc exec bl01t-ea-ioc-02
364
- ls /opt/ epics/ioc/iocBoot/iocbl01t-ea-ioc-02
365
- cat /tmp/ ioc.subst
366
- cat /tmp/ st.cmd
367
+ cd / epics/runtime/
368
+ cat ioc.subst
369
+ cat st.cmd
367
370
368
371
.. note ::
369
372
370
373
The startup script and database are generated at container run time,
371
- by ``ibek ``. They are generated in the /tmp folder of the container.
372
- This is because this is the only folder that is guaranteed to be
373
- writeable due to container security considerations.
374
+ by ``ibek ``. They are generated in the /epics/runtime folder
375
+ of the container.
376
+ In Kubernetes this will be a persistent volume so that it can be
377
+ shared for easy debugging of IOC Instances.
374
378
375
379
If you would like to see an IOC Instance that uses a raw startup script and
376
380
database then you can copy these two files out of the container and into
@@ -379,8 +383,8 @@ docker if that is what you are using):
379
383
380
384
.. code-block :: bash
381
385
382
- podman cp bl01t-ea-ioc-02:/tmp /st.cmd iocs/bl01t-ea-ioc-02/config
383
- podman cp bl01t-ea-ioc-02:/tmp /ioc.subst iocs/bl01t-ea-ioc-02/config/ioc.subst
386
+ podman cp bl01t-ea-ioc-02:/epics/runtime /st.cmd iocs/bl01t-ea-ioc-02/config
387
+ podman cp bl01t-ea-ioc-02:/epics/runtime /ioc.subst iocs/bl01t-ea-ioc-02/config/ioc.subst
384
388
# no longer need an ibek ioc yaml file
385
389
rm iocs/bl01t-ea-ioc-02/config/ioc.yaml
386
390
# re-deploy from local filesystem
0 commit comments