Architecture
Code Block | ||||
---|---|---|---|---|
| ||||
── |
...
README.md |
...
├── config |
...
│ |
...
├── applications |
...
│ ├── iocs
│ └── services
├── deploy
│ ├── Chart.yaml
│ ├── templates
│ └── values.yaml
├── opi
│ ├── Launcher.bob
│ ├── README.md
│ ├── deploy
│ ├── env.sh
│ ├── phoebus_mrf_interface
│ ├── ptts
│ ├── rp-opi
│ ├── settings.ini
│ ├── settings_template.ini
│ └── start.sh
└── sparc-deploy.yaml |
Each beamline in EPIK8S has a GIT project associated. This GIT project has:
- opi directory that points to a OPI git project that contains the interface of the given beamline
- deploy directory that has the format of an helm chart and contains instruction on what deploy on k8s
- config directory that contains initialisations and configurations for:
- iocs: iocs of your beamline
- services: epics services (cagateway, archivers...)
- applications: things that are not iocs nor services, typically support applications for importing, simulation, cronjobs.
This structure allows:
- separate development of OPIs and IOCs
- update control room OPIs accessing just the GIT repository of the OPI.