0.0.1-alpha.1 • Published 6 years ago

@trym-testing/k8sync v0.0.1-alpha.1

Weekly downloads
-
License
MIT
Repository
github
Last release
6 years ago

k8sync

Watch and sync local files to kubernetes pods using watchman and rsync.

Heavily inspired by ksync.

Work In Progress

WARNING: Only meant to be used in development clusters - anyone with access to the DaemonSet pods have write access to all overlay2 filesystems, on all cluster nodes.

Getting started

Install k8sync

npm -g install @trym-testing/k8sync

Configure k8sync for project

Create a k8sync.yaml in your project root.

namespace: mynamespace
daemonSetNamespace: kube-system

sync:
  api:
    localPath: api
    containerPath: /src
    podSelector:
      labelSelector: 'app=myapp-api'
    excludeDirs:
      - node_modules

  webapp-poller:
    localPath: webapp
    containerPath: /src
    podSelector:
      labelSelector: 'app=myapp-webapp'
    excludeDirs:
      - node_modules

Install cluster-side components

k8sync cluster:init

Watch and sync local files to cluster

k8sync sync

Retart containers while retaining synced files

k8sync restart api

Remove cluster-side components

k8sync cluster:clean