Release Notes for Cyphernetes v0.11.0
This is probably the biggest Cyphernetes release to date!
It includes the shiny new Cyphernetes Operator - A powerful tool that lets you define Dynamic Operators using Cyphernetes on-the-fly.
Besides the operator there is a decent list of improvements and bug fixes.
Features
- The big one here is of course the operator. Deploy
cyphernetes-operator
to your cluster using helm or the cyphernetes CLI, and use it to controlDynamicOperators
, an efficient way to define operators with a couple of lines:
apiVersion: cyphernetes-operator.cyphernet.es/v1
kind: DynamicOperator
metadata:
name: ingress-activator-operator
namespace: default
spec:
resourceKind: deployments
namespace: default
onUpdate: |
MATCH (d:Deployment {name: "{{$.metadata.name}}"})->(s:Service)->(i:Ingress)
WHERE d.spec.replicas = 0
SET i.spec.ingressClassName = "inactive";
MATCH (d:Deployment {name: "{{$.metadata.name}}"})->(s:Service)->(i:Ingress)
WHERE d.spec.replicas > 0
SET i.spec.ingressClassName = "active";
Read more in the operator docs.
- New
operator
command in CLI:operator deploy/remove
- Easily deploy the operator to a cluster (for test purposes)operator create
- TemplateDynamicOperator
resources
- New GitHub Actions for PR and Release
- New Helm chart for
cyphernetes-operator
Improvements
- Better SIGINT behavior during query execution or while typing
- New operators now supported in WHERE clause:
!=
,>
,<
,>=
,<=
- Split documentation into several domains (language, CLI, operator)
Bugfixes
- Improved readline package with multiple bug fixes (no more screen tearing on multi-line inputs in some terminals)
- Autocomplete resource kind inside connected nodes
- Consider local kubeconfig context namespace in shell if it exists (closes #79)