IOC Builder for EPICS and Kubernetes
Project description
IOC Builder for EPICS and Kubernetes:
In an EPICS support module describe what entities an IOC using it can create, what arguments they take, and what database and st.cmd snippets it should generate in a builder.yaml file
Build support modules together in a container image and use ibek in the image to create a JSON schema of what an IOC using that image can contain
Write an ioc.yaml file against that schema listing instances of the entities with arguments
Use ibek to generate a startup script, database and Helm chart that runs up the IOC contained in the image with them
PyPI |
pip install ibek |
Source code |
|
Documentation |
|
Releases |
TODO
This project is approaching completion. The following items are still to do:
Complete documentation in general
Add a diagram and more details. Use draw.io for image, and save as SVG with source embed in it, save as something.draw.io.svg
Add ability to define embedded objects e.g. AsynIp and AsynSerial would both be defined by embedding AsynPort (so similar to how original builder.py works)
Add support for enums where you define the possible values inline
update helm-template/config/start.sh to call ‘ibek build-startup’ when it sees a ioc.boot.yaml file in the startup directory. This change requires embedding ibek into the epics-base container image.
See https://epics-containers.github.io/ibek for more detailed documentation.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.