Backups Kubernetes resources as a Helm chart.
Extract configurations from resources and save them as values and templates in a reproducible Helm chart.

>= v6npm install @risingstack/anchor
For more detailed examples like sub-charts check out the ./example folder.
const anchor = require('@risingstack/anchor')
anchor.snapshot({
resources: [
'deployment/my-app',
'deployment/my-worker'
]
})
.then(() => console.log('Snapshot finished'))
.catch((err) => console.error('Snapshot error', err))
Backup Kubernetes resources as a Helm chart and returns a Promise.
options.resources: Kubernetes resources to snapshot['deployment/my-app', 'deployment/my-worker']options.namespace: Kubernetes namespace for kubectldefaultoptions.name: name of the Helm chartmy-chartoptions.description: description of the Helm chart''options.version: version of the Helm chart0.0.1options.overwrite: overwrite output directoryfalseoptions.outputPath: defines chart path, throws error when exist but overwrite is false./outputkubectlvalues.yamlTODO:
The ./output directory will contains the templates under the ./output/templates folder.
Your Values.yaml file will look like the following:
deploymentMyApp:
image: my-company/my-app
imageTag: 1f40c1f
envLogLevel: info
resourcesLimitsCPU: 150m
resourcesLimitsMemory: 1536Mi
resourcesRequestsCPU: 10m
resourcesRequestsMemory: 128Mi
replicas: 2
deploymentMyWorker:
containers:
myWorker:
image: my-company/my-worker
imageTag: 295a9c2
envLogLevel: warning
envTraceServiceName: my-worker
resourcesLimitsCPU: 200m
resourcesLimitsMemory: 1536Mi
resourcesRequestsCPU: 20m
resourcesRequestsMemory: 128Mi
mySidecar:
image: my-company/metrics-exporter
imageTag: aa1c434
replicas: 2
$ claude mcp add anchor \
-- python -m otcore.mcp_server <graph>