Skip to content

Latest commit

 

History

History
113 lines (93 loc) · 1.98 KB

internal_open_discussion.md

File metadata and controls

113 lines (93 loc) · 1.98 KB

Agile notes

Planned features

  • Step: 1
    • Init cobra & viper setup
    • Dynamic config loading with viper (type)
  • Step: 2
    • Init slog setup
  • Implement Filesystem to Filesystem backup
    • Think about the interfaces
  • Implement Vault to Filesystem backup

For later:

  • Define multiple destinations
  • Azure Blob
    • Support additional auth mechanism
    • Use azurite for testing: <mcr.microsoft.com/azure-storage/azurite>
  • Creating full-backups from
    • SSH/Rsync
    • MongoDB
    • PostgreSQL
    • Disk
  • Delete backups that are older than X
  • Create incremental backups from
    • MongoDB
    • PostgreSQL
  • Define multiple sources
  • K8s Volume replication
  • Encryption
  • Compression
  • Implement command check-config
  • Implement command generate-config

Config ideas

source:
  type: "hashicorpvault"
  address: http://localhost:8200
  token: xxx

destination:
  type: azureBlob
  containerName: backup
  accountName: xxx
  accountKey: xxx
lb backup

sources:
  production-env:
    type: hashicorpvault
    address: http://localhost:8200
    token: xxx

destination:
  my-backup:
    type: azureBlob
    containerName: xxx
    accountName: xxx
    accountKey: xxxx
lb backup --source=production-env --destination=my-backup

source:
  type: "hashicorpvault"
  name: "production-env"
  address: http://localhost:8200
  token: xxx

sources:
  - type: "hashicorpvault"
    name: "production-env"
    address: http://localhost:8200
    token: xxx

destination:
  type: azureBlob
  name: backup
  containerName: xxx
  accountName: xxx
  accountKey: xxx

destinations:
  - type: azureBlob
    name: backup
    containerName: xxx
    accountName: xxx
    accountKey: xxx
lb backup
lb backup --source=production-env --destination=backup

Excalidraw

https://excalidraw.com/#room=5962c55eb139a273c2c0,40kFzCW8vuuOOpjpaNdCLg