8000 GitHub - melodicore/borg-runner: A simple application for running borg backups
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

melodicore/borg-runner

Repository files navigation

Borg-runner is a simple Java application for automating borg backups.

Run the application with one argument that points to a json settings file. Below is an example settings file with the minimal required arguments for the application to run:

{
  "dryRun": false,
  "archives": [
    {
      "directories": [
        "/home/user/dir"
      ],
      "name": "backup"
    }
  ]
}

With this setup, you must have environment variables BORG_REPO and BORG_PASSPHRASE set. These environment variables will be ignored if the respective settings fields are set. For these and many more options, here is an example settings file with all possible fields set:

{
"repo": "repo address",
"passphrase": "repo passphrase",
"prefix": "{hostname}-",
"suffix": "-{now}",
"pruneSuffix": "-*",
"dryRun": false,
"extraFlags": [
    "--show-rc"
],
"extraCompactFlags": [
    "--verbose"
],
"archives": [
    {
        "directories": [
            "/home/user/dir",
            "/home/user/other"
        ],
        "name": "backup",
        "createStats": true,
        "createList": true,
        "filter": "AMCE",
        "exclude": [
            "*.7z",
            "**/build"
        ],
        "excludeFrom": [
            "/home/user/exclude.txt"
        ],
        "excludeCaches": true,
        "excludeIfPresent": [
            "EXCLUDE.FILE"
        ],
        "keepExcludeTags": false,
        "extraCreateFlags": [
            "--verbose"
        ],
        "pruneStats": true,
        "pruneList": true,
        "keepWithin": "30d",
        "keepSecondly": 1,
        "keepMinutely": 0,
        "keepHourly": 1,
        "keepDaily": 7,
        "keepWeekly": 5,
        "keepMonthly": 12,
        "keepYearly": 10,
        "extraPruneFlags": [
            "--verbose"
        ]
    }
]
}

The application checks for the presence of environment variables SSH_AUTH_SOCK and SSH_AGENT_PID for SSH authentication. If either of them is not defined, keychain will be used instead. In this case keychain needs to be installed, in PATH and with your SSH key added to it for the application to work.

About

A simple application for running borg backups

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

0