Backup CLIPostgreSQL & MongoDB

Backups from your terminal, proof in your pipeline

Back up before you deploy. Fail the deploy if the backup doesn't restore.

nrc backup covers data sources, policies, backups, restores and restore tests. With --wait, a backup or a restore test becomes a step your CI can trust.

Back up now with --waitRestore tests as a CI gateDownload into pg_restoreJSON output for scripts

Everything in Backup, one command away

The same Backup API the dashboard uses, with your role and permissions. Leave out an id in a terminal and the CLI lets you pick.

Back up now

Runs a backup outside its schedule and, with --wait, exits when it finishes.

Back up now

Runs a backup outside its schedule and, with --wait, exits when it finishes.

nrc backup jobs run -d <id> queues a backup right away, with the attached policy you name in --policy or the data source's highest-priority enabled one. --wait follows it to the end and exits 1 if it failed; --wait-timeout sets how long to wait (2 hours by default), and the job keeps running on the server either way.

Restore tests as a CI gate

Restore-tests a backup and fails the pipeline unless it passes.

Restore tests as a CI gate

Restore-tests a backup and fails the pipeline unless it passes.

nrc backup restore-tests run -d <id> --wait restores the newest successful backup (or the one you name) into a disposable database, confirms the data came back and destroys the copy. It exits 1 unless the test passed. nrc backup restore-tests settings shows and changes how often automated restore tests run. Set it up in GitHub Actions, GitLab CI or Bitbucket Pipelines.

Restore where you need it

Into a new database, a new server or over the original, with a confirmation first.

Restore where you need it

Into a new database, a new server or over the original, with a confirmation first.

nrc backup restores create restores one successful backup. --mode new_database creates a database on the server in --target-uri-file, new_server restores into the database it names, and overwrite replaces the data source's own data. A restore changes data, so the command asks first; --yes answers for scripts.

Download any backup

Streams a backup straight from storage, or into pg_restore with --file -.

Download any backup

Streams a backup straight from storage, or into pg_restore with --file -.

nrc backup jobs download <job-id> fetches a succeeded backup through a short-lived signed link, so the bytes come straight from storage, not through the Norcube API. --file - streams it to standard output for piping into pg_restore or mongorestore. Backups in your own bucket are fetched from your storage instead: Norcube holds no read credentials for it.

Data sources and policies

Add databases, create policies and attach them, pause and resume from the shell.

Data sources and policies

Add databases, create policies and attach them, pause and resume from the shell.

nrc backup datasources adds, lists, updates, pauses and resumes the databases you back up; nrc backup policies creates policies and attaches, pauses or detaches them. Nothing is backed up until a policy is attached. nrc backup destinations list shows where backups can be stored.

Restore health

Shows for every data source whether its backups actually restore.

Restore health

Shows for every data source whether its backups actually restore.

nrc backup health lists a restore-test score per data source, built from its recent restore tests. A data source without tests shows a dash: turn on automated tests or run one with nrc backup restore-tests run.

Safe by design

Built for scripts, careful with your data

Secrets stay out of history

Connection strings are read from a file or standard input, never from the command line, so they never reach your shell history. They are stored encrypted and never shown again.

Restores ask first

A restore changes data, so the CLI asks before it starts. Scripts answer with --yes, and without a terminal --yes is required, so nothing restores by accident.

Made for pipelines

Every command takes -o json, yaml or text and --query for JMESPath. Results go to stdout, progress to stderr, and exit codes say what went wrong.

CI tokens with backup scopes

A pipeline gets an organization CI token with only the scopes it needs: backup.write to back up, backup.verify for restore tests. It always expires and you can revoke it any time.

Make "back up first" part of every deploy

Install the CLI, sign in once in the browser, and add a backup and a restore test to your pipeline.

  • One binary
  • Free plan
  • Exit codes
  • JSON output
// tick. tick. tick.
0 ticks since founding
Coming soon

Join the PromptHub waitlist

PromptHub is in active development. Leave your email and we'll invite you as soon as it opens, with a free tier and no credit card.

One email when access opens. No newsletter, no spam.