
Shell-operator is a tool for running event-driven scripts in a Kubernetes cluster.
This operator is not an operator for a particular software product such as prometheus-operator or kafka-operator. Shell-operator provides an integration layer between Kubernetes cluster events and shell scripts by treating scripts as hooks triggered by events. Think of it as an operator-sdk but for scripts.
Shell-operator is used as a base for more advanced addon-operator that supports Helm charts and value storages.
Shell-operator provides:
add, update or delete events. Learn more about hooks.Please see the docs for more in-depth information and supported features.
More examples of how you can use shell-operator are available in the examples directory.
Prominent shell-operator use cases include:
Please find out & share more examples in Show & tell discussions.
Shell-operator has been presented during KubeCon + CloudNativeCon Europe 2020 Virtual (Aug'20). Here is the talk called "Go? Bash! Meet the shell-operator":
Official publications on shell-operator: * "shell-operator v1.0.0: the long-awaited release of our tool to create Kubernetes operators" (Apr'21); * "shell-operator & addon-operator news: hooks as admission webhooks, Helm 3, OpenAPI, Go hooks, and more!" (Feb'21); * "Kubernetes operators made easy with shell-operator: project status & news" (Jul'20); * "Announcing shell-operator to simplify creating of Kubernetes operators" (May'19).
Other languages: * Chinese: "介绍一个不太小的工具:Shell Operator"; "使用shell-operator实现Operator"; * Dutch: "Een operator om te automatiseren – Hoe pak je dat aan?"; * Russian: "shell-operator v1.0.0: долгожданный релиз нашего проекта для Kubernetes-операторов"; "Представляем shell-operator: создавать операторы для Kubernetes стало ещё проще".
Please feel free to reach developers/maintainers and users via GitHub Discussions for any questions regarding shell-operator.
You're also welcome to follow @flant_com to stay informed about all our Open Source initiatives.
Apache License 2.0, see LICENSE.
$ claude mcp add shell-operator \
-- python -m otcore.mcp_server <graph>