--- id: epik8s-tools version: "0.16.4" license: unclear license_treatment: permissive maintenance: active --- # epik8s-tools — A set of tools for generating Kubernetes Helm charts for EPICS-based systems. License: permissive · Maintenance: active · Downloads: 126.6K/mo ## What it is and what it does epik8s-tools is a Python CLI toolset for automating the deployment of EPICS (Experimental Physics and Industrial Control System) applications to Kubernetes. It reads YAML beamline configurations and generates Helm charts, OPI (Operator Interface) panels for Phoebus, and project directory structures, eliminating manual boilerplate for complex control-system deployments. The package wraps template rendering (Jinja2, pyyaml) and integrates with phoebusgen and jnjrender to produce ready-to-deploy Kubernetes manifests and operator dashboards. The toolset includes multiple CLI entry points: epik8s-tools for project generation, epik8s-opigen for OPI panel creation, epik8s-run for IOC execution, and epik8s-compose for Docker Compose single-node setups. It supports extensive configuration options for networking (CA/PVA gateway IPs, ingress classes), storage (NFS paths), and external services (ElasticSearch, MongoDB, Kafka). Operators can generate detailed per-IOC dashboards with live PV monitoring or simpler beamline-level launchers with embedded device controls. Use it for: - Generate standardized Kubernetes deployment manifests for a new EPICS beamline without manual Helm chart editing. - Create OPI control panels automatically from beamline YAML, replacing manual Phoebus screen design. - Set up a single-node Kubernetes cluster with Docker Compose for development or testing of EPICS IOC configurations. - Configure gateway load balancers, NFS mounts, and ingress routing for multi-IOC beamline deployments. - Generate per-IOC monitoring dashboards with live PV readback and setpoint widgets from runtime PV lists. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Automates project structure, Helm chart, and OPI panel generation for EPICS applications deployed to Kubernetes, with CLI-driven template rendering from YAML configurations. Yes, if you are deploying EPICS applications to Kubernetes and want to reduce boilerplate for Helm charts and OPI panels. The package is actively maintained, has low install friction, and carries no known vulnerabilities. It is purpose-built for a specific domain (EPICS/Kubernetes); outside that context it has no utility. The permissive MIT license poses no restriction. ## Install pip install epik8s-tools uv add epik8s-tools poetry add epik8s-tools ## Installing epik8s-tools Before you install: Low friction: pure Python wheel with four runtime dependencies (pyyaml, Jinja2, phoebusgen, jnjrender). Active maintenance with recent commits; last release 122 days ago. Requires Python 3.10 or later. License in practice: MIT license (permissive). You can use, modify, and distribute this package freely with minimal restrictions, provided you retain the license notice. Quickstart: pip install epik8s-tools epik8s-tools my_project --beamline MyBeamline --iocbaseip 10.96.0.0/12 --beamlinerepogit https://github.com/beamline/repo.git Requires Python 3.10 or later. Intended for EPICS/Kubernetes environments; limited utility outside that domain. Verify before relying: - Whether phoebusgen and jnjrender are widely available or niche dependencies that may complicate installation. - Whether the package works with Kubernetes distributions other than microk8s, or if microk8s is a practical requirement. - Real-world deployment success rate and community adoption beyond the INFN/EPICS research community. ## Package facts - License: not declared (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 126.6K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags kubernetes helm chart generation, epics deployment automation, yaml template rendering cli, beamline configuration management, ioc kubernetes deployment, phoebus opi panel generation, epics control system deployment, kubernetes-deployment, epics-control-systems, helm-automation [View on SkillFed](https://skillfed.io/packages/epik8s-tools) · [View on PyPI](https://pypi.org/project/epik8s-tools/)