@@ -30,13 +30,16 @@ 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
34
+ ~~~~~~~~~~~~~~~~~~~~~~~
35
+
33
36
We will start by creating the values.yaml file:
34
37
35
38
.. code-block :: bash
36
39
37
40
cd bl01t
38
41
mkdir iocs/bl01t-ea-ioc-02
39
- code values.yaml
42
+ code iocs/bl01t-ea-ioc-02/ values.yaml
40
43
41
44
This should launch vscode and open the values.yaml file. Add the following:
42
45
@@ -80,8 +83,8 @@ To recap, we have two python CLI tools for supporting ``epics-containers``:
80
83
above. So now we will provide some *IOC yaml * files to ``ibek `` so that it
81
84
will generate startup assets for our IOC Instance.
82
85
83
- Make an * IOC yaml * File
84
- -------------------------
86
+ config
87
+ ~~~~~~~~~~~~~~~~~~~~~~~
85
88
86
89
*IOC yaml * files are a sequence of ``entities ``. Each entity is an instance of
87
90
a ``definition `` declared in the *Support yaml * that one of the support
@@ -170,14 +173,21 @@ baked into the container:
170
173
# simDetectorConfig(portName, maxSizeX, maxSizeY, dataType, maxBuffers, maxMemory)
171
174
simDetectorConfig("{{PORT}}", {{WIDTH}}, {{HEIGHT}}, {{DATATYPE}}, {{BUFFERS}}, {{MEMORY}})
172
175
173
- You can see that this lists a a number of arguments that it expects. It then
176
+ You can see that this lists a number of arguments that it expects. It then
174
177
declares how these will be used to substitute values into the simDetector
175
178
database template. Finally it declares some lines to go into the startup script
176
179
(before iocInit).
177
180
178
181
Therefore, we can create an *IOC yaml * file that instantiates a simulation
179
182
detector as follows:
180
183
184
+ .. code-block :: bash
185
+
186
+ mkdir iocs/bl01t-ea-ioc-02/config
187
+ code iocs/bl01t-ea-ioc-02/config/ioc.yaml
188
+
189
+ This should launch vscode and open the ioc.yaml file. Add the following:
190
+
181
191
.. code :: yaml
182
192
183
193
# yaml-language-server: $schema=https://github.com/epics-containers/ioc-adsimdetector/releases/download/2023.10.7/ibek.ioc.schema.json
@@ -227,7 +237,7 @@ detector over a PVAccess channel called ``BL01T-EA-TST-02:PVA:OUTPUT``. The
227
237
a dependency of ADSimDetector and so is included in the Generic IOC container.
228
238
229
239
Try putting the two snippets of *IOC yaml * together and saving it as
230
- ``ioc.yaml `` in the ``iocs/bl01t-ea-ioc-02 `` folder.
240
+ ``ioc.yaml `` in the ``iocs/bl01t-ea-ioc-02/config `` folder.
231
241
232
242
You have now defined your first IOC instance.
233
243
@@ -388,4 +398,4 @@ changes in the startup script and substitution file and re-deploy the IOC.
388
398
389
399
For example try this command:
390
400
391
- - ec -v ioc deploy-local iocs/bl01t-ea-ioc-02
401
+ - ec -v ioc deploy-local iocs/bl01t-ea-ioc-02
0 commit comments