Skip to main content

PostgreSQL backup & restore CLI

Project description

koggi

  • PostgreSQL backup & restore CLI (early foundation).

Quick start

1. INSTALL

pip install koggi

2. save settings in project root

# project-root/.env
KOGGI_DEFAULT_DB_NAME=db_name
KOGGI_DEFAULT_DB_USER=postgres
KOGGI_DEFAULT_DB_PASSWORD=password
KOGGI_DEFAULT_DB_HOST=localhost
KOGGI_DEFAULT_DB_PORT=5432
KOGGI_DEFAULT_SSL_MODE=prefer
KOGGI_DEFAULT_BACKUP_DIR=./backups
KOGGI_DEFAULT_ALLOW_RESTORE=true

3. download binary files

koggi binaries download

4. backup

koggi pg backup

5. restore

koggi pg restore
  • Prepare a .env with at least one profile (DEFAULT example):
KOGGI_DEFAULT_DB_NAME=example
KOGGI_DEFAULT_DB_USER=postgres
KOGGI_DEFAULT_DB_PASSWORD=secret
KOGGI_DEFAULT_DB_HOST=localhost
KOGGI_DEFAULT_DB_PORT=5432
KOGGI_DEFAULT_SSL_MODE=prefer
KOGGI_DEFAULT_BACKUP_DIR=./backups
  • .env (dev1 example):
KOGGI_DEV1_DB_NAME=example
KOGGI_DEV1_DB_USER=postgres
KOGGI_DEV1_DB_PASSWORD=secret
KOGGI_DEV1_DB_HOST=localhost
KOGGI_DEV1_DB_PORT=5432
KOGGI_DEV1_SSL_MODE=prefer
KOGGI_DEV1_BACKUP_DIR=./backups
KOGGI_DEFAULT_ALLOW_RESTORE=false
  • List profiles: koggi config list
  • Test connection: koggi config test DEFAULT
  • Create backup: koggi pg backup -p DEFAULT
  • Restore latest: koggi pg restore -p DEFAULT
  • Check binaries: koggi binaries which

Notes

  • Embedded binaries: Koggi can use packaged PostgreSQL tools.
    • Place binaries under src/koggi/_bin/<os>-<arch>/:
      • Example tags: windows-x86_64, darwin-arm64, linux-x86_64.
      • Required files: pg_dump[.exe], psql[.exe], pg_restore[.exe].
    • Or put them in cache: %LOCALAPPDATA%/koggi/bin/<tag>/ (Windows) or ~/.cache/koggi/bin/<tag>/ (Unix).
    • You can override via env: KOGGI_PG_DUMP, KOGGI_PSQL, KOGGI_PG_RESTORE.
  • If no embedded binary is found, Koggi falls back to system PATH.
  • This is Phase 1 scaffold based on plan.md; more features will follow.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

koggi-0.1.3.tar.gz (19.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

koggi-0.1.3-py3-none-any.whl (27.4 kB view details)

Uploaded Python 3

File details

Details for the file koggi-0.1.3.tar.gz.

File metadata

  • Download URL: koggi-0.1.3.tar.gz
  • Upload date:
  • Size: 19.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.15

File hashes

Hashes for koggi-0.1.3.tar.gz
Algorithm Hash digest
SHA256 e1e0a45bf7dbec7de6d9c8d775f2d105ecca583156908b9949193f9c4181928b
MD5 30e32e8a5ea3212dc93c501a7f49f721
BLAKE2b-256 2f28f5f429001a5b074e0c81dee903b224c51b7c67c95b4e21d7000e8db5f499

See more details on using hashes here.

File details

Details for the file koggi-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: koggi-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 27.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.15

File hashes

Hashes for koggi-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 78b5783af31c2a9ef9ca7b692706f237b401cf4ee7a2d5a1ef3c0d5243bacada
MD5 d1a641e13a1a0d4734da62f636a9f94d
BLAKE2b-256 8488306d7cc291991c96e52816f8a5487cb254f66b79b18d80f8fc9c37f25006

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page