epics-containers / ibek

IOC Builder for EPICS and Kubernetes
https://epics-containers.github.io/ibek
Apache License 2.0
11 stars 5 forks source link

Proxy Pods for non native IOCs #185

Closed gilesknap closed 6 months ago

gilesknap commented 6 months ago

This concerns IOC's that run in RTEMS or Windows or potentially any other target architecture that is not native to the Kubernetes cluster.

To allow the management of these to look as similar as possible to native Linux IOCs we propose running proxy Pods that:

These features should be embedded into the runtime target for generic IOC's that are targeting non-native architecture. These targets will contain the minimised built assets just like native IOCs, but also the code to facilitate proxy features.

The above should be implemented in python and I propose they are added to ibek for the following reasons:

QUESTION: I'm struggling to think of a nice generic way to configure the windows server for build time. One way would be to have a DLS specific base container with our build server name hard coded in. This is possible as such builds will be internal only. But if prefer a more configurable solution.

gilesknap commented 6 months ago

Re windows build server. I think this can be part of the config of the gitlab runner and thus be passed into the build via environment variables.

coretl commented 6 months ago

I think this all sounds sensible

gilesknap commented 6 months ago

This has been done in a separate repo for now https://github.com/epics-containers/rtems-proxy.

My thought is that it belongs in a separate repo because the release cadence will be higher later in the project and changing ibek requires rebuilding the entire generic IOC whereas rtems-proxy can be installed at the end of the developer build.

Will revisit the possibility of merging these once everything is bedded in!