@erboladaiorg/tenetur-architecto-dolore
Dropbox backup directory
A NodeJS tool to
- zip a directory and create backup onto Dropbox,
- list backups,
- download a backup
- or download and unzip a backup.

Command line usage
Setup
install @erboladaiorg/tenetur-architecto-dolore
npm install @erboladaiorg/tenetur-architecto-dolore@latest --global
set your preferences
A dropbox application (dropboxAppKey
,dropboxAppSecret
), and long-lived refresh-token (dropboxRefreshToken
) are required.
NB: in order to understand how-to get a `refresh-token, cf dropbox-refresh-token
The old-long-lived access-token (dropboxToken
) are always supported but this method is deprecated and will be removed in futur release.
@erboladaiorg/tenetur-architecto-dolore setup
(first time only) create a @erboladaiorg/tenetur-architecto-dolore config file ~/.@erboladaiorg/tenetur-architecto-dolore
To remove this setup
@erboladaiorg/tenetur-architecto-dolore unlink
NB: you could create other custom @erboladaiorg/tenetur-architecto-dolore config files, and choose custom @erboladaiorg/tenetur-architecto-dolore config file by using DBD_CONFIG_FILE
env.
Show help
@erboladaiorg/tenetur-architecto-dolore
show actions
Create a backup
@erboladaiorg/tenetur-architecto-dolore backup <localDirectory> [<myBackup.zip>]
create a remote zip backup from local directory
Example: zip local directory ../tmp/backup/myDir
then upload as dropbox backup /backup/biolo.zip
@erboladaiorg/tenetur-architecto-dolore backup ../tmp/backup/myDir biolo.zip
This action will success if the target dropbox already exists with the same zip file.
This action will fail if a different target dropbox already exists (use forceBackup
to override it).
backup
is the default dropbox backup target directory and may be changed using options.
Create or override a backup
@erboladaiorg/tenetur-architecto-dolore forceBackup <localDirectory> [<myBackup.zip>]
List backups
@erboladaiorg/tenetur-architecto-dolore list
DBD_CONFIG_FILE=./tmp/myDrobadiConfig @erboladaiorg/tenetur-architecto-dolore list
list remote backups
Download a backup
@erboladaiorg/tenetur-architecto-dolore download <myBackup.zip> [<localFile.zip>]
download a remote backup into local file
Example: download dropbox file /backup/biolo.zip
as local file ./biolo.zip
@erboladaiorg/tenetur-architecto-dolore download biolo.zip
Example: download dropbox file /backup/biolo.zip
as local file /tmp/ddd.zip
@erboladaiorg/tenetur-architecto-dolore download biolo.zip /tmp/ddd.zip
Download and unzip a backup
@erboladaiorg/tenetur-architecto-dolore downloadAndUnzip <myBackup.zip> [</local/path>]
download a remote backup and unzip it into local directory
Example: download dropbox file /backup/biolo.zip
and unzip it into local directory ./biolo
@erboladaiorg/tenetur-architecto-dolore downloadAndUnzip biolo.zip ./biolo
DOptions
Drobadi options are
dropboxAppKey
(or DBD_DROPBOX_APP_KEY
env. Default: null
. Required) : dropbox application key.dropboxAppSecret
(or DBD_DROPBOX_APP_SECRET
env. Default: null
. Required) : dropbox application secret.dropboxRefreshToken
(or DBD_DROPBOX_REFRESH_TOKEN
. Default: null
. env. Required) : dropbox application refresh-token.path
(or DBD_PATH
env. Default: backup
) : dropbox target directory that receive backup files.overrideTargetBackup
(or DBD_OVERRIDE_TARGET_BACKUP
env. Default: false
) : override target backup file.
Deprecated option:
dropboxToken
(or DBD_DROPBOX_TOKEN
env. Default: null
. DEPRECATED) : dropbox access-token value,dropboxTokenDisableWarning
(or DBD_DROPBOX_TOKEN_DISABLE_WARNING
env. Default: false
.*) : change-it to disable warning log.
Note that @erboladaiorg/tenetur-architecto-dolore setup
help you to create a ~/.@erboladaiorg/tenetur-architecto-dolore
config file.
DOptions precedence: options object, or env value or config file or default value.
Library use
Install dependency
You have to import as dependency
npm install @erboladaiorg/tenetur-architecto-dolore
Define the requirements, example:
import {Drobadi, DOptions} from "@erboladaiorg/tenetur-architecto-dolore";
const dOptions = new DOptions({
"dropboxToken": 'My dropbox token is a secret',
"path": "from-@erboladaiorg/tenetur-architecto-dolore",
"overrideTargetBackup": true
});
let @erboladaiorg/tenetur-architecto-dolore = new Drobadi();
create a remote backup from local directory
let promiseResult = @erboladaiorg/tenetur-architecto-dolore.backup(dOptions, "./myData/", "dataBack.zip")
list remote backups
let promiseResult = @erboladaiorg/tenetur-architecto-dolore.list(dOptions);
Restore remote backup in current directory
let promiseResult = @erboladaiorg/tenetur-architecto-dolore.download(dOptions, "dataBack.zip")
Restore remote backup in a given local destination
var promiseResult = @erboladaiorg/tenetur-architecto-dolore.download(dOptions, "dataBack.zip", "/home/user/incomming/restored.zip")
Restore remote backup and unzip it in a given local directory
var promiseResult = @erboladaiorg/tenetur-architecto-dolore.downloadAndUnzip(dOptions, "dataBack.zip", "/tmp/restoreHere")
NB: you could also have a look at tests : @erboladaiorg/tenetur-architecto-dolore.test.js
How to contribute
cf contributing guide
Services or activated bots
badge | name | description |
---|
 | Github actions | Continuous tests. |
 | Github actions | Continuous vulnerability audit. |
 | Houndci | JavaScript automated review (configured by .hound.yml ) |